public class LocalObject extends Object implements Object
Object, but actually
handling all invocations locally.
Various calls to the remote object specific methods throw the
NO_IMPLEMENT. The explaining message for this exception is
specified in java API as "This is a locally constrained object.".
It is not possible to get a stringified reference of the local object, or
invoke a method using DII (by name via Request class).
However narrowing and widening methods will work with local objects.| Constructor and Description |
|---|
LocalObject() |
| Modifier and Type | Method and Description |
|---|---|
Request |
_create_request(Context context,
String operation,
NVList parameters,
NamedValue returns)
This method is not appropriate for the local objects and just
throws an exception.
|
Request |
_create_request(Context context,
String operation,
NVList parameters,
NamedValue returns,
ExceptionList exceptions,
ContextList ctx_list)
This method is not appropriate for the local objects and just
throws an exception.
|
Object |
_duplicate()
This method is not appropriate for the local objects and just
throws an exception.
|
DomainManager[] |
_get_domain_managers()
This method is not appropriate for the local objects and just
throws an exception.
|
Object |
_get_interface_def()
This method is not appropriate for the local objects and just
throws an exception.
|
Object |
_get_interface()
This method is not appropriate for the local objects and just
throws an exception.
|
Policy |
_get_policy(int a_policy_type)
This method is not appropriate for the local objects and just
throws an exception.
|
int |
_hash(int maximum)
Get the hashcode this object reference.
|
InputStream |
_invoke(OutputStream output)
Invokes the operation.
|
boolean |
_is_a(String repositoryIdentifer)
This method is not appropriate for the local objects and just
throws an exception.
|
boolean |
_is_equivalent(Object other)
Determines if the object is equal to another object, so far as it is
possible to determine easily.
|
boolean |
_is_local()
While it may look that this should return true, the jdk 1.5 API states
that it must throw NO_IMPLEMENT instead.
|
boolean |
_non_existent()
Always returs false.
|
ORB |
_orb()
This method is not appropriate for the local objects and just
throws an exception.
|
void |
_release()
This method is not appropriate for the local objects and just
throws an exception.
|
void |
_releaseReply(InputStream input)
This method is not appropriate for the local objects and just
throws an exception.
|
Request |
_request(String operation)
This method is not appropriate for the local objects and just
throws an exception.
|
OutputStream |
_request(String operation,
boolean responseExpected)
This method is not appropriate for the local objects and just
throws an exception.
|
void |
_servant_postinvoke(ServantObject servant)
This method is called from
rmic generated stubs if the
Util.isLocal(javax.rmi.CORBA.Stub), called passing this as parameter,
returns true, and the _servant_preinvoke(java.lang.String, java.lang.Class) return non-null object. |
ServantObject |
_servant_preinvoke(String operation,
Class expectedType)
This method is called from
rmic generated stubs if the
Util.isLocal(javax.rmi.CORBA.Stub), called passing this as parameter,
returns true. |
Object |
_set_policy_override(Policy[] policies,
SetOverrideType how)
This method is not appropriate for the local objects and just
throws an exception.
|
boolean |
validate_connection()
This method is not appropriate for the local objects and just
throws an exception.
|
public LocalObject()
public Request _create_request(Context context, String operation, NVList parameters, NamedValue returns)
_create_request in interface Objectcontext - a list of additional properties.operation - the name of method to be invoked.parameters - the method parameters.returns - the container for tge method returned value.NO_IMPLEMENT, - always.public Request _create_request(Context context, String operation, NVList parameters, NamedValue returns, ExceptionList exceptions, ContextList ctx_list)
_create_request in interface Objectcontext - a list of additional properties.operation - the name of method to be invoked.parameters - the method parameters.returns - the container for tge method returned value.exceptions - the list of the possible exceptions that the method
can throw.ctx_list - the list of the context strings that need to be
resolved and send as a context instance.NO_IMPLEMENT, - always.public Object _duplicate()
_duplicate in interface Objectthis.NO_IMPLEMENT, - always.public DomainManager[] _get_domain_managers()
_get_domain_managers in interface ObjectNO_IMPLEMENT, - always.public Object _get_interface_def()
_get_interface_def in interface ObjectNO_IMPLEMENT, - always.public Object _get_interface()
NO_IMPLEMENT, - always.public Policy _get_policy(int a_policy_type) throws BAD_PARAM
_get_policy in interface Objecta_policy_type - a type of policy to be obtained.NO_IMPLEMENT, - always.BAD_PARAM - if the policy of the given type is not
associated with this object, or if it is not supported by this ORB.public int _hash(int maximum)
public boolean _is_a(String repositoryIdentifer)
public boolean _is_equivalent(Object other)
_is_equivalent in interface Objectother - the other object.public boolean _non_existent()
_non_existent in interface Objectpublic void _release()
public Request _request(String operation)
public Object _set_policy_override(Policy[] policies, SetOverrideType how)
_set_policy_override in interface Objectpolicies - the policy additions or replacements.how - either SetOverrideType.SET_OVERRIDE to override the
current policies of SetOverrideType.ADD_OVERRIDE to replace
them.NO_IMPLEMENT, - always.public ServantObject _servant_preinvoke(String operation, Class expectedType)
rmic generated stubs if the
Util.isLocal(javax.rmi.CORBA.Stub), called passing this as parameter,
returns true. If the method returns null, the requested method is then
invoked on this. Else it is invoked on the returned object,
casting it into the interface that the local object implements. In this
case, the generated stub also later calls
_servant_postinvoke(ServantObject), passing that returned target
as parameter.operation - the name of the method being invoked.expectedType - the interface that the returned servant
object must implement.NO_IMPLEMENT - always. If used, the method must be overridden.public void _servant_postinvoke(ServantObject servant)
rmic generated stubs if the
Util.isLocal(javax.rmi.CORBA.Stub), called passing this as parameter,
returns true, and the _servant_preinvoke(java.lang.String, java.lang.Class) return non-null object.
The stub then invokes the requrested method on that returned object and
later calls _servant_postinvoke, passing that returned target as parameter.servant - the object that has served as the invocation target for the
current operation.public InputStream _invoke(OutputStream output) throws ApplicationException, RemarshalException
_request(String) and returns an InputStream which
contains the reply. Up till jdk 1.5 inclusive this method is marked as
unimplemented.NO_IMPLEMENT - always.ApplicationExceptionRemarshalExceptionpublic boolean _is_local()
Util.isLocal(javax.rmi.CORBA.Stub)
instead (passing this as parameter).NO_IMPLEMENT - always.public ORB _orb()
NO_IMPLEMENT, - always.public void _releaseReply(InputStream input)
NO_IMPLEMENT, - always.public OutputStream _request(String operation, boolean responseExpected)
NO_IMPLEMENT, - always.public boolean validate_connection()
NO_IMPLEMENT, - always.