--- old/src/java.corba/share/classes/com/sun/corba/se/impl/naming/namingutil/CorbanameURL.java 2018-01-30 20:18:22.000000000 -0500 +++ /dev/null 2018-01-30 20:18:22.000000000 -0500 @@ -1,121 +0,0 @@ -/* - * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Oracle designates this - * particular file as subject to the "Classpath" exception as provided - * by Oracle in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - */ - -package com.sun.corba.se.impl.naming.namingutil; - -import com.sun.corba.se.impl.logging.NamingSystemException; -import com.sun.corba.se.spi.logging.CORBALogDomains; - -/** - * The corbaname: URL definitions from the -ORBInitDef and -ORBDefaultInitDef's - * will be stored in this object. This object is capable of storing CorbaLoc - * profiles as defined in the CorbaName grammer. - * - * @author Hemanth - */ -public class CorbanameURL extends INSURLBase -{ - private static NamingSystemException wrapper = - NamingSystemException.get( CORBALogDomains.NAMING ) ; - - /** - * This constructor takes a corbaname: url with 'corbaname:' prefix stripped - * and initializes all the variables accordingly. If there are any parsing - * errors then BAD_PARAM exception is raised. - */ - public CorbanameURL( String aURL ) { - String url = aURL; - - // First Clean the URL Escapes if there are any - try { - url = Utility.cleanEscapes( url ); - } catch( Exception e ) { - badAddress( e ); - } - - int delimiterIndex = url.indexOf( '#' ); - String corbalocString = null; - if( delimiterIndex != -1 ) { - // Append corbaloc: for Grammar check, Get the string between - // corbaname: and # which forms the corbaloc string - corbalocString = "corbaloc:" + - url.substring( 0, delimiterIndex ) + "/"; - } else { - // Build a corbaloc string to check the grammar. - // 10 is the length of corbaname: - corbalocString = "corbaloc:" + url.substring( 0, url.length() ); - // If the string doesnot end with a / then add one to end the - // URL correctly - if( corbalocString.endsWith( "/" ) != true ) { - corbalocString = corbalocString + "/"; - } - } - try { - // Check the corbaloc grammar and set the returned corbaloc - // object to the CorbaName Object - INSURL insURL = - INSURLHandler.getINSURLHandler().parseURL( corbalocString ); - copyINSURL( insURL ); - // String after '#' is the Stringified name used to resolve - // the Object reference from the rootnaming context. If - // the String is null then the Root Naming context is passed - // back - if((delimiterIndex > -1) && - (delimiterIndex < (aURL.length() - 1))) - { - int start = delimiterIndex + 1 ; - String result = url.substring(start) ; - theStringifiedName = result ; - } - } catch( Exception e ) { - badAddress( e ); - } - } - - /** - * A Utility method to throw BAD_PARAM exception. - */ - private void badAddress( java.lang.Throwable e ) - throws org.omg.CORBA.BAD_PARAM - { - throw wrapper.insBadAddress( e ) ; - } - - /** - * A Utility method to copy all the variables from CorbalocURL object to - * this instance. - */ - private void copyINSURL( INSURL url ) { - rirFlag = url.getRIRFlag( ); - theEndpointInfo = (java.util.ArrayList) url.getEndpointInfo( ); - theKeyString = url.getKeyString( ); - theStringifiedName = url.getStringifiedName( ); - } - - public boolean isCorbanameURL( ) { - return true; - } - -}