Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# TAO::PG_Group_Factory Class Reference

`#include <PG_Group_Factory.h>`

Collaboration diagram for TAO::PG_Group_Factory:

[legend]
List of all members.

## Public Methods

| PG_Group_Factory ()
| Constructor.
| ~PG_Group_Factory ()
| Destructor.
void | init (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa, PortableGroup::FactoryRegistry_ptr factory_registry ACE_ENV_ARG_DECL)
TAO::PG_Object_Group * | create_group (const char *type_id, const PortableGroup::Criteria &the_criteria, TAO::PG_Property_Set *typeid_properties ACE_ENV_ARG_DECL) throw (CORBA::SystemException, PortableGroup::NoFactory, PortableGroup::ObjectNotCreated, PortableGroup::InvalidCriteria, PortableGroup::InvalidProperty, PortableGroup::CannotMeetCriteria)
void | delete_group (PortableGroup::ObjectGroup_ptr object_group ACE_ENV_ARG_DECL) throw (CORBA::SystemException, PortableGroup::ObjectNotFound)
void | delete_group (PortableGroup::ObjectGroupId group_id ACE_ENV_ARG_DECL) throw (CORBA::SystemException, PortableGroup::ObjectNotFound)
PortableGroup::ObjectGroups * | groups_at_location (const PortableGroup::Location &the_location ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
int | insert_group (::TAO::PG_Object_Group *group)
int | insert_group (PortableGroup::ObjectGroupId group_id,::TAO::PG_Object_Group *group)
int | find_group (PortableGroup::ObjectGroupId group_id,::TAO::PG_Object_Group *&group) const
int | find_group (PortableGroup::ObjectGroup_ptr object_group,::TAO::PG_Object_Group *&group) const
int | destroy_group (PortableGroup::ObjectGroupId object_group_id)
int | destroy_group (PortableGroup::ObjectGroup_ptr object_group)

## Private Types

typedef ACE_Hash_Map_Manager_Ex< PortableGroup::ObjectGroupId, ::TAO::PG_Object_Group *, ACE_Hash< ACE_UINT64 >, ACE_Equal_To< ACE_UINT64 >, TAO_SYNCH_MUTEX > | Group_Map
typedef ACE_Hash_Map_Entry< PortableGroup::ObjectGroupId, ::TAO::PG_Object_Group * > | Group_Map_Entry
typedef ACE_Hash_Map_Iterator_Ex< PortableGroup::ObjectGroupId, ::TAO::PG_Object_Group *, ACE_Hash< ACE_UINT64 >, ACE_Equal_To< ACE_UINT64 >, TAO_SYNCH_MUTEX > | Group_Map_Iterator

## Private Attributes

CORBA::ORB_var | orb_
PortableServer::POA_var | poa_
| Reference to the POA used to create object group references.
PortableGroup::FactoryRegistry_var | factory_registry_
| The factory registry for replica factories.
::TAO::PG_Object_Group_Manipulator | manipulator_
const char * | domain_id_
Group_Map | group_map_

## Detailed Description

class PG_Group_Factory

## Member Typedef Documentation

typedef ACE_Hash_Map_Manager_Ex< PortableGroup::ObjectGroupId, ::TAO::PG_Object_Group *, ACE_Hash<ACE_UINT64>, ACE_Equal_To<ACE_UINT64>, TAO_SYNCH_MUTEX> TAO::PG_Group_Factory::Group_Map`[private]`

typedef ACE_Hash_Map_Entry<PortableGroup::ObjectGroupId, ::TAO::PG_Object_Group *> TAO::PG_Group_Factory::Group_Map_Entry`[private]`

typedef ACE_Hash_Map_Iterator_Ex< PortableGroup::ObjectGroupId, ::TAO::PG_Object_Group *, ACE_Hash<ACE_UINT64>, ACE_Equal_To<ACE_UINT64>, TAO_SYNCH_MUTEX> TAO::PG_Group_Factory::Group_Map_Iterator`[private]`

## Constructor & Destructor Documentation

TAO::PG_Group_Factory::PG_Group_Factory | ( |  | ) |

| Constructor.

TAO::PG_Group_Factory::~PG_Group_Factory | ( |  | ) |

| Destructor.

## Member Function Documentation

TAO::PG_Object_Group * TAO::PG_Group_Factory::create_group | ( | const char * | type_id,
|  | const PortableGroup::Criteria & | the_criteria,
|  | TAO::PG_Property_Set *typeid_properties | ACE_ENV_ARG_DECL
| ) | throw (CORBA::SystemException, PortableGroup::NoFactory, PortableGroup::ObjectNotCreated, PortableGroup::InvalidCriteria, PortableGroup::InvalidProperty, PortableGroup::CannotMeetCriteria)

void TAO::PG_Group_Factory::delete_group | ( | PortableGroup::ObjectGroupId group_id | ACE_ENV_ARG_DECL | ) | throw (CORBA::SystemException, PortableGroup::ObjectNotFound)

void TAO::PG_Group_Factory::delete_group | ( | PortableGroup::ObjectGroup_ptr object_group | ACE_ENV_ARG_DECL | ) | throw (CORBA::SystemException, PortableGroup::ObjectNotFound)

int TAO::PG_Group_Factory::destroy_group | ( | PortableGroup::ObjectGroup_ptr | object_group | ) |

remove group from map and delete it. note: uses group id extracted from object_group

Returns:
  bool true if found

int TAO::PG_Group_Factory::destroy_group | ( | PortableGroup::ObjectGroupId | object_group_id | ) |

remove group from map and delete it.

Returns:
  bool true if found

int TAO::PG_Group_Factory::find_group | ( | PortableGroup::ObjectGroup_ptr | object_group,
|  | ::TAO::PG_Object_Group *& | group
| ) | const

find group note: uses group id extracted from object_group

Returns:
  bool true if found

int TAO::PG_Group_Factory::find_group | ( | PortableGroup::ObjectGroupId | group_id,
|  | ::TAO::PG_Object_Group *& | group
| ) | const

find group

Returns:
  bool true if found

PortableGroup::ObjectGroups * TAO::PG_Group_Factory::groups_at_location | ( | const PortableGroup::Location &the_location | ACE_ENV_ARG_DECL | ) | throw (CORBA::SystemException)

void TAO::PG_Group_Factory::init | ( | CORBA::ORB_ptr | orb,
|  | PortableServer::POA_ptr | poa,
|  | PortableGroup::FactoryRegistry_ptr factory_registry | ACE_ENV_ARG_DECL
| ) |

int TAO::PG_Group_Factory::insert_group | ( | PortableGroup::ObjectGroupId | group_id,
|  | ::TAO::PG_Object_Group * | group
| ) |

insert group. Take ownership

Returns:
  bool true if insertion successful

int TAO::PG_Group_Factory::insert_group | ( | ::TAO::PG_Object_Group * | group | ) |

insert existing group. Take ownership note: uses group id extracted from group object

Returns:
  bool true if insertion successful

## Member Data Documentation

const char* TAO::PG_Group_Factory::domain_id_`[private]`

PortableGroup::FactoryRegistry_var TAO::PG_Group_Factory::factory_registry_`[private]`

| The factory registry for replica factories.

Group_Map TAO::PG_Group_Factory::group_map_`[private]`

::TAO::PG_Object_Group_Manipulator TAO::PG_Group_Factory::manipulator_`[private]`

CORBA::ORB_var TAO::PG_Group_Factory::orb_`[private]`

PortableServer::POA_var TAO::PG_Group_Factory::poa_`[private]`

| Reference to the POA used to create object group references.

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

- PG_Group_Factory.h
- PG_Group_Factory.cpp