CIAO::Container Class Reference

Common container interface definition. More...

#include <Container_Base.h>

Inheritance diagram for CIAO::Container:

Inheritance graph
[legend]
Collaboration diagram for CIAO::Container:

Collaboration graph
[legend]
List of all members.

Public Types

enum  OA_Type { Component, Facet_Consumer }

Public Member Functions

 Container (CORBA::ORB_ptr o)
 Container (CORBA::ORB_ptr o, Container_Impl *container_impl)
virtual ~Container (void)=0
PortableServer::POA_ptr the_POA (void) const
 Get component's POA.
PortableServer::POA_ptr the_facet_cons_POA (void) const
CORBA::ORB_ptr the_ORB (void) const
 Get a reference to the underlying ORB.
void set_receptacle_policy_map (::CIAO::REC_POL_MAP &rec_pol_map)
 Set the policy map for all the receptacles hosted in this container.
CORBA::PolicyList get_receptacle_policy (const char *name)
 get the receptacle policy given the receptacle name
virtual int init (const char *name=0, const CORBA::PolicyList *more_policies=0)=0
 Initialize the container with a name.
virtual Components::CCMHome_ptr ciao_install_home (const char *exe_dll_name, const char *exe_entrypt, const char *sv_dll_name, const char *sv_entrypt, const char *ins_name)=0
 Install a new home.
virtual void ciao_uninstall_home (Components::CCMHome_ptr homeref)=0
virtual void uninstall_component (::Components::CCMObject_ptr objref, PortableServer::ObjectId_out oid)=0
virtual void add_servant_to_map (PortableServer::ObjectId &oid, Dynamic_Component_Servant_Base *servant)=0
virtual void delete_servant_from_map (PortableServer::ObjectId &oid)=0
virtual CORBA::Object_ptr get_home_objref (PortableServer::Servant p)=0

Protected Attributes

CORBA::ORB_var orb_
 Reference to the ORB.
PortableServer::POA_var component_poa_
PortableServer::POA_var facet_cons_poa_
PortableServer::POA_var home_servant_poa_
Container_Impl * container_impl_
::CIAO::REC_POL_MAP rec_pol_map_

Private Member Functions

 Container (void)
 Not allowed to be used.

Detailed Description

Common container interface definition.

Perhaps we can use local interface to define these interfaces as we will also get reference counting automatically.


Member Enumeration Documentation

enum CIAO::Container::OA_Type

Enumerator:
Component 
Facet_Consumer 


Constructor & Destructor Documentation

CIAO::Container::Container ( CORBA::ORB_ptr  o  ) 

CIAO::Container::Container ( CORBA::ORB_ptr  o,
Container_Impl *  container_impl 
)

CIAO::Container::~Container ( void   )  [pure virtual]

CIAO::Container::Container ( void   )  [private]

Not allowed to be used.


Member Function Documentation

PortableServer::POA_ptr CIAO::Container::the_POA ( void   )  const

Get component's POA.

This operation does *NOT* increase the reference count of the POA. Look at the const qualifier in the method.

PortableServer::POA_ptr CIAO::Container::the_facet_cons_POA ( void   )  const

CORBA::ORB_ptr CIAO::Container::the_ORB ( void   )  const

Get a reference to the underlying ORB.

void CIAO::Container::set_receptacle_policy_map ( ::CIAO::REC_POL_MAP rec_pol_map  ) 

Set the policy map for all the receptacles hosted in this container.

CORBA::PolicyList CIAO::Container::get_receptacle_policy ( const char *  name  ) 

get the receptacle policy given the receptacle name

virtual int CIAO::Container::init ( const char *  name = 0,
const CORBA::PolicyList *  more_policies = 0 
) [pure virtual]

Initialize the container with a name.

Implemented in CIAO::Session_Container, and CIAO::Swapping_Container.

virtual Components::CCMHome_ptr CIAO::Container::ciao_install_home ( const char *  exe_dll_name,
const char *  exe_entrypt,
const char *  sv_dll_name,
const char *  sv_entrypt,
const char *  ins_name 
) [pure virtual]

Install a new home.

Implemented in CIAO::Session_Container.

virtual void CIAO::Container::ciao_uninstall_home ( Components::CCMHome_ptr  homeref  )  [pure virtual]

Implemented in CIAO::Session_Container, and CIAO::Swapping_Container.

virtual void CIAO::Container::uninstall_component ( ::Components::CCMObject_ptr  objref,
PortableServer::ObjectId_out  oid 
) [pure virtual]

Implemented in CIAO::Session_Container.

virtual void CIAO::Container::add_servant_to_map ( PortableServer::ObjectId oid,
Dynamic_Component_Servant_Base servant 
) [pure virtual]

Implemented in CIAO::Session_Container, and CIAO::Swapping_Container.

virtual void CIAO::Container::delete_servant_from_map ( PortableServer::ObjectId oid  )  [pure virtual]

Implemented in CIAO::Session_Container, and CIAO::Swapping_Container.

virtual CORBA::Object_ptr CIAO::Container::get_home_objref ( PortableServer::Servant  p  )  [pure virtual]

Implemented in CIAO::Session_Container, and CIAO::Swapping_Container.


Member Data Documentation

CORBA::ORB_var CIAO::Container::orb_ [protected]

Reference to the ORB.

PortableServer::POA_var CIAO::Container::component_poa_ [protected]

POA within which all the components in this container will be activated.

PortableServer::POA_var CIAO::Container::facet_cons_poa_ [protected]

Having two POA's allows us to associate different policies that are distinct from the component.

PortableServer::POA_var CIAO::Container::home_servant_poa_ [protected]

Container_Impl* CIAO::Container::container_impl_ [protected]

::CIAO::REC_POL_MAP CIAO::Container::rec_pol_map_ [protected]


The documentation for this class was generated from the following files:
Generated on Mon Jun 25 17:15:00 2007 for CIAO by  doxygen 1.5.2-2