PackagePrefixChecker.java revision 608:7e06bf1dcb09
1/* 2 * Copyright (c) 1999, 2004, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25package com.sun.corba.se.impl.util; 26 27import java.io.File; 28 29/** 30 * PackagePrefixChecker provides static utility methods for getting package prefixes. 31 * @author M. Mortazavi 32 */ 33 34public final class PackagePrefixChecker { 35 36 37 private static final String PACKAGE_PREFIX = "org.omg.stub."; 38 39 public static String packagePrefix(){ return PACKAGE_PREFIX;} 40 41 public static String correctPackageName (String p){ 42 if (p==null) return p; 43 if ( hasOffendingPrefix(p)) 44 { 45 return PACKAGE_PREFIX+p; 46 } 47 return p; 48 } 49 50 public static boolean isOffendingPackage(String p){ 51 return 52 !(p==null) 53 && 54 ( false || hasOffendingPrefix(p) ); 55 } 56 57 public static boolean hasOffendingPrefix(String p){ 58 return 59 ( p.startsWith("java.") || p.equals("java") 60 // || p.startsWith("com.sun.") || p.equals("com.sun") 61 || p.startsWith("net.jini.") || p.equals("net.jini") 62 || p.startsWith("jini.") || p.equals("jini") 63 || p.startsWith("javax.") || p.equals("javax") 64 ); 65 } 66 67 public static boolean hasBeenPrefixed(String p){ 68 return p.startsWith(packagePrefix()); 69 } 70 71 public static String withoutPackagePrefix(String p){ 72 if(hasBeenPrefixed(p)) return p.substring(packagePrefix().length()); 73 else return p; 74 } 75 76} 77