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.
public ObjectImpl()
public Delegate _get_delegate()
Retrieves the reference to the vendor-specific Delegate
object to which this ObjectImpl
object delegates all methods invoked on it.
BAD_OPERATION
- if the delegate has not been set_set_delegate(org.omg.CORBA.portable.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.
delegate
- the Delegate
instance to which all method calls on this ObjectImpl
object will be delegated; may be implemented by a third-party ORB_get_delegate()
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.
ObjectImpl
instancepublic Object _duplicate()
Returns a duplicate of this ObjectImpl
object.
_duplicate
in interface Object
orb.omg.CORBA.Object
object that is a duplicate of this objectpublic void _release()
Releases the resources associated with this ObjectImpl
object.
public boolean _is_a(String repository_id)
Checks whether the object identified by the given repository identifier is an ObjectImpl
object.
_is_a
in interface Object
repository_id
- a String
object with the repository identifier to checktrue
if the object identified by the given repository id is an instance of ObjectImpl
; false
otherwisepublic boolean _is_equivalent(Object that)
Checks whether the the given ObjectImpl
object is equivalent to this ObjectImpl
object.
_is_equivalent
in interface Object
that
- an instance of ObjectImpl
to compare with this ObjectImpl
objecttrue
if the given object is equivalent to this ObjectImpl
object; false
otherwisepublic boolean _non_existent()
Checks whether the server object for this ObjectImpl
object has been destroyed.
_non_existent
in interface Object
true
if the ORB knows authoritatively that the server object does not exist; false
otherwisepublic int _hash(int maximum)
Retrieves the hash code that serves as an ORB-internal identifier for this ObjectImpl
object.
_hash
in interface Object
maximum
- an int
indicating the upper bound on the hash value returned by the ORBint
representing the hash code for this ObjectImpl
objectpublic Request _request(String operation)
Creates a Request
object containing the given method that can be used with the Dynamic Invocation Interface.
_request
in interface Object
operation
- the method to be invoked by the new Request
objectRequest
object initialized with the given methodpublic 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.
_create_request
in interface Object
ctx
- the Context for the requestoperation
- the method that the new Request
object will invokearg_list
- the arguments for the method; an NVList
in which each argument is a NamedValue
objectresult
- a NamedValue
object to be used for returning the result of executing the request's methodRequest
object initialized with the given context, method, argument list, and container for the return valueRequest
, NVList
, NamedValue
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.
_create_request
in interface Object
ctx
- the Context
object that contains the context strings that must be resolved before they are sent along with the requestoperation
- the method that the new Request
object will invokearg_list
- the arguments for the method; an NVList
in which each argument is a NamedValue
objectresult
- a NamedValue
object to be used for returning the result of executing the request's methodexceptions
- a list of the exceptions that the given method throwscontexts
- a list of the properties that are needed to resolve the contexts in ctx; the strings in contexts are used as arguments to the method Context.get_values
, which returns the value associated with the given propertyRequest
object 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 stringsRequest
, NVList
, NamedValue
, ExceptionList
, ContextList
public Object _get_interface_def()
Retrieves the interface definition for this ObjectImpl
object.
_get_interface_def
in interface Object
org.omg.CORBA.Object
instance that is the interface definition for this ObjectImpl
objectpublic ORB _orb()
Returns a reference to the ORB associated with this object and its delegate. This is the ORB
object that created the delegate.
ORB
instance that created the Delegate
object contained in this ObjectImpl
objectpublic Policy _get_policy(int policy_type)
Retrieves the Policy
object for this ObjectImpl
object that has the given policy type.
_get_policy
in interface Object
policy_type
- an int indicating the policy typePolicy
object that is the specified policy type and that applies to this ObjectImpl
objectPolicyOperations.policy_type()
public DomainManager[] _get_domain_managers()
Retrieves a list of the domain managers for this ObjectImpl
object.
_get_domain_managers
in interface Object
DomainManager
objects for this instance of ObjectImpl
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
.
_set_policy_override
in interface Object
policies
- an array of Policy
objects with the policies that will replace the current policies or be added to the current policiesset_add
- either SetOverrideType.SET_OVERRIDE
, indicating that the given policies will replace any existing ones, or SetOverrideType.ADD_OVERRIDE
, indicating that the given policies should be added to any existing onesObject
with the given policies replacing or added to its previous policiespublic boolean _is_local()
Checks whether this ObjectImpl
object is implemented by a local servant. If so, local invocation API's may be used.
true
if this object is implemented by a local servant; false
otherwisepublic 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.
operation
- a String
containing 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
- a Class
object representing the expected type of the servant that is returned. This expected type is the Class
object associated with the operations class for the stub's interface. For example, a stub for an interface Foo
would pass the Class
object for the FooOperations
interface.ServantObject
object, which may or may not be the actual servant instance, or (2) null
if (a) the servant is not local or (b) the servant has ceased to be local due to a ForwardRequest from a POA ServantManagerBAD_PARAM
- if the servant is not the expected typepublic 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.
servant
- the instance of the ServantObject
returned by the _servant_preinvoke
methodpublic 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.
operation
- a String giving the name of the method.responseExpected
- a boolean -- true
if the request is not one way, that is, a response is expectedOutputStream
object for dispatching the requestpublic 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.
output
- an OutputStream object for dispatching the requestInputStream
object containing the marshalled response to the method invokedApplicationException
- if the invocation meets application-defined exceptionRemarshalException
- if the invocation leads to a remarshalling error_request(java.lang.String)
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.
input
- the InputStream
object that was returned by the _invoke
method or the ApplicationException.getInputStream
method; may be null
, in which case this method does nothing_invoke(org.omg.CORBA.portable.OutputStream)
public String toString()
Returns a String
object that represents this ObjectImpl
object.
public int hashCode()
Returns the hash code for this ObjectImpl
object.
hashCode
in class Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean equals(Object obj)
Compares this ObjectImpl
object with the given one for equality.
equals
in class Object
obj
- the object with which to compare this objecttrue
if the two objects are equal; false
otherwiseObject.hashCode()
, HashMap
© 1993–2017, 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.