IORTable::Table Interface Reference

Define the IORTable interface. More...

import "IORTable.pidl";

Inheritance diagram for IORTable::Table:

Inheritance graph
[legend]
Collaboration diagram for IORTable::Table:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Table_ptr _ptr_type
typedef Table_var _var_type

Public Member Functions

void bind (in string object_key, in string IOR) raises (AlreadyBound)
 Bind to the .

void rebind (in string object_key, in string IOR)
 Bind to the .

void unbind (in string object_key) raises (NotFound)
 Remove the binding for .

void set_locator (in Locator the_locator)
virtual void bind (const char *object_key, const char *IOR)=0 throw ( CORBA::SystemException, ::IORTable::AlreadyBound )
virtual void rebind (const char *object_key, const char *IOR)=0 throw ( CORBA::SystemException )
virtual void unbind (const char *object_key)=0 throw ( CORBA::SystemException, ::IORTable::NotFound )
virtual void set_locator (::IORTable::Locator_ptr the_locator)=0 throw ( CORBA::SystemException )
virtual CORBA::Boolean _is_a (const char *type_id)
virtual const char * _interface_repository_id (void) const
virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr)

Static Public Member Functions

Table_ptr _duplicate (Table_ptr obj)
void _tao_release (Table_ptr obj)
Table_ptr _narrow (CORBA::Object_ptr obj)
Table_ptr _unchecked_narrow (CORBA::Object_ptr obj)
Table_ptr _nil (void)

Protected Member Functions

 Table (void)
virtual ~Table (void)

Private Member Functions

 Table (const Table &)
void operator= (const Table &)

Detailed Description

Define the IORTable interface.

Any TAO server can be configured as an corbaloc agent. Such agents forward requests generated using a simple ObjectKey in a corbaloc specifcation to the real location of the object. In TAO we implement this feature by dynamically (or statically) adding a new Object Adapter to the ORB, that handles any sort of request.

Definition at line 48 of file IORTable.pidl.


Member Typedef Documentation

typedef Table_ptr IORTable::Table::_ptr_type
 

Reimplemented from CORBA::Object.

Definition at line 214 of file IORTableC.h.

typedef Table_var IORTable::Table::_var_type
 

Reimplemented from CORBA::Object.

Definition at line 215 of file IORTableC.h.


Constructor & Destructor Documentation

IORTable::Table::Table void   )  [protected]
 

Definition at line 275 of file IORTableC.cpp.

00276 {}

IORTable::Table::~Table void   )  [protected, virtual]
 

Definition at line 278 of file IORTableC.cpp.

00279 {}

IORTable::Table::Table const Table  )  [private]
 


Member Function Documentation

IORTable::Table_ptr IORTable::Table::_duplicate Table_ptr  obj  )  [static]
 

Definition at line 316 of file IORTableC.cpp.

References CORBA::Object::_add_ref(), and IORTable::Table_ptr.

00317 {
00318   if (! ::CORBA::is_nil (obj))
00319     {
00320       obj->_add_ref ();
00321     }
00322 
00323   return obj;
00324 }

const char * IORTable::Table::_interface_repository_id void   )  const [virtual]
 

Reimplemented from CORBA::Object.

Definition at line 361 of file IORTableC.cpp.

00362 {
00363   return "IDL:IORTable/Table:1.0";
00364 }

CORBA::Boolean IORTable::Table::_is_a const char *  type_id  )  [virtual]
 

Reimplemented from CORBA::Object.

Definition at line 333 of file IORTableC.cpp.

References ACE_OS::strcmp().

00337 {
00338   if (
00339       !ACE_OS::strcmp (
00340           value,
00341           "IDL:IORTable/Table:1.0"
00342         ) ||
00343       !ACE_OS::strcmp (
00344           value,
00345           "IDL:omg.org/CORBA/LocalObject:1.0"
00346         ) ||
00347       !ACE_OS::strcmp (
00348           value,
00349           "IDL:omg.org/CORBA/Object:1.0"
00350         )
00351     )
00352     {
00353       return true; // success using local knowledge
00354     }
00355   else
00356     {
00357       return false;
00358     }
00359 }

IORTable::Table_ptr IORTable::Table::_narrow CORBA::Object_ptr  obj  )  [static]
 

Reimplemented from CORBA::Object.

Definition at line 282 of file IORTableC.cpp.

References CORBA::is_nil(), and IORTable::Table_ptr.

00286 {
00287   if (CORBA::is_nil (_tao_objref))
00288     {
00289       return Table::_nil ();
00290     }
00291 
00292   Table_ptr proxy =
00293     dynamic_cast<Table_ptr> (_tao_objref);
00294 
00295   return Table::_duplicate (proxy);
00296 }

Table_ptr IORTable::Table::_nil void   )  [inline, static]
 

Reimplemented from CORBA::Object.

Definition at line 232 of file IORTableC.h.

References IORTable::Table_ptr.

00233     {
00234       return static_cast<Table_ptr> (0);
00235     }

void IORTable::Table::_tao_release Table_ptr  obj  )  [static]
 

Definition at line 327 of file IORTableC.cpp.

References IORTable::Table_ptr.

00328 {
00329   ::CORBA::release (obj);
00330 }

IORTable::Table_ptr IORTable::Table::_unchecked_narrow CORBA::Object_ptr  obj  )  [static]
 

Definition at line 299 of file IORTableC.cpp.

References CORBA::is_nil(), and IORTable::Table_ptr.

00303 {
00304   if (CORBA::is_nil (_tao_objref))
00305     {
00306       return Table::_nil ();
00307     }
00308 
00309   Table_ptr proxy =
00310     dynamic_cast<Table_ptr> (_tao_objref);
00311 
00312   return Table::_duplicate (proxy);
00313 }

virtual void IORTable::Table::bind const char *  object_key,
const char *  IOR
throw ( CORBA::SystemException, ::IORTable::AlreadyBound ) [pure virtual]
 

Implemented in TAO_IOR_Table_Impl.

void IORTable::Table::bind in string  object_key,
in string  IOR
raises (AlreadyBound)
 

Bind to the .

CORBA::Boolean IORTable::Table::marshal TAO_OutputCDR cdr  )  [virtual]
 

Reimplemented from CORBA::Object.

Definition at line 367 of file IORTableC.cpp.

00368 {
00369   return false;
00370 }

void IORTable::Table::operator= const Table  )  [private]
 

virtual void IORTable::Table::rebind const char *  object_key,
const char *  IOR
throw ( CORBA::SystemException ) [pure virtual]
 

Implemented in TAO_IOR_Table_Impl.

void IORTable::Table::rebind in string  object_key,
in string  IOR
 

Bind to the .

virtual void IORTable::Table::set_locator ::IORTable::Locator_ptr  the_locator  )  throw ( CORBA::SystemException ) [pure virtual]
 

void IORTable::Table::set_locator in Locator  the_locator  ) 
 

Set the locator, if no binding is set for an object_key we try to use the locator to resolve it

virtual void IORTable::Table::unbind const char *  object_key  )  throw ( CORBA::SystemException, ::IORTable::NotFound ) [pure virtual]
 

Implemented in TAO_IOR_Table_Impl.

void IORTable::Table::unbind in string  object_key  )  raises (NotFound)
 

Remove the binding for .


The documentation for this interface was generated from the following files:
Generated on Thu Nov 9 13:07:22 2006 for TAO_IORTable by doxygen 1.3.6