TAO_Implementation_Repository  2.1.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ImR_Locator_i Class Reference

#include <ImR_Locator_i.h>

Inheritance diagram for ImR_Locator_i:
Inheritance graph
Collaboration diagram for ImR_Locator_i:
Collaboration graph

Public Member Functions

 ImR_Locator_i ()
 
 ~ImR_Locator_i (void)
 
int init (Options &opts)
 Initialize the service, creating its own orb, poa, etc.
 
int init_with_orb (CORBA::ORB_ptr orb, Options &opts)
 Same as above, but use the given orb.
 
int fini (void)
 Cleans up any state created by init*.
 
int run (void)
 Run using the orb reference created during init()
 
void shutdown (bool wait_for_completion)
 Shutdown the orb.
 
int debug () const
 
virtual CORBA::Long register_activator (const char *name, ImplementationRepository::Activator_ptr admin)
 
virtual void unregister_activator (const char *name, CORBA::Long token)
 
virtual void notify_child_death (const char *name)
 
virtual void activate_server (const char *name)
 
virtual void add_or_update_server (const char *name, const ImplementationRepository::StartupOptions &options)
 
virtual void remove_server (const char *name)
 
virtual void shutdown_server (const char *name)
 
virtual void find (const char *name, ImplementationRepository::ServerInformation_out info)
 
virtual void list (CORBA::ULong how_many, ImplementationRepository::ServerInformationList_out server_list, ImplementationRepository::ServerInformationIterator_out server_iterator)
 
virtual void shutdown (CORBA::Boolean activators, CORBA::Boolean servers)
 
virtual void server_is_running (const char *name, const char *partial_ior, ImplementationRepository::ServerObject_ptr server_object)
 
virtual void server_is_shutting_down (const char *name)
 
char * activate_server_by_object (const char *object_name)
 
char * activate_server_by_name (const char *name, bool manual_start)
 

Private Member Functions

char * activate_server_i (Server_Info &info, bool manual_start)
 
char * activate_perclient_server_i (Server_Info info, bool manual_start)
 
ImplementationRepository::StartupInfo * start_server (Server_Info &info, bool manual_start, int &waiting_clients)
 
bool is_alive (Server_Info &info)
 
int is_alive_i (Server_Info &info)
 
int setup_multicast (ACE_Reactor *reactor, const char *ior)
 
void teardown_multicast ()
 
void unregister_activator_i (const char *activator)
 
Activator_Info_Ptr get_activator (const ACE_CString &name)
 
void connect_activator (Activator_Info &info)
 
void auto_start_servers (void)
 
CORBA::Object_ptr set_timeout_policy (CORBA::Object_ptr obj, const ACE_Time_Value &to)
 
void connect_server (Server_Info &info)
 
PortableServer::POA_ptr findPOA (const char *name)
 

Private Attributes

ImR_Forwarder forwarder_
 
ImR_Adapter adapter_
 
IORTable::Locator_var ins_locator_
 The locator interface for the IORTable.
 
CORBA::ORB_var orb_
 
PortableServer::POA_var root_poa_
 
PortableServer::POA_var imr_poa_
 
int debug_
 
TAO_IOR_Multicast ior_multicast_
 
Locator_Repository repository_
 
AsyncStartupWaiter_i waiter_svt_
 
ImplementationRepository::AsyncStartupWaiter_var waiter_
 
bool read_only_
 
ACE_Time_Value startup_timeout_
 
ACE_Time_Value ping_interval_
 
bool unregister_if_address_reused_
 

Detailed Description

Gets a request from a client and depending on the POA name, requests an activator to take care of activating the corresponding server and raises a forward exception to the client pointing to the correct server.

Constructor & Destructor Documentation

ImR_Locator_i::ImR_Locator_i ( void  )
ImR_Locator_i::~ImR_Locator_i ( void  )

Member Function Documentation

char * ImR_Locator_i::activate_perclient_server_i ( Server_Info  info,
bool  manual_start 
)
private
void ImR_Locator_i::activate_server ( const char *  name)
virtual
char * ImR_Locator_i::activate_server_by_name ( const char *  name,
bool  manual_start 
)
char * ImR_Locator_i::activate_server_by_object ( const char *  object_name)
char * ImR_Locator_i::activate_server_i ( Server_Info info,
bool  manual_start 
)
private
void ImR_Locator_i::add_or_update_server ( const char *  name,
const ImplementationRepository::StartupOptions &  options 
)
virtual
void ImR_Locator_i::auto_start_servers ( void  )
private
void ImR_Locator_i::connect_activator ( Activator_Info info)
private
void ImR_Locator_i::connect_server ( Server_Info info)
private
int ImR_Locator_i::debug ( ) const
void ImR_Locator_i::find ( const char *  name,
ImplementationRepository::ServerInformation_out  info 
)
virtual
PortableServer::POA_ptr ImR_Locator_i::findPOA ( const char *  name)
private
int ImR_Locator_i::fini ( void  )

Cleans up any state created by init*.

Activator_Info_Ptr ImR_Locator_i::get_activator ( const ACE_CString name)
private
int ImR_Locator_i::init ( Options opts)

Initialize the service, creating its own orb, poa, etc.

int ImR_Locator_i::init_with_orb ( CORBA::ORB_ptr  orb,
Options opts 
)

Same as above, but use the given orb.

bool ImR_Locator_i::is_alive ( Server_Info info)
private
int ImR_Locator_i::is_alive_i ( Server_Info info)
private
void ImR_Locator_i::list ( CORBA::ULong  how_many,
ImplementationRepository::ServerInformationList_out  server_list,
ImplementationRepository::ServerInformationIterator_out  server_iterator 
)
virtual
void ImR_Locator_i::notify_child_death ( const char *  name)
virtual
CORBA::Long ImR_Locator_i::register_activator ( const char *  name,
ImplementationRepository::Activator_ptr  admin 
)
virtual
void ImR_Locator_i::remove_server ( const char *  name)
virtual
int ImR_Locator_i::run ( void  )

Run using the orb reference created during init()

void ImR_Locator_i::server_is_running ( const char *  name,
const char *  partial_ior,
ImplementationRepository::ServerObject_ptr  server_object 
)
virtual
void ImR_Locator_i::server_is_shutting_down ( const char *  name)
virtual
CORBA::Object_ptr ImR_Locator_i::set_timeout_policy ( CORBA::Object_ptr  obj,
const ACE_Time_Value to 
)
private
int ImR_Locator_i::setup_multicast ( ACE_Reactor reactor,
const char *  ior 
)
private
void ImR_Locator_i::shutdown ( bool  wait_for_completion)

Shutdown the orb.

void ImR_Locator_i::shutdown ( CORBA::Boolean  activators,
CORBA::Boolean  servers 
)
virtual
void ImR_Locator_i::shutdown_server ( const char *  name)
virtual
ImplementationRepository::StartupInfo * ImR_Locator_i::start_server ( Server_Info info,
bool  manual_start,
int &  waiting_clients 
)
private
void ImR_Locator_i::teardown_multicast ( )
private
void ImR_Locator_i::unregister_activator ( const char *  name,
CORBA::Long  token 
)
virtual
void ImR_Locator_i::unregister_activator_i ( const char *  activator)
private

Member Data Documentation

ImR_Adapter ImR_Locator_i::adapter_
private
int ImR_Locator_i::debug_
private
ImR_Forwarder ImR_Locator_i::forwarder_
private
PortableServer::POA_var ImR_Locator_i::imr_poa_
private
IORTable::Locator_var ImR_Locator_i::ins_locator_
private

The locator interface for the IORTable.

TAO_IOR_Multicast ImR_Locator_i::ior_multicast_
private
CORBA::ORB_var ImR_Locator_i::orb_
private
ACE_Time_Value ImR_Locator_i::ping_interval_
private
bool ImR_Locator_i::read_only_
private
Locator_Repository ImR_Locator_i::repository_
private
PortableServer::POA_var ImR_Locator_i::root_poa_
private
ACE_Time_Value ImR_Locator_i::startup_timeout_
private
bool ImR_Locator_i::unregister_if_address_reused_
private
ImplementationRepository::AsyncStartupWaiter_var ImR_Locator_i::waiter_
private
AsyncStartupWaiter_i ImR_Locator_i::waiter_svt_
private

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