summaryrefslogtreecommitdiff
path: root/TAO/tao/ORB.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/ORB.h')
-rw-r--r--TAO/tao/ORB.h113
1 files changed, 40 insertions, 73 deletions
diff --git a/TAO/tao/ORB.h b/TAO/tao/ORB.h
index 38417465cb6..bd568a0c0f2 100644
--- a/TAO/tao/ORB.h
+++ b/TAO/tao/ORB.h
@@ -346,18 +346,16 @@ public:
// Returns a pointer to a nil ORB, i.e., an non-existent ORB. This
// can be used for initialization or in comparisons.
- virtual CORBA::Object_ptr string_to_object (
- const char *str,
- CORBA_Environment &ACE_TRY_ENV =
- TAO_default_environment ());
+ CORBA::Object_ptr string_to_object (const char *str,
+ CORBA_Environment &ACE_TRY_ENV =
+ TAO_default_environment ());
// Turn a string-ified object reference back into an object pointer.
// Typically these strings are created using <object_to_string()>,
// but not necessarily locally.
- virtual CORBA::String object_to_string (
- CORBA::Object_ptr obj,
- CORBA_Environment &ACE_TRY_ENV =
- TAO_default_environment ());
+ CORBA::String object_to_string (CORBA::Object_ptr obj,
+ CORBA_Environment &ACE_TRY_ENV =
+ TAO_default_environment ());
// Turn an object reference into a string. Each type of ORB,
// e.g. an IIOP ORB, must implement this. This can be used by
// servers to publish their whereabouts to clients. The output of
@@ -368,15 +366,17 @@ public:
#ifdef TAO_HAS_VALUETYPE
// Value factory operations (CORBA 2.3 ptc/98-10-05 Ch. 4.2 p.4-7)
CORBA::ValueFactory_ptr register_value_factory (
- const char *repository_id,
- CORBA::ValueFactory_ptr factory,
- CORBA_Environment &ACE_TRY_ENV =
- TAO_default_environment () );
+ const char *repository_id,
+ CORBA::ValueFactory_ptr factory,
+ CORBA_Environment &ACE_TRY_ENV =
+ TAO_default_environment () );
void unregister_value_factory (const char * repository_id,
CORBA_Environment &ACE_TRY_ENV =
- TAO_default_environment () );
- CORBA::ValueFactory_ptr lookup_value_factory (const char *repository_id,
- CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () );
+ TAO_default_environment () );
+ CORBA::ValueFactory_ptr lookup_value_factory (
+ const char *repository_id,
+ CORBA_Environment &ACE_TRY_ENV =
+ TAO_default_environment () );
#endif /* TAO_HAS_VALUETYPE */
#if !defined (TAO_HAS_MINIMUM_CORBA)
@@ -392,18 +392,18 @@ public:
void create_list (CORBA::Long count,
CORBA::NVList_ptr &new_list,
CORBA_Environment &ACE_TRY_ENV =
- TAO_default_environment ());
+ TAO_default_environment ());
// The following are not implemented and just throw
// CORBA::NO_IMPLEMENT.
void create_named_value (CORBA::NamedValue_ptr &nmval,
CORBA_Environment &ACE_TRY_ENV =
- TAO_default_environment ());
+ TAO_default_environment ());
void create_exception_list (CORBA::ExceptionList_ptr &exclist,
CORBA_Environment &ACE_TRY_ENV =
- TAO_default_environment ());
+ TAO_default_environment ());
void create_context_list (CORBA::ContextList_ptr &ctxtlist,
CORBA_Environment &ACE_TRY_ENV =
@@ -536,38 +536,40 @@ public:
// = TAO-specific extensions to the CORBA specification.
// ----------------------------------------------------------------
- virtual TAO_SERVANT_LOCATION _get_collocated_servant (TAO_Stub *p,
- TAO_ServantBase *&servant);
+ TAO_SERVANT_LOCATION _get_collocated_servant (TAO_Stub *p,
+ TAO_ServantBase *&servant);
// Return the object pointer of an collocated object it there is
// one, otherwise, return 0. Each type of ORB, e. g., IIOP ORB,
// must implement this and determine what is a collocated object
// based on information provided in the TAO_Stub.
- virtual int _tao_add_to_IOR_table (const ACE_CString &object_id,
- CORBA::Object_ptr obj);
+ int _tao_add_to_IOR_table (const ACE_CString &object_id,
+ CORBA::Object_ptr obj);
// Add a mapping ObjectID->IOR to the table.
- virtual int _tao_find_in_IOR_table (const ACE_CString &object_id,
- CORBA::Object_ptr &obj);
+ int _tao_find_in_IOR_table (const ACE_CString &object_id,
+ CORBA::Object_ptr &obj);
// Find the given ObjectID in the table.
CORBA_Object_ptr resolve_root_poa (CORBA_Environment &ACE_TRY_ENV,
- const char *adapter_name = TAO_DEFAULT_ROOTPOA_NAME,
+ const char *adapter_name =
+ TAO_DEFAULT_ROOTPOA_NAME,
TAO_POA_Manager *poa_manager = 0,
const TAO_POA_Policies *policies = 0);
// Resolve the POA.
TAO_Stub *create_stub_object (const TAO_ObjectKey &key,
const char *type_id,
- CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ());
- // Makes sure that the ORB is open and then creates an IIOP object
- // based on the endpoint.
+ CORBA_Environment &ACE_TRY_ENV =
+ TAO_default_environment ());
+ // Delegates on the ORB_Core to create a TAO_Stub.
CORBA_Object_ptr key_to_object (const TAO_ObjectKey &key,
const char *type_id,
TAO_ServantBase *servant = 0,
CORBA::Boolean collocated = 1,
- CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ());
+ CORBA_Environment &ACE_TRY_ENV =
+ TAO_default_environment ());
// Convert key into an object reference. Return Object_ptr as out
// parameter. Errors will come through the environment.
//
@@ -590,26 +592,18 @@ public:
// ORB will not normally return OBJECT_NOT_EXIST unless the POA
// reports that fault.
- int open (void);
- // Set up the ORB Core's acceptor to listen on the
- // previously-specified port for requests. Returns -1 on failure,
- // else 0.
-
- static void init_orb_globals (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ());
+ static void init_orb_globals (CORBA_Environment &ACE_TRY_ENV =
+ TAO_default_environment ());
// Initialize the ORB globals correctly, i.e., only when they
// haven't been initialized yet.
- static CORBA::Boolean orb_free_resources (void);
- // Indicates if we have reached a point where all ORB owned
- // resources will be deallocated.
-
// The function used by tao to handle the "unexpected" exceptions,
// It raises CORBA::UNKNOWN.
static void _tao_unexpected_exception (void);
// Reference counting...
- virtual CORBA::ULong _incr_refcnt (void);
- virtual CORBA::ULong _decr_refcnt (void);
+ CORBA::ULong _incr_refcnt (void);
+ CORBA::ULong _decr_refcnt (void);
void _use_omg_ior_format (CORBA::Boolean ior);
// Set the IOR flag.
@@ -633,7 +627,7 @@ public:
protected:
// We must be created via the <ORB_init> call.
CORBA_ORB (TAO_ORB_Core *orb_core);
- virtual ~CORBA_ORB (void);
+ ~CORBA_ORB (void);
TAO_SERVANT_LOCATION _find_collocated_servant (TAO_Stub *sobj,
TAO_ORB_Core *orb_core,
@@ -658,11 +652,10 @@ protected:
private:
- CORBA_Object_ptr resolve_service (const char* service_name,
- ACE_Time_Value *timeout,
- CORBA::Environment& ACE_TRY_ENV);
- // Resolve the service name.
-
+ CORBA_Object_ptr resolve_name_service (ACE_Time_Value *timeout,
+ CORBA::Environment& ACE_TRY_ENV);
+ // Resolve the name service
+
CORBA_Object_ptr resolve_trading_service (ACE_Time_Value *timeout,
CORBA::Environment& ACE_TRY_ENV);
// Resolve the trading object reference.
@@ -706,32 +699,6 @@ private:
// Maintains a reference count of number of instantiations of the
// ORB.
- u_int open_called_;
- // Flag which denotes that the open method was called.
-
- ACE_SYNCH_MUTEX open_lock_;
- // Mutual exclusion for calling open.
-
- CORBA_Object_ptr name_service_;
- // If this is non-_nil(), then this is the object reference to our
- // configured Naming Context.
-
- CORBA_Object_ptr schedule_service_;
- // If this is non-_nil(), then this is the object reference to our
- // configured RtecScheduler::Scheduler.
-
- CORBA_Object_ptr event_service_;
- // If this is non-_nil(), then this is the object reference to our
- // configured Event Channel.
-
- CORBA_Object_ptr trading_service_;
- // If this is non-_nil(), then this is the object reference to our
- // configured Trading.
-
- CORBA_Object_ptr implrepo_service_;
- // If this is non-_nil(), then this is the object reference to our
- // configured Implementation Repository.
-
static int orb_init_count_;
// Count of the number of times that <ORB_init> has been called.
// This must be protected by <ACE_Static_Object_Lock>.