Class INSURLOperationImpl

java.lang.Object
com.sun.corba.ee.impl.resolver.INSURLOperationImpl
All Implemented Interfaces:
Operation

public class INSURLOperationImpl extends Object implements Operation
This class provides an Operation that converts from CORBA INS URL strings into CORBA object references. It will eventually become extensible, but for now it simply encapsulates the existing implementation. Once the full extensibility is in place, we want this operation to convert string to INSURL, which has mainly a public resolver method that returns an object reference.
  • Field Details

  • Constructor Details

    • INSURLOperationImpl

      public INSURLOperationImpl(ORB orb)
  • Method Details

    • getIORFromString

      private Object getIORFromString(String str)
      This static method takes a Stringified IOR and converts it into IOR object. It is the caller's responsibility to only pass strings that start with "IOR:".
    • operate

      public Object operate(Object arg)
      Description copied from interface: Operation
      Apply some function to a value and return the result.
      Specified by:
      operate in interface Operation
      Parameters:
      arg - value to apply function to
      Returns:
      result of function
    • resolveINSURL

      private Object resolveINSURL(INSURL theURLObject)
    • resolveCorbaloc

      private Object resolveCorbaloc(CorbalocURL theCorbaLocObject)
      resolves a corbaloc: url that is encapsulated in a CorbalocURL object.
      Returns:
      the CORBA.Object if resolution is successful
    • resolveCorbaname

      private Object resolveCorbaname(CorbanameURL theCorbaName)
      resolves a corbaname: url that is encapsulated in a CorbanameURL object.
      Returns:
      the CORBA.Object if resolution is successful
    • getIORUsingCorbaloc

      private Object getIORUsingCorbaloc(INSURL corbalocObject)
      This is an internal method to get the IOR from the CorbalocURL object.
      Returns:
      the CORBA.Object if resolution is successful
    • getDefaultRootNamingContext

      private NamingContextExt getDefaultRootNamingContext()
      This is required for corbaname: resolution. Currently we are not caching RootNamingContext as the reference to rootNamingContext may not be Persistent in all the implementations. _REVISIT_ to clear the rootNamingContext in case of COMM_FAILURE.
      Returns:
      the org.omg.COSNaming.NamingContextExt if resolution is successful
    • clearRootNamingContextCache

      private void clearRootNamingContextCache()
      A utility method to clear the RootNamingContext, if there is an exception in resolving CosNaming:Name from the RootNamingContext,