Class ReferenceFactoryManagerImpl

java.lang.Object
org.omg.CORBA.LocalObject
com.sun.corba.ee.impl.oa.rfm.ReferenceFactoryManagerImpl
All Implemented Interfaces:
ReferenceFactoryManager, Serializable, Object, IDLEntity

@ManagedObject @Description("The ReferenceFactoryManager, used to handle dynamic cluster membership updates") public class ReferenceFactoryManagerImpl extends LocalObject implements ReferenceFactoryManager
See Also:
  • Field Details

  • Constructor Details

    • ReferenceFactoryManagerImpl

      public ReferenceFactoryManagerImpl(ORB orb)
  • Method Details

    • getState

      Description copied from interface: ReferenceFactoryManager
      The state of the ReferenceFactoryManager.
      Specified by:
      getState in interface ReferenceFactoryManager
      Returns:
      whether the manager is READY or SUSPENDED
    • activate

      public void activate()
      Description copied from interface: ReferenceFactoryManager
      Must be called before any other operation. Used to activate the ORB reference creation function.
      Specified by:
      activate in interface ReferenceFactoryManager
    • create

      public ReferenceFactory create(String name, String repositoryId, List<Policy> policies, ServantLocator locator)
      Description copied from interface: ReferenceFactoryManager
      Create a new reference factory with the given policies. All such reference factories will be persistent. The ServantLocator is solely responsible for creating servants: no internal caching will be performed. The following policies are always applied here:
      • Servant retention policy NON_RETAIN
      • Request processing policy USE_SERVANT_MANAGER
      • Lifespan policy PERSISTENT
      These policies are required because all are essential to the correct functioning of this class in handling restarts. It is an error for the policies list to contain any value of the above 3 policies. All other policies must be given explicitly in the list.
      Specified by:
      create in interface ReferenceFactoryManager
      Parameters:
      name - is the name of this ReferenceFactory. This is a simple flat name, not a hierarchical name.
      repositoryId - is the repoid to be used when this reference factory creates a new CORBA Object reference.
      policies - are the policies to be used to create the underlying POA.
      locator - locator to use for the reference
      Returns:
      resulting ReferenceFactory with given policies
    • find

      public ReferenceFactory find(String[] adapterName)
      Description copied from interface: ReferenceFactoryManager
      Get the ReferenceFactory name from a String[] adapterName, if adapterName is the name of a ReferenceFactory. If not, return null.
      Specified by:
      find in interface ReferenceFactoryManager
      Parameters:
      adapterName - of factory
      Returns:
      found ReferenceFactory, null otherwise
    • find

      public ReferenceFactory find(String name)
      Description copied from interface: ReferenceFactoryManager
      Find the ReferenceFactory with the given name. If no such ReferenceFactory exists, return null.
      Specified by:
      find in interface ReferenceFactoryManager
      Parameters:
      name - of factory
      Returns:
      found ReferenceFactory, null otherwise
    • suspend

      public void suspend()
      Description copied from interface: ReferenceFactoryManager
      Suspend all CORBA request processing on all references created by ReferenceFactory instances that were created by this ReferenceFactoryManager. This call does not return until after all currently executing calls have completed.
      Specified by:
      suspend in interface ReferenceFactoryManager
    • resume

      public void resume()
      Description copied from interface: ReferenceFactoryManager
      Resume all CORBA request processing on all references created by ReferenceFactory instances that were created by this ReferenceFactoryManager.
      Specified by:
      resume in interface ReferenceFactoryManager
    • restartFactories

      public void restartFactories(Map<String,org.glassfish.pfl.basic.contain.Pair<ServantLocator,List<Policy>>> updates)
      Description copied from interface: ReferenceFactoryManager
      Restart all ReferenceFactories.
      Specified by:
      restartFactories in interface ReferenceFactoryManager
      Parameters:
      updates - is a map giving the updated policies for some or all of the ReferenceFactory instances in this ReferenceFactoryManager. This parameter must not be null.
    • restartFactories

      public void restartFactories()
      Description copied from interface: ReferenceFactoryManager
      Restart all ReferenceFactories. Equivalent to calling restartFactories( new Map() ).
      Specified by:
      restartFactories in interface ReferenceFactoryManager
    • restart

      public void restart(Map<String,org.glassfish.pfl.basic.contain.Pair<ServantLocator,List<Policy>>> updates)
      Restart all ReferenceFactories. This is done safely, so that any request against object references created from these factories complete correctly. Restart does not return until all restart activity completes.
      Specified by:
      restart in interface ReferenceFactoryManager
      Parameters:
      updates - is a map giving the updated policies for some or all of the ReferenceFactory instances in this ReferenceFactoryManager. This parameter must not be null.
    • restart

      public void restart()
      Restart all ReferenceFactories. This is done safely, so that any request against object references created from these factories complete correctly. Restart does not return until all restart activity completes. Equivalent to calling restart( new Map() ).
      Specified by:
      restart in interface ReferenceFactoryManager
    • createReference

      Object createReference(String name, byte[] key, String repositoryId)
    • destroy

      void destroy(String name)
    • validatePOACreation

      void validatePOACreation(POA poa)
    • isRfmName

      public boolean isRfmName(String[] adapterName)
      Specified by:
      isRfmName in interface ReferenceFactoryManager