Main Page | Class Hierarchy | Class List | File List | Class Members | File Members | Related Pages

ServantFactory_Locator Class Reference

#include <ServantFactory_Locator.h>

Inheritance diagram for ServantFactory_Locator:

ServantFactory List of all members.

Detailed Description

Foundation for a POA with a ServantLocator.

Contains the semantics required for building a POA that uses a ServantLocator. Subclass this class to use a ServantLocator.


Public Member Functions

 ServantFactory_Locator (std::string the_name)
 ServantFactory_Locator (std::string the_name, bool isSingleThreaded, bool useSystemId)
 ServantFactory_Locator (const char *the_name)
 ServantFactory_Locator (const char *the_name, bool isSingleThreaded, bool useSystemId)
virtual void build (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa) throw (ServantFactory::ServantBuildException)
PortableServer::POA_ptr local_poa_nc ()
virtual const std::string poa_name_string () const
virtual const char * poa_name () const
void setNsServantIdMap (ConfMap &_n)

Protected Member Functions

virtual void build_locator (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa)=0 throw (ServantFactory::ServantBuildException)
void local_poa (PortableServer::POA_ptr poa)
const PortableServer::POA_ptr parent_poa_nc ()
void parent_poa (PortableServer::POA_ptr poa)
const CORBA::ORB_ptr local_orb_nc ()
void local_orb (CORBA::ORB_ptr orb)

Protected Attributes

ConfMap nsServantIdMap


Constructor & Destructor Documentation

ServantFactory_Locator::ServantFactory_Locator std::string  the_name  ) 
 

ctor

Parameters:
the_name of this POA

ServantFactory_Locator::ServantFactory_Locator std::string  the_name,
bool  isSingleThreaded,
bool  useSystemId
 

ctor

Parameters:
the_name of this POA
the_name to use as the POA name
isSingleThreaded if TRUE, this POA will be single threaded. Default is ORB_CTRL_MODEL
useSystemId if TRUE, this POA will have an IdAssignment Policy of SYSTEM_ID. Default is USER_ID.

ServantFactory_Locator::ServantFactory_Locator const char *  the_name  ) 
 

ctor

Parameters:
the_name of this POA as a const char*
Note:
IdAssignment defaults to USER_ID

ThreadPolicy defaults to ORB_CTRL_MODEL

ServantFactory_Locator::ServantFactory_Locator const char *  the_name,
bool  isSingleThreaded,
bool  useSystemId
 

ctor

Parameters:
the_name of this POA as const char*
the_name to use as the POA name
isSingleThreaded if TRUE, this POA will be single threaded. Default is ORB_CTRL_MODEL
useSystemId if TRUE, this POA will have an IdAssignment Policy of SYSTEM_ID. Default is USER_ID.


Member Function Documentation

virtual void ServantFactory_Locator::build CORBA::ORB_ptr  orb,
PortableServer::POA_ptr  poa
throw (ServantFactory::ServantBuildException) [virtual]
 

Initiate the build process

Called by OrbInit to initialize this factory's resources.

Parameters:
orb - This factory's ORB
poa - This factory's POA
Exceptions:
ServantFactory::ServantBuildException 
Precondition:
The approprate ORB and parent POA have been initialized
Postcondition:
The POA local to this Factory and the ServantLocator have been properly instantiated and registered.

Implements ServantFactory.

virtual void ServantFactory_Locator::build_locator CORBA::ORB_ptr  orb,
PortableServer::POA_ptr  poa
throw (ServantFactory::ServantBuildException) [protected, pure virtual]
 

Responsible for instantiating the Locator

Called from ::build, this operation is the responsbility of the subclass and is used to instance the ServantLocator.

Note:
A ServantFactory_Locator subclass must implement this operation
Parameters:
orb This Factory's ORB
poa This Factory's POA
Exceptions:
ServantFactory::BuildException 
Precondition:
The local POA has been appropriately instanced and configured
Postcondition:
The Locator has been instanced and registered

void ServantFactory::local_orb CORBA::ORB_ptr  orb  )  [protected, inherited]
 

Set this Factory's orb

Parameters:
orb - This Factory's reference to the system ORB
Postcondition:
_orb = _duplicate(orb)

const CORBA::ORB_ptr ServantFactory::local_orb_nc  )  [protected, inherited]
 

Access the factory's ORB

Operation does not return a copy; the caller should not deallocate

Returns:
_orb as ORB_ptr (DO NOT DEALLOCATE)

void ServantFactory::local_poa PortableServer::POA_ptr  poa  )  [protected, inherited]
 

Set the local POA instance

Parameters:
poa as POA_ptr
Postcondition:
_poa = _duplicate(poa)

PortableServer::POA_ptr ServantFactory::local_poa_nc  )  [inherited]
 

Obtain a reference to the POA local to this factory.

Non-copying version; caller should NOT deallocate

Returns:
local_poa as POA_ptr (DO NOT DEALLOCATE)

void ServantFactory::parent_poa PortableServer::POA_ptr  poa  )  [protected, inherited]
 

Set this Factory's parent POA

Parameters:
poa -- A _ptr to this Factory's parent POA

const PortableServer::POA_ptr ServantFactory::parent_poa_nc  )  [protected, inherited]
 

Access the POA that is the parent of the local POA

Operation does not return a copy; the caller should not deallocate

Returns:
parent_poa as POA_ptr (DO NOT DEALLOCATE)

virtual const char* ServantFactory::poa_name  )  const [inline, virtual, inherited]
 

Obtain the name of the local POA

Returns the name of the POA local to this factory

Returns:
name as const char*
Note:
The caller is responsible for the memory

virtual const std::string ServantFactory::poa_name_string  )  const [inline, virtual, inherited]
 

Obtain the name of the local POA

Returns the name of the POA local to this factory

Returns:
name as std::string

void ServantFactory::setNsServantIdMap ConfMap _n  )  [inherited]
 

Set the configuration map

Parameters:
_n - The configuration map


Member Data Documentation

ConfMap ServantFactory::nsServantIdMap [protected, inherited]
 

Author:
gg
Date:
March, 04
The nsServantIdMap is used to store command line variables and values in an association array. All command line arguments prefixed with -BP will be put into the map.


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