Public Member Functions | Protected Attributes | Private Member Functions

CIAO::Container_i Class Reference

Common container interface definition. More...

#include <Container_Base.h>

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

List of all members.

Public Member Functions

 Container_i (CORBA::ORB_ptr o, PortableServer::POA_ptr root_poa)
 Container_i (CORBA::ORB_ptr o, PortableServer::POA_ptr root_poa, Deployment::CIAO_Container_i *container_impl)
virtual ~Container_i (void)
virtual void init (const char *name=0, const CORBA::PolicyList *more_policies=0)=0
 Initialize the container with a name.
virtual PortableServer::POA_ptr the_POA (void)
 Get component's POA.
virtual PortableServer::POA_ptr the_port_POA (void)
virtual Components::CCMHome_ptr install_home (const char *primary_artifact, const char *entry_point, const char *servant_artifact, const char *servant_entrypoint, const char *name)=0
 Install a new home.
virtual void uninstall_home (Components::CCMHome_ptr homeref)=0
 Uninstall a servant for component or home.
virtual Components::CCMObject_ptr install_component (const char *primary_artifact, const char *entry_point, const char *servant_artifact, const char *servant_entrypoint, const char *name)=0
virtual void uninstall_component (Components::CCMObject_ptr compref)=0
virtual CORBA::Object_ptr get_objref (PortableServer::Servant p)=0
virtual CORBA::Object_ptr install_servant (PortableServer::Servant objref, Container_Types::OA_Type type, PortableServer::ObjectId_out oid)=0
virtual void uninstall_servant (PortableServer::Servant objref, Container_Types::OA_Type type, PortableServer::ObjectId_out oid)=0
 Uninstall a servant for component.
CORBA::ORB_ptr the_ORB (void) const
 Get a reference to the underlying ORB.

Protected Attributes

CORBA::ORB_var orb_
 Reference to the ORB.
PortableServer::POA_var root_poa_
 POA used as root.
PortableServer::POA_var component_poa_
PortableServer::POA_var facet_cons_poa_
PortableServer::POA_var home_servant_poa_
Deployment::CIAO_Container_i * container_impl_

Private Member Functions

 Container_i (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.


Constructor & Destructor Documentation

CIAO::Container_i::Container_i ( CORBA::ORB_ptr  o,
PortableServer::POA_ptr  root_poa 
)
CIAO::Container_i::Container_i ( CORBA::ORB_ptr  o,
PortableServer::POA_ptr  root_poa,
Deployment::CIAO_Container_i *  container_impl 
)
CIAO::Container_i::~Container_i ( void   )  [virtual]
CIAO::Container_i::Container_i ( void   )  [private]

Not allowed to be used.


Member Function Documentation

virtual CORBA::Object_ptr CIAO::Container_i::get_objref ( PortableServer::Servant  p  )  [pure virtual]

Implemented in CIAO::Session_Container.

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

Initialize the container with a name.

Implemented in CIAO::Session_Container.

virtual Components::CCMObject_ptr CIAO::Container_i::install_component ( const char *  primary_artifact,
const char *  entry_point,
const char *  servant_artifact,
const char *  servant_entrypoint,
const char *  name 
) [pure virtual]

Implemented in CIAO::Session_Container.

virtual Components::CCMHome_ptr CIAO::Container_i::install_home ( const char *  primary_artifact,
const char *  entry_point,
const char *  servant_artifact,
const char *  servant_entrypoint,
const char *  name 
) [pure virtual]

Install a new home.

Implemented in CIAO::Session_Container.

virtual CORBA::Object_ptr CIAO::Container_i::install_servant ( PortableServer::Servant  objref,
Container_Types::OA_Type  type,
PortableServer::ObjectId_out  oid 
) [pure virtual]

Implemented in CIAO::Session_Container.

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

Get a reference to the underlying ORB.

PortableServer::POA_ptr CIAO::Container_i::the_POA ( void   )  [virtual]

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_i::the_port_POA ( void   )  [virtual]
virtual void CIAO::Container_i::uninstall_component ( Components::CCMObject_ptr  compref  )  [pure virtual]

Implemented in CIAO::Session_Container.

virtual void CIAO::Container_i::uninstall_home ( Components::CCMHome_ptr  homeref  )  [pure virtual]

Uninstall a servant for component or home.

Implemented in CIAO::Session_Container.

virtual void CIAO::Container_i::uninstall_servant ( PortableServer::Servant  objref,
Container_Types::OA_Type  type,
PortableServer::ObjectId_out  oid 
) [pure virtual]

Uninstall a servant for component.

Implemented in CIAO::Session_Container.


Member Data Documentation

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

Deployment::CIAO_Container_i* CIAO::Container_i::container_impl_ [protected]

POA within which all the facets and receptacles will be activated. Having two POA's allows us to associate different policies that are distinct from the component.

Reference to the ORB.

POA used as root.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines