Interface PresentationManager

  • All Known Implementing Classes:
    PresentationManagerImpl

    public interface PresentationManager
    Provides access to RMI-IIOP stubs and ties. Any style of stub and tie generation may be used. This includes compiler generated stubs and runtime generated stubs as well as compiled and reflective ties. There is normally only one instance of this interface per VM. The instance is obtained from the static method com.sun.corba.ee.spi.orb.ORB.getPresentationManager.

    Note that the getClassData and getDynamicMethodMarshaller methods maintain caches to avoid redundant computation.

    • Method Detail

      • getClassData

        PresentationManager.ClassData getClassData​(java.lang.Class<?> cls)
        Get the ClassData for a particular class. This class may be an implementation class, in which case the IDLNameTranslator handles all Remote interfaces implemented by the class. If the class implements more than one remote interface, and not all of the remote interfaces are related by inheritance, then the type IDs have the implementation class as element 0.
        Parameters:
        cls - iClass fro which we need ClassData.
        Returns:
        The ClassData.
      • getDynamicMethodMarshaller

        DynamicMethodMarshaller getDynamicMethodMarshaller​(java.lang.reflect.Method method)
        Given a particular method, return a DynamicMethodMarshaller for that method. This is used for dynamic stubs and ties.
        Parameters:
        method - Method for which we need a DynamicMethodMarshaller.
        Returns:
        The DynamicMethodMarshaller.
      • getTie

        Tie getTie()
        Equivalent to getStubFactoryFactory( true ).getTie( null ). Provided for compatibility with earlier versions of PresentationManager as used in the app server. The class argument is ignored in the dynamic case, so this is safe.
        Returns:
        The static tie.
      • getRepositoryId

        java.lang.String getRepositoryId​(java.rmi.Remote impl)
        Get the correct repository ID for the given implementation instance. This is useful when using dynamic RMI with the POA.
        Parameters:
        impl - implementation
        Returns:
        repository ID string
      • useDynamicStubs

        boolean useDynamicStubs()
        Returns the value of the com.sun.corba.ee.ORBUseDynamicStub property.
        Returns:
        whether to use dynamic stubs.
      • flushClass

        void flushClass​(java.lang.Class<?> cls)
        Remove all internal references to Class cls from the PresentationManager. This allows ClassLoaders to be garbage collected when they are no longer needed.
        Parameters:
        cls - Class to flush
      • getDebug

        boolean getDebug()
      • getPrintStream

        java.io.PrintStream getPrintStream()