Class ObjectImpl
- java.lang.Object
-
- org.omg.CORBA.portable.ObjectImpl
- All Implemented Interfaces:
- Object
- Direct Known Subclasses:
- _BindingIteratorStub, _DynAnyFactoryStub, _DynAnyStub, _DynArrayStub, _DynEnumStub, _DynFixedStub, _DynSequenceStub, _DynStructStub, _DynUnionStub, _DynValueStub, _IDLTypeStub, _NamingContextExtStub, _NamingContextStub, _PolicyStub, _ServantActivatorStub, _ServantLocatorStub, DynamicImplementation, ObjectImpl
public abstract class ObjectImpl extends Object implements Object
The common base class for all stub classes; provides default implementations of the org.omg.CORBA.Object methods. All method implementations are forwarded to a Delegate object stored in the ObjectImpl instance. ObjectImpl allows for portable stubs because the Delegate can be implemented by a different vendor-specific ORB.
Constructors
| Constructor and Description |
|---|
ObjectImpl() |
Methods
| Modifier and Type | Method and Description |
|---|---|
Request |
_create_request(Context ctx,
String operation,
NVList arg_list,
NamedValue result) Creates a |
Request |
_create_request(Context ctx,
String operation,
NVList arg_list,
NamedValue result,
ExceptionList exceptions,
ContextList contexts) Creates a |
Object |
_duplicate() Returns a duplicate of this |
Delegate |
_get_delegate() Retrieves the reference to the vendor-specific |
DomainManager[] |
_get_domain_managers() Retrieves a list of the domain managers for this |
Object |
_get_interface_def() Retrieves the interface definition for this |
Policy |
_get_policy(int policy_type) Retrieves the |
int |
_hash(int maximum) Retrieves the hash code that serves as an ORB-internal identifier for this |
abstract String[] |
_ids() Retrieves a string array containing the repository identifiers supported by this |
InputStream |
_invoke(OutputStream output) Invokes an operation and returns an |
boolean |
_is_a(String repository_id) Checks whether the object identified by the given repository identifier is an |
boolean |
_is_equivalent(Object that) Checks whether the the given |
boolean |
_is_local() Checks whether this |
boolean |
_non_existent() Checks whether the server object for this |
ORB |
_orb() Returns a reference to the ORB associated with this object and its delegate. |
void |
_release() Releases the resources associated with this |
void |
_releaseReply(InputStream input) Releases the given reply stream back to the ORB when unmarshalling has completed after a call to the method |
Request |
_request(String operation) Creates a |
OutputStream |
_request(String operation,
boolean responseExpected) Returns an |
void |
_servant_postinvoke(ServantObject servant) Is called by the local stub after it has invoked an operation on the local servant that was previously retrieved from a call to the method |
ServantObject |
_servant_preinvoke(String operation,
Class expectedType) Returns a Java reference to the local servant that should be used for sending a request for the method specified. |
void |
_set_delegate(Delegate delegate) Sets the Delegate for this |
Object |
_set_policy_override(Policy[] policies,
SetOverrideType set_add) Sets this |
boolean |
equals(Object obj) Compares this |
int |
hashCode() Returns the hash code for this |
String |
toString() Returns a |
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait Constructors
ObjectImpl
public ObjectImpl()
Methods
_get_delegate
public Delegate _get_delegate()
Retrieves the reference to the vendor-specific Delegate object to which this ObjectImpl object delegates all methods invoked on it.
- Returns:
- the Delegate contained in this ObjectImpl instance
- Throws:
-
BAD_OPERATION- if the delegate has not been set - See Also:
_set_delegate(org.omg.CORBA.portable.Delegate)
_set_delegate
public void _set_delegate(Delegate delegate)
Sets the Delegate for this ObjectImpl instance to the given Delegate object. All method invocations on this ObjectImpl object will be forwarded to this delegate.
- Parameters:
-
delegate- theDelegateinstance to which all method calls on thisObjectImplobject will be delegated; may be implemented by a third-party ORB - See Also:
_get_delegate()
_ids
public abstract String[] _ids()
Retrieves a string array containing the repository identifiers supported by this ObjectImpl object. For example, for a stub, this method returns information about all the interfaces supported by the stub.
- Returns:
- the array of all repository identifiers supported by this
ObjectImplinstance
_duplicate
public Object _duplicate()
Returns a duplicate of this ObjectImpl object.
- Specified by:
-
_duplicatein interfaceObject - Returns:
- an
orb.omg.CORBA.Objectobject that is a duplicate of this object
_release
public void _release()
Releases the resources associated with this ObjectImpl object.
_is_a
public boolean _is_a(String repository_id)
Checks whether the object identified by the given repository identifier is an ObjectImpl object.
- Specified by:
-
_is_ain interfaceObject - Parameters:
-
repository_id- aStringobject with the repository identifier to check - Returns:
-
trueif the object identified by the given repository id is an instance ofObjectImpl;falseotherwise
_is_equivalent
public boolean _is_equivalent(Object that)
Checks whether the the given ObjectImpl object is equivalent to this ObjectImpl object.
- Specified by:
-
_is_equivalentin interfaceObject - Parameters:
-
that- an instance ofObjectImplto compare with thisObjectImplobject - Returns:
-
trueif the given object is equivalent to thisObjectImplobject;falseotherwise
_non_existent
public boolean _non_existent()
Checks whether the server object for this ObjectImpl object has been destroyed.
- Specified by:
-
_non_existentin interfaceObject - Returns:
-
trueif the ORB knows authoritatively that the server object does not exist;falseotherwise
_hash
public int _hash(int maximum)
Retrieves the hash code that serves as an ORB-internal identifier for this ObjectImpl object.
- Specified by:
-
_hashin interfaceObject - Parameters:
-
maximum- anintindicating the upper bound on the hash value returned by the ORB - Returns:
- an
intrepresenting the hash code for thisObjectImplobject
_request
public Request _request(String operation)
Creates a Request object containing the given method that can be used with the Dynamic Invocation Interface.
- Specified by:
-
_requestin interfaceObject - Parameters:
-
operation- the method to be invoked by the newRequestobject - Returns:
- a new
Requestobject initialized with the given method
_create_request
public Request _create_request(Context ctx,
String operation,
NVList arg_list,
NamedValue result) Creates a Request object that contains the given context, method, argument list, and container for the result.
- Specified by:
-
_create_requestin interfaceObject - Parameters:
-
ctx- the Context for the request -
operation- the method that the newRequestobject will invoke -
arg_list- the arguments for the method; anNVListin which each argument is aNamedValueobject -
result- aNamedValueobject to be used for returning the result of executing the request's method - Returns:
- a new
Requestobject initialized with the given context, method, argument list, and container for the return value - See Also:
-
Request,NVList,NamedValue
_create_request
public Request _create_request(Context ctx,
String operation,
NVList arg_list,
NamedValue result,
ExceptionList exceptions,
ContextList contexts) Creates a Request object that contains the given context, method, argument list, container for the result, exceptions, and list of property names to be used in resolving the context strings. This Request object is for use in the Dynamic Invocation Interface.
- Specified by:
-
_create_requestin interfaceObject - Parameters:
-
ctx- theContextobject that contains the context strings that must be resolved before they are sent along with the request -
operation- the method that the newRequestobject will invoke -
arg_list- the arguments for the method; anNVListin which each argument is aNamedValueobject -
result- aNamedValueobject to be used for returning the result of executing the request's method -
exceptions- a list of the exceptions that the given method throws -
contexts- a list of the properties that are needed to resolve the contexts in ctx; the strings in contexts are used as arguments to the methodContext.get_values, which returns the value associated with the given property - Returns:
- a new
Requestobject initialized with the given context strings to resolve, method, argument list, container for the result, exceptions, and list of property names to be used in resolving the context strings - See Also:
-
Request,NVList,NamedValue,ExceptionList,ContextList
_get_interface_def
public Object _get_interface_def()
Retrieves the interface definition for this ObjectImpl object.
- Specified by:
-
_get_interface_defin interfaceObject - Returns:
- the
org.omg.CORBA.Objectinstance that is the interface definition for thisObjectImplobject
_orb
public ORB _orb()
Returns a reference to the ORB associated with this object and its delegate. This is the ORB object that created the delegate.
- Returns:
- the
ORBinstance that created theDelegateobject contained in thisObjectImplobject
_get_policy
public Policy _get_policy(int policy_type)
Retrieves the Policy object for this ObjectImpl object that has the given policy type.
- Specified by:
-
_get_policyin interfaceObject - Parameters:
-
policy_type- an int indicating the policy type - Returns:
- the
Policyobject that is the specified policy type and that applies to thisObjectImplobject - See Also:
PolicyOperations.policy_type()
_get_domain_managers
public DomainManager[] _get_domain_managers()
Retrieves a list of the domain managers for this ObjectImpl object.
- Specified by:
-
_get_domain_managersin interfaceObject - Returns:
- an array containing the
DomainManagerobjects for this instance ofObjectImpl
_set_policy_override
public Object _set_policy_override(Policy[] policies,
SetOverrideType set_add) Sets this ObjectImpl object's override type for the given policies to the given instance of SetOverrideType.
- Specified by:
-
_set_policy_overridein interfaceObject - Parameters:
-
policies- an array ofPolicyobjects with the policies that will replace the current policies or be added to the current policies -
set_add- eitherSetOverrideType.SET_OVERRIDE, indicating that the given policies will replace any existing ones, orSetOverrideType.ADD_OVERRIDE, indicating that the given policies should be added to any existing ones - Returns:
- an
Objectwith the given policies replacing or added to its previous policies
_is_local
public boolean _is_local()
Checks whether this ObjectImpl object is implemented by a local servant. If so, local invocation API's may be used.
- Returns:
-
trueif this object is implemented by a local servant;falseotherwise
_servant_preinvoke
public ServantObject _servant_preinvoke(String operation,
Class expectedType) Returns a Java reference to the local servant that should be used for sending a request for the method specified. If this ObjectImpl object is a local stub, it will invoke the _servant_preinvoke method before sending a request in order to obtain the ServantObject instance to use.
If a ServantObject object is returned, its servant field has been set to an object of the expected type (Note: the object may or may not be the actual servant instance). The local stub may cast the servant field to the expected type, and then invoke the operation directly. The ServantRequest object is valid for only one invocation and cannot be used for more than one invocation.
- Parameters:
-
operation- aStringcontaining the name of the method to be invoked. This name should correspond to the method name as it would be encoded in a GIOP request. -
expectedType- aClassobject representing the expected type of the servant that is returned. This expected type is theClassobject associated with the operations class for the stub's interface. For example, a stub for an interfaceFoowould pass theClassobject for theFooOperationsinterface. - Returns:
- (1) a
ServantObjectobject, which may or may not be the actual servant instance, or (2)nullif (a) the servant is not local or (b) the servant has ceased to be local due to a ForwardRequest from a POA ServantManager - Throws:
-
BAD_PARAM- if the servant is not the expected type
_servant_postinvoke
public void _servant_postinvoke(ServantObject servant)
Is called by the local stub after it has invoked an operation on the local servant that was previously retrieved from a call to the method _servant_preinvoke. The _servant_postinvoke method must be called if the _servant_preinvoke method returned a non-null value, even if an exception was thrown by the method invoked by the servant. For this reason, the call to the method _servant_postinvoke should be placed in a Java finally clause.
- Parameters:
-
servant- the instance of theServantObjectreturned by the_servant_preinvokemethod
_request
public OutputStream _request(String operation,
boolean responseExpected) Returns an OutputStream object to use for marshalling the arguments of the given method. This method is called by a stub, which must indicate if a response is expected, that is, whether or not the call is oneway.
- Parameters:
-
operation- a String giving the name of the method. -
responseExpected- a boolean --trueif the request is not one way, that is, a response is expected - Returns:
- an
OutputStreamobject for dispatching the request
_invoke
public InputStream _invoke(OutputStream output)
throws ApplicationException,
RemarshalException Invokes an operation and returns an InputStream object for reading the response. The stub provides the OutputStream object that was previously returned by a call to the _request method. The method specified as an argument to _request when it was called previously is the method that this method invokes.
If an exception occurs, the _invoke method may throw an ApplicationException object that contains an InputStream from which the user exception state may be unmarshalled.
- Parameters:
-
output- an OutputStream object for dispatching the request - Returns:
- an
InputStreamobject containing the marshalled response to the method invoked - Throws:
-
ApplicationException- if the invocation meets application-defined exception -
RemarshalException- if the invocation leads to a remarshalling error - See Also:
_request(java.lang.String)
_releaseReply
public void _releaseReply(InputStream input)
Releases the given reply stream back to the ORB when unmarshalling has completed after a call to the method _invoke. Calling this method is optional for the stub.
- Parameters:
-
input- theInputStreamobject that was returned by the_invokemethod or theApplicationException.getInputStreammethod; may benull, in which case this method does nothing - See Also:
_invoke(org.omg.CORBA.portable.OutputStream)
toString
public String toString()
Returns a String object that represents this ObjectImpl object.
hashCode
public int hashCode()
Returns the hash code for this ObjectImpl object.
- Overrides:
-
hashCodein classObject - Returns:
- the hash code for this object
- See Also:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
equals
public boolean equals(Object obj)
Compares this ObjectImpl object with the given one for equality.
- Overrides:
-
equalsin classObject - Parameters:
-
obj- the object with which to compare this object - Returns:
-
trueif the two objects are equal;falseotherwise - See Also:
-
Object.hashCode(),HashMap
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/javase/8/docs/api/org/omg/CORBA/portable/ObjectImpl.html