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

# CIAO::Container Class Reference

Common container interface definition. More...

`#include <Container_Base.h>`

Inheritance diagram for CIAO::Container:

[legend]
Collaboration diagram for CIAO::Container:

[legend]
List of all members.

## Public Types
enum | OA_Type { Component, Facet_Consumer }
## Public Member Functions
| Container (void)
| 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.
virtual int | init (const char *name=0, const CORBA::PolicyList *more_policies=0 ACE_ENV_ARG_DECL_WITH_DEFAULTS)=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 ACE_ENV_ARG_DECL_WITH_DEFAULTS)=0 throw (CORBA::SystemException, Deployment::UnknownImplId, Deployment::ImplEntryPointNotFound, Deployment::InstallationFailure)
| Install a new home.
virtual void | ciao_uninstall_home (Components::CCMHome_ptr homeref ACE_ENV_ARG_DECL_WITH_DEFAULTS)=0 throw (CORBA::SystemException)
virtual void | uninstall_component (::Components::CCMObject_ptr objref, PortableServer::ObjectId_out oid ACE_ENV_ARG_DECL_WITH_DEFAULTS)=0 throw (CORBA::SystemException)
virtual void | add_servant_map (PortableServer::ObjectId &oid, Dynamic_Component_Servant_Base *servant ACE_ENV_ARG_DECL)=0
virtual void | delete_servant_map (PortableServer::ObjectId &oid ACE_ENV_ARG_DECL)=0
virtual CORBA::Object_ptr | get_home_objref (PortableServer::Servant p ACE_ENV_ARG_DECL_WITH_DEFAULTS)=0 throw (CORBA::SystemException)
PortableServer::POA | the_POA ()
## Protected Attributes
CORBA::ORB_var | orb_
PortableServer::POA_var | component_poa_
PortableServer::POA_var | facet_cons_poa_
PortableServer::POA_var | home_servant_poa_
Container_Impl * | container_impl_

## 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

  | Enumeration values:
  Component |
  Facet_Consumer |

## Constructor & Destructor Documentation

CIAO::Container::Container | ( | void |  | ) | `[explicit]`

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

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

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

## Member Function Documentation

virtual void CIAO::Container::add_servant_map | ( | PortableServer::ObjectId & | oid,
|  | Dynamic_Component_Servant_Base *servant | ACE_ENV_ARG_DECL
| ) | `[pure virtual]`

| Implemented in CIAO::Session_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 | ACE_ENV_ARG_DECL_WITH_DEFAULTS
| ) | throw (CORBA::SystemException, Deployment::UnknownImplId, Deployment::ImplEntryPointNotFound, Deployment::InstallationFailure)`[pure virtual]`

| Install a new home. Implemented in CIAO::Session_Container.

virtual void CIAO::Container::ciao_uninstall_home | ( | Components::CCMHome_ptr homeref | ACE_ENV_ARG_DECL_WITH_DEFAULTS | ) | throw (CORBA::SystemException)`[pure virtual]`

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

virtual void CIAO::Container::delete_servant_map | ( | PortableServer::ObjectId &oid | ACE_ENV_ARG_DECL | ) | `[pure virtual]`

| Implemented in CIAO::Session_Container.

virtual CORBA::Object_ptr CIAO::Container::get_home_objref | ( | PortableServer::Servant p | ACE_ENV_ARG_DECL_WITH_DEFAULTS | ) | throw (CORBA::SystemException)`[pure virtual]`

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

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

| Initialize the container with a name. Implemented in CIAO::Session_Container, and CIAO::Swapping_Container.

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.

PortableServer::POA CIAO::Container::the_POA | ( |  | ) |

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.

virtual void CIAO::Container::uninstall_component | ( | ::Components::CCMObject_ptr | objref,
|  | PortableServer::ObjectId_out oid | ACE_ENV_ARG_DECL_WITH_DEFAULTS
| ) | throw (CORBA::SystemException)`[pure virtual]`

| Implemented in CIAO::Session_Container.

## Member Data Documentation

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

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

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

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]`

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

The documentation for this class was generated from the following files:

- Container_Base.h
- Container_Base.pidl
- Container_Base.cpp