Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

CIAO::Session_Container Class Reference

#include <Container_Base.h>

Inheritance diagram for CIAO::Session_Container:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Session_Container (CORBA::ORB_ptr o, Container_Impl *container_impl, bool static_config_flag=false, const Static_Config_EntryPoints_Maps *static_entrypts_maps=0)
virtual ~Session_Container (void)
virtual int init (const char *name=0, const CORBA::PolicyList *more_policies=0) throw (CORBA::SystemException)
 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) throw (CORBA::SystemException, Deployment::UnknownImplId, Deployment::ImplEntryPointNotFound, Deployment::InstallationFailure)
 Simply installing a home executor into the component.
virtual void ciao_uninstall_home (Components::CCMHome_ptr homeref) throw (CORBA::SystemException)
 Uninstall a servant for component or home.
virtual void uninstall_component (::Components::CCMObject_ptr objref, PortableServer::ObjectId_out oid) throw (CORBA::SystemException)
 Uninstall a servant for component.
virtual CORBA::Object_ptr install_servant (PortableServer::Servant p, Container::OA_Type t) throw (CORBA::SystemException)
 Install a servant for component or home.
CORBA::Object_ptr install_component (PortableServer::Servant p, PortableServer::ObjectId_out oid) throw (CORBA::SystemException)
 Install a component servant.
virtual CORBA::Object_ptr get_objref (PortableServer::Servant p) throw (CORBA::SystemException)
 Get an object reference to a component or home from the servant.
void uninstall (CORBA::Object_ptr objref, Container::OA_Type t) throw (CORBA::SystemException)
 Uninstall a servant for component or home.
void uninstall (PortableServer::Servant svt, Container::OA_Type t) throw (CORBA::SystemException)
 Uninstall a servant for component or home.
virtual void add_servant_map (PortableServer::ObjectId &oid, Dynamic_Component_Servant_Base *servant)
virtual void delete_servant_map (PortableServer::ObjectId &oid)
virtual void deactivate_facet (const PortableServer::ObjectId &oid) throw (CORBA::SystemException)
virtual CORBA::Object_ptr get_home_objref (PortableServer::Servant p) throw (CORBA::SystemException)
CORBA::Object_ptr generate_reference (const char *obj_id, const char *repo_id, Container::OA_Type t)
Servant_Activatorports_servant_activator (void) const

Protected Attributes

unsigned long number_
const bool static_config_flag_
const Static_Config_EntryPoints_Mapsstatic_entrypts_maps_
Servant_Activatorsa_

Static Protected Attributes

ACE_Atomic_Op< ACE_SYNCH_MUTEX,
unsigned long > 
serial_number_

Private Member Functions

void create_component_POA (const char *name, const CORBA::PolicyList *p, PortableServer::POA_ptr root)
 Create POA for the component.
void create_facet_consumer_POA (const char *name, const CORBA::PolicyList *p, PortableServer::POA_ptr root)
 Create POA for the facets and consumers alone.
 Session_Container (void)
 Not allowed to be.

Constructor & Destructor Documentation

CIAO::Session_Container::Session_Container CORBA::ORB_ptr  o,
Container_Impl *  container_impl,
bool  static_config_flag = false,
const Static_Config_EntryPoints_Maps static_entrypts_maps = 0
 

CIAO::Session_Container::~Session_Container void   )  [virtual]
 

CIAO::Session_Container::Session_Container void   )  [private]
 

Not allowed to be.


Member Function Documentation

void CIAO::Session_Container::add_servant_map PortableServer::ObjectId oid,
Dynamic_Component_Servant_Base servant
[virtual]
 

Implements CIAO::Container.

Reimplemented in CIAO::Swapping_Container.

Components::CCMHome_ptr CIAO::Session_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
throw (CORBA::SystemException, Deployment::UnknownImplId, Deployment::ImplEntryPointNotFound, Deployment::InstallationFailure) [virtual]
 

Simply installing a home executor into the component.

This operation install a home executor into the component. It requires the name of the DLLs to executor and the servant glue code, and the entry points to the respective DLLs. Currently, we don't try to manage the lifetime of DLL objects, but we should at some later point.

Return values:
Home objref of the installed home.

Implements CIAO::Container.

void CIAO::Session_Container::ciao_uninstall_home Components::CCMHome_ptr  homeref  )  throw (CORBA::SystemException) [virtual]
 

Uninstall a servant for component or home.

Implements CIAO::Container.

Reimplemented in CIAO::Swapping_Container.

void CIAO::Session_Container::create_component_POA const char *  name,
const CORBA::PolicyList p,
PortableServer::POA_ptr  root
[private]
 

Create POA for the component.

This is the POA that is returned to the component applications if they need one.

void CIAO::Session_Container::create_facet_consumer_POA const char *  name,
const CORBA::PolicyList p,
PortableServer::POA_ptr  root
[private]
 

Create POA for the facets and consumers alone.

void CIAO::Session_Container::deactivate_facet const PortableServer::ObjectId oid  )  throw (CORBA::SystemException) [virtual]
 

Reimplemented in CIAO::Swapping_Container.

void CIAO::Session_Container::delete_servant_map PortableServer::ObjectId oid  )  [virtual]
 

Implements CIAO::Container.

Reimplemented in CIAO::Swapping_Container.

CORBA::Object_ptr CIAO::Session_Container::generate_reference const char *  obj_id,
const char *  repo_id,
Container::OA_Type  t
 

Analog of the POA method that creates an object reference from an object id string.

CORBA::Object_ptr CIAO::Session_Container::get_home_objref PortableServer::Servant  p  )  throw (CORBA::SystemException) [virtual]
 

Implements CIAO::Container.

Reimplemented in CIAO::Swapping_Container.

ACE_INLINE CORBA::Object_ptr CIAO::Session_Container::get_objref PortableServer::Servant  p  )  throw (CORBA::SystemException) [virtual]
 

Get an object reference to a component or home from the servant.

Reimplemented in CIAO::Swapping_Container.

int CIAO::Session_Container::init const char *  name = 0,
const CORBA::PolicyList more_policies = 0
throw (CORBA::SystemException) [virtual]
 

Initialize the container with a name.

Implements CIAO::Container.

Reimplemented in CIAO::Swapping_Container.

CORBA::Object_ptr CIAO::Session_Container::install_component PortableServer::Servant  p,
PortableServer::ObjectId_out  oid
throw (CORBA::SystemException)
 

Install a component servant.

CORBA::Object_ptr CIAO::Session_Container::install_servant PortableServer::Servant  p,
Container::OA_Type  t
throw (CORBA::SystemException) [virtual]
 

Install a servant for component or home.

Reimplemented in CIAO::Swapping_Container.

ACE_INLINE CIAO::Servant_Activator * CIAO::Session_Container::ports_servant_activator void   )  const
 

Return the servant activator factory that activates the servants for facets and consumers.

void CIAO::Session_Container::uninstall PortableServer::Servant  svt,
Container::OA_Type  t
throw (CORBA::SystemException)
 

Uninstall a servant for component or home.

void CIAO::Session_Container::uninstall CORBA::Object_ptr  objref,
Container::OA_Type  t
throw (CORBA::SystemException)
 

Uninstall a servant for component or home.

virtual void CIAO::Session_Container::uninstall_component ::Components::CCMObject_ptr  objref,
PortableServer::ObjectId_out  oid
throw (CORBA::SystemException) [virtual]
 

Uninstall a servant for component.

Implements CIAO::Container.


Member Data Documentation

unsigned long CIAO::Session_Container::number_ [protected]
 

Reimplemented in CIAO::Swapping_Container.

Servant_Activator* CIAO::Session_Container::sa_ [protected]
 

The servant activator factory used to activate facets and consumer servants.

ACE_Atomic_Op< ACE_SYNCH_MUTEX, unsigned long > CIAO::Session_Container::serial_number_ [static, protected]
 

Static variable to store the highest number we have given out until now

Reimplemented in CIAO::Swapping_Container.

const bool CIAO::Session_Container::static_config_flag_ [protected]
 

const Static_Config_EntryPoints_Maps* CIAO::Session_Container::static_entrypts_maps_ [protected]
 


The documentation for this class was generated from the following files:
Generated on Sun Mar 5 16:05:49 2006 for CIAO by  doxygen 1.3.9.1