- java.lang.Object
-
- org.omg.PortableServer.Servant
-
- Direct Known Subclasses:
BindingIteratorPOA,DynamicImplementation,NamingContextExtPOA,NamingContextPOA,ServantActivatorPOA,ServantLocatorPOA
public abstract class Servant extends Object
Defines the nativeServanttype. In Java, theServanttype is mapped to the Javaorg.omg.PortableServer.Servantclass. 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.
-
-
Constructor Summary
Constructors Constructor Description Servant()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods 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.POA_default_POA()Returns the root POA from the ORB instance associated with the servant.Delegate_get_delegate()Gets the ORB vendor-specific implementation ofPortableServer::Servant.Object_get_interface_def()Returns anInterfaceDefobject as aCORBA::Objectthat defines the runtime type of theCORBA::Objectimplemented by theServant.boolean_is_a(String repository_id)Checks to see if the specifiedrepository_idis present on the list returned by_all_interfaces()or is therepository_idfor the generic CORBA Object.boolean_non_existent()Checks for the existence of anObject.byte[]_object_id()Allows easy execution of common methods, equivalent to callingPortableServer::Current::get_object_id.ORB_orb()Returns the instance of the ORB currently associated with theServant(convenience method).POA_poa()Allows easy execution of common methods, equivalent toPortableServer::Current:get_POA.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.Object_this_object()Allows the servant to obtain the object reference for the target CORBA object it is incarnating for that request.Object_this_object(ORB orb)Allows the servant to obtain the object reference for the target CORBA Object it is incarnating for that request.
-
-
-
Method Detail
-
_get_delegate
public final Delegate _get_delegate()
Gets the ORB vendor-specific implementation ofPortableServer::Servant.- Returns:
_delegatethe ORB vendor-specific implementation ofPortableServer::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 thePortableServer::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_objectObjectreference 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_objectreference associated with the request.
-
_orb
public final ORB _orb()
Returns the instance of the ORB currently associated with theServant(convenience method).- Returns:
orbthe instance of the ORB currently associated with theServant.
-
_poa
public final POA _poa()
Allows easy execution of common methods, equivalent toPortableServer::Current:get_POA.- Returns:
poaPOA associated with the servant.
-
_object_id
public final byte[] _object_id()
Allows easy execution of common methods, equivalent to callingPortableServer::Current::get_object_id.- Returns:
object_idtheObjectID 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_POAthe POA associated with theServant.
-
_is_a
public boolean _is_a(String repository_id)
Checks to see if the specifiedrepository_idis present on the list returned by_all_interfaces()or is therepository_idfor the generic CORBA Object.- Parameters:
repository_id- therepository_idto be checked in the repository list or against the id of generic CORBA objects.- Returns:
is_aboolean indicating whether the specifiedrepository_idis in the repository list or is same as a generic CORBA object.
-
_non_existent
public boolean _non_existent()
Checks for the existence of anObject. TheServantprovides a default implementation of_non_existent()that can be overridden by derived servants.- Returns:
non_existenttrueif that object does not exist,falseotherwise.
-
_get_interface_def
public Object _get_interface_def()
Returns anInterfaceDefobject as aCORBA::Objectthat defines the runtime type of theCORBA::Objectimplemented by theServant. The invoker of_get_interface_defmust narrow the result to anInterfaceDefin 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 theInterfaceDef. This behavior must be supported by theDelegatethat implements theServant.- Returns:
get_interface_defanInterfaceDefobject as aCORBA::Objectthat defines the runtime type of theCORBA::Objectimplemented by theServant.
-
_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.
-
-