#include <Object.h>
Inheritance diagram for CORBA::Object:
Spec defined methods | |
virtual CORBA::Boolean | _is_a (const char *logical_type_id ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
Determine if we are of the type specified by the "logical_type_id". | |
virtual const char * | _interface_repository_id (void) const |
virtual CORBA::ULong | _hash (CORBA::ULong maximum ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
virtual CORBA::Boolean | _is_equivalent (CORBA::Object_ptr other_obj ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw () |
virtual CORBA::Boolean | _non_existent (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) |
Determine if we are of the type specified by the "logical_type_id". | |
virtual CORBA::ImplementationDef_ptr | _get_implementation (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) |
virtual InterfaceDef_ptr | _get_interface (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) |
Get info about the object from the Interface Repository. | |
virtual CORBA::Object_ptr | _get_component (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) |
Get info about the object from the Interface Repository. | |
virtual void | _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::Request_ptr &request, CORBA::Flags req_flags ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
Determine if we are of the type specified by the "logical_type_id". | |
virtual void | _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::ExceptionList_ptr exclist, CORBA::ContextList_ptr ctxtlist, CORBA::Request_ptr &request, CORBA::Flags req_flags ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
Determine if we are of the type specified by the "logical_type_id". | |
virtual CORBA::Request_ptr | _request (const char *operation ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
DII operation to create a request. | |
CORBA::Policy_ptr | _get_policy (CORBA::PolicyType type ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
Determine if we are of the type specified by the "logical_type_id". | |
CORBA::Policy_ptr | _get_cached_policy (TAO_Cached_Policy_Type type ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
Determine if we are of the type specified by the "logical_type_id". | |
CORBA::Object_ptr | _set_policy_overrides (const CORBA::PolicyList &policies, CORBA::SetOverrideType set_add ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
Determine if we are of the type specified by the "logical_type_id". | |
CORBA::PolicyList * | _get_policy_overrides (const CORBA::PolicyTypeSeq &types ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
Determine if we are of the type specified by the "logical_type_id". | |
CORBA::Boolean | _validate_connection (CORBA::PolicyList_out inconsistent_policies ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
Determine if we are of the type specified by the "logical_type_id". | |
CORBA::Object_ptr | _duplicate (CORBA::Object_ptr obj) |
Increment the ref count. | |
CORBA::Object_ptr | _nil (void) |
Return a NULL object. | |
CORBA::Object_ptr | _narrow (CORBA::Object_ptr obj ACE_ENV_ARG_DECL_WITH_DEFAULTS) |
No-op it is just here to simplify some templates. | |
Methods that are TAO specific. | |
These methods are defined here as helper functions to be used by other parts of TAO. Theoretically they shold all start with tao_. But we have deviated from that principle. | |
virtual TAO_Abstract_ServantBase * | _servant (void) const |
virtual CORBA::Boolean | _is_collocated (void) const |
Is this object collocated with the servant? | |
virtual CORBA::Boolean | _is_local (void) const |
Is this a local object? | |
virtual TAO::ObjectKey * | _key (ACE_ENV_SINGLE_ARG_DECL) |
Object (TAO_Stub *p, CORBA::Boolean collocated=0, TAO_Abstract_ServantBase *servant=0, TAO_ORB_Core *orb_core=0) | |
Constructor. | |
Object (IOP::IOR *ior, TAO_ORB_Core *orb_core=0) | |
virtual TAO_Stub * | _stubobj (void) const |
Get the underlying stub object. | |
virtual TAO_Stub * | _stubobj (void) |
virtual void | _proxy_broker (TAO::Object_Proxy_Broker *proxy_broker) |
Set the proxy broker. | |
virtual CORBA::Boolean | marshal (TAO_OutputCDR &cdr) |
Allows us to forbid marshaling of local interfaces. | |
CORBA::Boolean | is_evaluated (void) const |
Accessor to the flag.. | |
void | set_collocated_servant (TAO_Abstract_ServantBase *) |
Mutator for setting the servant in collocated cases. | |
TAO_ORB_Core * | orb_core (void) const |
Accessor for the ORB_Core.. | |
IOP::IOR * | steal_ior (void) |
Accessors for the underlying IOP::IOR's. | |
const IOP::IOR & | ior (void) const |
CORBA::Boolean | marshal (Object_ptr obj, TAO_OutputCDR &strm) |
void | _tao_any_destructor (void *) |
Used in the implementation of CORBA::Any. | |
CORBA::Boolean | is_nil_i (CORBA::Object_ptr obj) |
Uninlined part of the now-inlined CORBA::is_nil(). | |
void | tao_object_initialize (Object *) |
Helper function for reading contents of an IOR. | |
Public Types | |
typedef Object_ptr | _ptr_type |
typedef Object_var | _var_type |
Public Member Functions | |
virtual | ~Object (void) |
Destructor. | |
Reference Count Managment | |
virtual void | _add_ref (void) |
Increment the reference count. | |
virtual void | _remove_ref (void) |
Decrement the reference count. | |
Protected Member Functions | |
Object (int dummy=0) | |
Initializing a local object. | |
Protected Attributes | |
TAO_Abstract_ServantBase * | servant_ |
Servant pointer. It is 0 except for collocated objects. | |
Private Member Functions | |
Object (const Object &) | |
Object & | operator= (const Object &) |
Private Attributes | |
CORBA::Boolean | is_collocated_ |
CORBA::Boolean | is_local_ |
Specify whether this is a local object or not. | |
TAO::Object_Proxy_Broker * | proxy_broker_ |
Pointer to the Proxy Broker. | |
Boolean | is_evaluated_ |
Flag to indicate whether the IOP::IOR has been evaluated fully. | |
IOP::IOR_var | ior_ |
TAO_ORB_Core * | orb_core_ |
Cached pointer of our ORB_Core. | |
TAO_Stub * | protocol_proxy_ |
CORBA::ULong | refcount_ |
Number of outstanding references to this object. | |
ACE_Lock * | refcount_lock_ |
Protect reference count manipulation from race conditions. |
All CORBA objects, both unconstrained and locality-constrained, inherit from this class. The interface is defined in the CORBA specification and the C++ mapping.
|
|
|
Destructor.
|
|
Constructor. This constructor should not be called when the protocol proxy is null ie. when the object is a LocalObject. Assert that requirement. |
|
|
|
Initializing a local object.
|
|
|
|
Increment the reference count.
Reimplemented in CORBA::LocalObject, and TAO_Local_RefCounted_Object. |
|
Determine if we are of the type specified by the "logical_type_id".
Reimplemented in CORBA::LocalObject. |
|
Determine if we are of the type specified by the "logical_type_id".
Reimplemented in CORBA::LocalObject. |
|
Increment the ref count.
|
|
Determine if we are of the type specified by the "logical_type_id".
Reimplemented in CORBA::LocalObject. |
|
Get info about the object from the Interface Repository.
Reimplemented in CORBA::LocalObject. |
|
This method is deprecated in the CORBA 2.2 spec, we just return 0 every time. Reimplemented in CORBA::LocalObject. |
|
Get info about the object from the Interface Repository.
Reimplemented in CORBA::LocalObject. |
|
Determine if we are of the type specified by the "logical_type_id".
Reimplemented in CORBA::LocalObject. |
|
Determine if we are of the type specified by the "logical_type_id".
Reimplemented in CORBA::LocalObject. |
|
Return a (potentially non-unique) hash value for this object. This method relies on the representation of the object reference's private state. Since that changes easily (when different ORB protocols are in use) there is no default implementation. Reimplemented in CORBA::LocalObject. |
|
The repository ID for the most derived class, this is an implementation method and does no remote invocations! Reimplemented in CORBA::Current, CORBA::DomainManager, CORBA::ConstructionPolicy, IOP::Codec, IOP::CodecFactory, TAO_ORBInitInfo, CORBA::Policy, CORBA::PolicyManager, CORBA::PolicyCurrent, CORBA::Pollable, CORBA::DIIPollable, CORBA::PollableSet, PortableInterceptor::Interceptor, PortableInterceptor::Current, PortableInterceptor::RequestInfo, PortableInterceptor::ClientRequestInfo, PortableInterceptor::ServerRequestInfo, PortableInterceptor::ClientRequestInterceptor, PortableInterceptor::ServerRequestInterceptor, PortableInterceptor::PolicyFactory, PortableInterceptor::ORBInitInfo, PortableInterceptor::ORBInitializer, and TAO::BufferingConstraintPolicy. |
|
Determine if we are of the type specified by the "logical_type_id".
|
|
Is this object collocated with the servant?
|
|
Try to determine if this object is the same as other_obj. This method relies on the representation of the object reference's private state. Since that changes easily (when different ORB protocols are in use) there is no default implementation. Reimplemented in CORBA::LocalObject. |
|
Is this a local object?
|
|
Return the object key as an out parameter. Caller should release return value when finished with it. Reimplemented in CORBA::LocalObject. |
|
|
|
Determine if we are of the type specified by the "logical_type_id".
Reimplemented in CORBA::LocalObject. |
|
Set the proxy broker.
|
|
Decrement the reference count.
Reimplemented in CORBA::LocalObject, and TAO_Local_RefCounted_Object. |
|
DII operation to create a request.
Reimplemented in CORBA::LocalObject. |
|
|
|
Determine if we are of the type specified by the "logical_type_id".
Reimplemented in CORBA::LocalObject. |
|
|
|
Get the underlying stub object.
|
|
|
Determine if we are of the type specified by the "logical_type_id".
Reimplemented in CORBA::LocalObject. |
|
|
|
Accessor to the flag..
|
|
Uninlined part of the now-inlined CORBA::is_nil().
|
|
|
Marshalling operator used by the stub code. A long story why the stub code uses this, let us keep it short here. |
|
|
|
Accessor for the ORB_Core..
Reimplemented in TAO_ORBInitInfo. |
|
Mutator for setting the servant in collocated cases. This is used by the Object_Adapter to set the servant for collocated cases and only when the object is initialized. The object initialization takes place when IOR's are lazily evaluated. |
|
Accessors for the underlying IOP::IOR's. The steal_ior () call basically relinquishes the ownership of the IOR. This is useful for cases when one wants to initialize a new CORBA Object |
|
Helper function for reading contents of an IOR.
|
|
If the IOR hasnt been evaluated fully, then the contents of the IOR that we received should be in here! |
|
Flag to indicate collocation. It is 0 except for collocated objects. |
|
Flag to indicate whether the IOP::IOR has been evaluated fully.
|
|
Specify whether this is a local object or not.
|
|
Cached pointer of our ORB_Core.
Reimplemented in TAO_CDR_Encaps_Codec, TAO_CodecFactory, TAO_ORBInitInfo, and TAO::PICurrent. |
|
Pointer to the protocol-specific "object" containing important profiling information regarding this proxy. The protocol proxy is (potentially) shared among several Objects |
|
Pointer to the Proxy Broker. This cached pointer instance takes care of routing the call for standard calls in CORBA::Object like _is_a (), _get_component () etc. |
|
Number of outstanding references to this object.
Reimplemented in TAO_Local_RefCounted_Object. |
|
Protect reference count manipulation from race conditions. This lock is only instantiated for unconstrained objects. The reason for this is that locality-constrained objects that do not require reference counting (the default) may be instantiated in the critical path. Reimplemented in TAO_Local_RefCounted_Object. |
|
Servant pointer. It is 0 except for collocated objects.
|