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

Server_Repository Class Reference

Repository of Server_Infos. More...

#include <Server_Repository.h>

Collaboration diagram for Server_Repository:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ACE_Hash_Map_Manager_Ex<
ACE_CString, Server_Info *,
ACE_Hash< ACE_CString >,
ACE_Equal_To< ACE_CString >,
ACE_Null_Mutex
HASH_IMR_MAP

Public Methods

int init (void)
 Initializes the Server Repository.

int add (const ACE_CString &POA_name, const ACE_CString &logical_server_name, const ACE_CString &startup_command, const ImplementationRepository::EnvironmentList &environment_vars, const ACE_CString &working_dir, const ImplementationRepository::ActivationMode &activation)
 Add a new server to the Repository.

int update (const ACE_CString &POA_name, const ACE_CString &location, const ACE_CString &server_object_ior)
 Update the associated process information.

int get_startup_info (const ACE_CString &POA_name, ACE_CString &logical_server_name, ACE_CString &startup_command, ImplementationRepository::EnvironmentList &environment_vars, ACE_CString &working_dir, ImplementationRepository::ActivationMode &activation)
 Returns information related to startup.

int get_running_info (const ACE_CString &POA_name, ACE_CString &location, ACE_CString &server_object_ior)
 Returns information related to a running copy.

int starting_up (const ACE_CString &POA_name, int new_value)
int starting_up (const ACE_CString &POA_name)
 Same as above but does not alter the value.

int remove (const ACE_CString &POA_name)
 Removes the server from the Repository.

int write_to_xml (const ACE_CString &POA_name, const ACE_CString &logical_server_name, const ACE_CString &startup_command, const ImplementationRepository::EnvironmentList &environment_vars, const ACE_CString &working_dir, const ImplementationRepository::ActivationMode &activation)
 Write into the xml file.

HASH_IMR_MAP::ITERATORnew_iterator (void)
 Returns a new iterator that travels over the repository.

size_t get_repository_size (void)
 Returns the number of entries in the repository.


Private Attributes

HASH_IMR_MAP repository_
ACE_Configuration_Section_Key servers_
XML_ContentHandlerhandler_

Detailed Description

Repository of Server_Infos.

Handles the storage, updating, and startup of servers.


Member Typedef Documentation

typedef ACE_Hash_Map_Manager_Ex<ACE_CString, Server_Info *, ACE_Hash<ACE_CString>, ACE_Equal_To<ACE_CString>, ACE_Null_Mutex> Server_Repository::HASH_IMR_MAP
 


Member Function Documentation

int Server_Repository::add const ACE_CString   POA_name,
const ACE_CString   logical_server_name,
const ACE_CString   startup_command,
const ImplementationRepository::EnvironmentList   environment_vars,
const ACE_CString   working_dir,
const ImplementationRepository::ActivationMode   activation
 

Add a new server to the Repository.

@ Not quite sure what I want to do here .. leave for now. I guess similar stuff like check if that particular server info exists etc.

size_t Server_Repository::get_repository_size void   
 

Returns the number of entries in the repository.

int Server_Repository::get_running_info const ACE_CString   POA_name,
ACE_CString   location,
ACE_CString   server_object_ior
 

Returns information related to a running copy.

int Server_Repository::get_startup_info const ACE_CString   POA_name,
ACE_CString   logical_server_name,
ACE_CString   startup_command,
ImplementationRepository::EnvironmentList   environment_vars,
ACE_CString   working_dir,
ImplementationRepository::ActivationMode   activation
 

Returns information related to startup.

found an entry. So, need to update the entry information.

int Server_Repository::init void   
 

Initializes the Server Repository.

Server_Repository::HASH_IMR_MAP::ITERATOR * Server_Repository::new_iterator void   
 

Returns a new iterator that travels over the repository.

int Server_Repository::remove const ACE_CString   POA_name
 

Removes the server from the Repository.

If control comes here.. implies, there is no entry for the POA_name.

int Server_Repository::starting_up const ACE_CString   POA_name
 

Same as above but does not alter the value.

If control comes here.. implies, there is no entry for the POA_name.

int Server_Repository::starting_up const ACE_CString   POA_name,
int    new_value
 

Checks the starting_up_ variable in the Server_Info and returns the previous value or -1 if the POA_name wasn't found

int Server_Repository::update const ACE_CString   POA_name,
const ACE_CString   location,
const ACE_CString   server_object_ior
 

Update the associated process information.

An entry found for the POA_name. So, dont add it again.

int Server_Repository::write_to_xml const ACE_CString   POA_name,
const ACE_CString   logical_server_name,
const ACE_CString   startup_command,
const ImplementationRepository::EnvironmentList   environment_vars,
const ACE_CString   working_dir,
const ImplementationRepository::ActivationMode   activation
 

Write into the xml file.


Member Data Documentation

XML_ContentHandler* Server_Repository::handler_ [private]
 

HASH_IMR_MAP Server_Repository::repository_ [private]
 

ACE_Configuration_Section_Key Server_Repository::servers_ [private]
 


The documentation for this class was generated from the following files:
Generated on Fri Apr 2 18:50:33 2004 for TAO_Implementation_Repository by doxygen1.2.18