Class Servant

java.lang.Object
org.omg.PortableServer.Servant
Direct Known Subclasses:
AliasDefPOA, ArrayDefPOA, AttributeDefPOA, BindingIteratorPOA, CodeBasePOA, ConstantDefPOA, ContainedPOA, ContainerPOA, ControlPOA, CoordinatorPOA, CurrentPOA, DynamicImplementation, DynAnyFactoryPOA, DynAnyPOA, DynArrayPOA, DynEnumPOA, DynFixedPOA, DynSequencePOA, DynStructPOA, DynUnionPOA, DynValueBoxPOA, DynValueCommonPOA, DynValuePOA, EnumDefPOA, ExceptionDefPOA, InterfaceDefPOA, InvocationPolicyPOA, MaxHopsPolicyPOA, ModuleDefPOA, NamingContextExtPOA, NamingContextPOA, NativeDefPOA, NonTxTargetPolicyPOA, OperationDefPOA, OTSPolicyPOA, PrimitiveDefPOA, QueueOrderPolicyPOA, RebindPolicyPOA, RecoveryCoordinatorPOA, ReflectiveTie, RelativeRequestTimeoutPolicyPOA, RelativeRoundtripTimeoutPolicyPOA, ReplyEndTimePolicyPOA, ReplyPriorityPolicyPOA, ReplyStartTimePolicyPOA, RepositoryPOA, RequestEndTimePolicyPOA, RequestPriorityPolicyPOA, RequestStartTimePolicyPOA, ResourcePOA, RoutingPolicyPOA, RunTimePOA, SequenceDefPOA, ServantActivatorPOA, ServantLocatorPOA, StringDefPOA, StructDefPOA, SubtransactionAwareResourcePOA, SynchronizationPOA, SyncScopePolicyPOA, TerminatorPOA, TransactionalObjectPOA, TransactionFactoryPOA, TypedefDefPOA, UnionDefPOA, ValueBoxDefPOA, ValueDefPOA, ValueMemberDefPOA

public abstract class Servant extends Object
Defines the native Servant type. In Java, the Servant type is mapped to the Java org.omg.PortableServer.Servant class. It serves as the base class for all POA servant implementations and provides a number of methods that may be invoked by the application programmer, as well as methods which are invoked by the POA itself and may be overridden by the user to control aspects of servant behavior. Based on IDL to Java spec. (CORBA V2.3.1) ptc/00-01-08.pdf.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private Delegate
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract String[]
    _all_interfaces(POA poa, byte[] objectId)
    Used by the ORB to obtain complete type information from the servant.
    Returns the root POA from the ORB instance associated with the servant.
    final Delegate
    Gets the ORB vendor-specific implementation of PortableServer::Servant.
    Returns an InterfaceDef object as a CORBA::Object that defines the runtime type of the CORBA::Object implemented by the Servant.
    boolean
    _is_a(String repository_id)
    Checks to see if the specified repository_id is present on the list returned by _all_interfaces() or is the repository_id for the generic CORBA Object.
    boolean
    Checks for the existence of an Object.
    final byte[]
    Allows easy execution of common methods, equivalent to calling PortableServer::Current::get_object_id.
    final ORB
    Returns the instance of the ORB currently associated with the Servant (convenience method).
    final POA
    Allows easy execution of common methods, equivalent to PortableServer::Current:get_POA.
    final void
    Supports the Java ORB portability interfaces by providing a method for classes that support ORB portability through delegation to set their delegate.
    final Object
    Allows the servant to obtain the object reference for the target CORBA object it is incarnating for that request.
    final Object
    Allows the servant to obtain the object reference for the target CORBA Object it is incarnating for that request.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • _delegate

      private transient Delegate _delegate
  • Constructor Details

    • Servant

      public Servant()
  • Method Details

    • _get_delegate

      public final Delegate _get_delegate()
      Gets the ORB vendor-specific implementation of PortableServer::Servant.
      Returns:
      _delegate the ORB vendor-specific implementation of PortableServer::Servant.
    • _set_delegate

      public final void _set_delegate(Delegate delegate)
      Supports the Java ORB portability interfaces by providing a method for classes that support ORB portability through delegation to set their delegate.
      Parameters:
      delegate - ORB vendor-specific implementation of the PortableServer::Servant.
    • _this_object

      public final Object _this_object()
      Allows the servant to obtain the object reference for the target CORBA object it is incarnating for that request.
      Returns:
      this_object Object reference associated with the request.
    • _this_object

      public final Object _this_object(ORB orb)
      Allows the servant to obtain the object reference for the target CORBA Object it is incarnating for that request.
      Parameters:
      orb - ORB with which the servant is associated.
      Returns:
      _this_object reference associated with the request.
    • _orb

      public final ORB _orb()
      Returns the instance of the ORB currently associated with the Servant (convenience method).
      Returns:
      orb the instance of the ORB currently associated with the Servant.
    • _poa

      public final POA _poa()
      Allows easy execution of common methods, equivalent to PortableServer::Current:get_POA.
      Returns:
      poa POA associated with the servant.
    • _object_id

      public final byte[] _object_id()
      Allows easy execution of common methods, equivalent to calling PortableServer::Current::get_object_id.
      Returns:
      object_id the Object ID associated with this servant.
    • _default_POA

      public POA _default_POA()
      Returns the root POA from the ORB instance associated with the servant. Subclasses may override this method to return a different POA.
      Returns:
      default_POA the POA associated with the Servant.
    • _is_a

      public boolean _is_a(String repository_id)
      Checks to see if the specified repository_id is present on the list returned by _all_interfaces() or is the repository_id for the generic CORBA Object.
      Parameters:
      repository_id - the repository_id to be checked in the repository list or against the id of generic CORBA objects.
      Returns:
      is_a boolean indicating whether the specified repository_id is in the repository list or is same as a generic CORBA object.
    • _non_existent

      public boolean _non_existent()
      Checks for the existence of an Object. The Servant provides a default implementation of _non_existent() that can be overridden by derived servants.
      Returns:
      non_existent true if that object does not exist, false otherwise.
    • _get_interface_def

      public Object _get_interface_def()
      Returns an InterfaceDef object as a CORBA::Object that defines the runtime type of the CORBA::Object implemented by the Servant. The invoker of _get_interface_def must narrow the result to an InterfaceDef in order to use it.

      This default implementation of _get_interface_def() can be overridden by derived servants if the default behavior is not adequate. As defined in the CORBA 2.3.1 specification, section 11.3.1, the default behavior of _get_interface_def() is to use the most derived interface of a static servant or the most derived interface retrieved from a dynamic servant to obtain the InterfaceDef. This behavior must be supported by the Delegate that implements the Servant.

      Returns:
      get_interface_def an InterfaceDef object as a CORBA::Object that defines the runtime type of the CORBA::Object implemented by the Servant.
    • _all_interfaces

      public abstract String[] _all_interfaces(POA poa, byte[] objectId)
      Used by the ORB to obtain complete type information from the servant.
      Parameters:
      poa - POA with which the servant is associated.
      objectId - is the id corresponding to the object associated with this servant.
      Returns:
      list of type information for the object.