Server_Info Struct Reference

Information about IMR registered servers. More...

#include <Server_Info.h>

Collaboration diagram for Server_Info:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Server_Info (const ACE_CString &server_name, const ACE_CString &aname, const ACE_CString &cmdline, const ImplementationRepository::EnvironmentList &env, const ACE_CString &working_dir, ImplementationRepository::ActivationMode amode, int start_limit, const ACE_CString &partial_ior=ACE_CString(""), const ACE_CString &server_ior=ACE_CString(""), ImplementationRepository::ServerObject_ptr svrobj=ImplementationRepository::ServerObject::_nil())
ImplementationRepository::ServerInformation * createImRServerInfo (ACE_ENV_SINGLE_ARG_DECL)
 Convert to the corba type.

void reset ()

Public Attributes

ACE_CString name
 The name of the server.

ACE_CString activator
 The name of the activator in which this server runs.

ACE_CString cmdline
 The command line startup command (program and arguments).

ImplementationRepository::EnvironmentList env_vars
 Environment Variables.

ACE_CString dir
 The working directory.

ImplementationRepository::ActivationMode activation_mode
 The type of activation this supports.

int start_limit
 Limit of retries to start the server.

ACE_CString partial_ior
 Current endpoint used by the server.

ACE_CString ior
 IOR of the server object in the server.

ACE_Time_Value last_ping
 The timestamp of the last time we verified the server is alive.

ImplementationRepository::ServerObject_var server
 The cached server object.

int start_count
int waiting_clients
bool starting

Detailed Description

Information about IMR registered servers.

Definition at line 29 of file Server_Info.h.


Constructor & Destructor Documentation

Server_Info::Server_Info const ACE_CString server_name,
const ACE_CString aname,
const ACE_CString cmdline,
const ImplementationRepository::EnvironmentList &  env,
const ACE_CString working_dir,
ImplementationRepository::ActivationMode  amode,
int  start_limit,
const ACE_CString partial_ior = ACE_CString(""),
const ACE_CString server_ior = ACE_CString(""),
ImplementationRepository::ServerObject_ptr  svrobj = ImplementationRepository::ServerObject::_nil()
 

Definition at line 5 of file Server_Info.cpp.

References ACE_CString.

00017  : name (server_name)
00018  , activator (aname)
00019  , cmdline( cmdline)
00020  , env_vars (env)
00021  , dir (working_dir)
00022  , activation_mode (amode)
00023  , start_limit (limit)
00024  , partial_ior (partial_ior)
00025  , ior (server_ior)
00026  , server(ImplementationRepository::ServerObject::_duplicate (svrobj))
00027  , start_count (0)
00028  , waiting_clients (0)
00029  , starting (false)
00030 {
00031 }


Member Function Documentation

ImplementationRepository::ServerInformation * Server_Info::createImRServerInfo ACE_ENV_SINGLE_ARG_DECL   ) 
 

Convert to the corba type.

Definition at line 34 of file Server_Info.cpp.

References ACE_NEW_THROW_EX, activation_mode, dir, env_vars, start_count, and start_limit.

00035 {
00036   ImplementationRepository::ServerInformation* info;
00037   ACE_NEW_THROW_EX (info, ImplementationRepository::ServerInformation, CORBA::NO_MEMORY ());
00038 
00039   info->server = name.c_str ();
00040   info->startup.command_line = cmdline.c_str ();
00041   info->startup.environment = env_vars;
00042   info->startup.working_directory = dir.c_str ();
00043   info->startup.activation = activation_mode;
00044   info->startup.activator = activator.c_str ();
00045   if (start_count >= start_limit)
00046     {
00047       info->startup.start_limit = -start_limit;
00048     }
00049   else
00050     {
00051       info->startup.start_limit = start_limit;
00052     }
00053   info->partial_ior = partial_ior.c_str();
00054 
00055   return info;
00056 }

void Server_Info::reset  ) 
 

Definition at line 59 of file Server_Info.cpp.

References last_ping, and server.

Referenced by ImR_Locator_i::connect_server().

00060 {
00061   ior = "";
00062   partial_ior = "";
00063   last_ping = ACE_Time_Value::zero;
00064   server = ImplementationRepository::ServerObject::_nil ();
00065   // start_count = 0; Note : We can't do this, because it would be reset during startup.
00066 }


Member Data Documentation

ImplementationRepository::ActivationMode Server_Info::activation_mode
 

The type of activation this supports.

Definition at line 59 of file Server_Info.h.

Referenced by createImRServerInfo(), and Locator_Repository::update_server().

ACE_CString Server_Info::activator
 

The name of the activator in which this server runs.

Definition at line 51 of file Server_Info.h.

Referenced by ImR_Locator_i::is_alive_i(), and Locator_Repository::update_server().

ACE_CString Server_Info::cmdline
 

The command line startup command (program and arguments).

Definition at line 53 of file Server_Info.h.

Referenced by ImR_Locator_i::is_alive_i(), and Locator_Repository::update_server().

ACE_CString Server_Info::dir
 

The working directory.

Definition at line 57 of file Server_Info.h.

Referenced by createImRServerInfo(), and Locator_Repository::update_server().

ImplementationRepository::EnvironmentList Server_Info::env_vars
 

Environment Variables.

Definition at line 55 of file Server_Info.h.

Referenced by createImRServerInfo(), and Locator_Repository::update_server().

ACE_CString Server_Info::ior
 

IOR of the server object in the server.

Definition at line 65 of file Server_Info.h.

Referenced by ImR_Locator_i::connect_server(), ImR_Locator_i::is_alive_i(), and Locator_Repository::update_server().

ACE_Time_Value Server_Info::last_ping
 

The timestamp of the last time we verified the server is alive.

Definition at line 67 of file Server_Info.h.

Referenced by ImR_Locator_i::is_alive(), ImR_Locator_i::is_alive_i(), and reset().

ACE_CString Server_Info::name
 

The name of the server.

Definition at line 49 of file Server_Info.h.

Referenced by ImR_Locator_i::connect_server(), ImR_Locator_i::is_alive(), ImR_Locator_i::is_alive_i(), and Locator_Repository::update_server().

ACE_CString Server_Info::partial_ior
 

Current endpoint used by the server.

Definition at line 63 of file Server_Info.h.

Referenced by ImR_Locator_i::is_alive_i(), and Locator_Repository::update_server().

ImplementationRepository::ServerObject_var Server_Info::server
 

The cached server object.

Definition at line 69 of file Server_Info.h.

Referenced by ImR_Locator_i::connect_server(), ImR_Locator_i::is_alive_i(), and reset().

int Server_Info::start_count
 

Definition at line 70 of file Server_Info.h.

Referenced by createImRServerInfo().

int Server_Info::start_limit
 

Limit of retries to start the server.

Definition at line 61 of file Server_Info.h.

Referenced by createImRServerInfo(), and Locator_Repository::update_server().

bool Server_Info::starting
 

Definition at line 72 of file Server_Info.h.

int Server_Info::waiting_clients
 

Definition at line 71 of file Server_Info.h.


The documentation for this struct was generated from the following files:
Generated on Thu Nov 9 13:37:24 2006 for TAO_Implementation_Repository by doxygen 1.3.6