import "acsdaemon.idl";
Inheritance diagram for acsdaemon::ServicesDaemon:
Public Member Functions | |
ServiceDefinitionBuilder | create_service_definition_builder (in short instance_number) raises (ACSErrTypeCommon::BadParameterEx, ACSErrTypeCommon::NoResourcesEx) |
void | start_services (in services_definition_xml definition, in boolean reuse_services, in DaemonSequenceCallback callback) raises (ACSErrTypeCommon::BadParameterEx) |
void | stop_services (in services_definition_xml definition, in DaemonSequenceCallback callback) raises (ACSErrTypeCommon::BadParameterEx) |
void | start_acs (in DaemonSequenceCallback callback, in short instance_number, in string flags) raises (ACSErrTypeCommon::BadParameterEx) |
void | stop_acs (in DaemonSequenceCallback callback, in short instance_number, in string flags) raises (ACSErrTypeCommon::BadParameterEx) |
string | status_acs (in short instance_number) raises (acsdaemonErrType::FailedToGetAcsStatusEx) |
void | shutdown () raises (maciErrType::NoPermissionEx) |
void | set_manager_reference (in string ref) |
Use of this daemon is the generally recommended startup mechanism for ACS, although for limited tests with all services running on one machine and w/o requirement for service monitoring, it may be sufficient to run the "acsStart" and "acsStop" scripts directly without using the services daemon at all.
There are three different ways to start the ACS services through this daemon:
About daemon deployment (this info does not quite belong into the interface documentation, but for practical purposes seems justified):
A single instance of this daemon must be running on all computers on which ACS services should be started. The daemon can be started by a boot script, SNMP or other mechanism using the command "acsservicesdaemon". It may be started by a different user than the one later running ACS. The daemon can be found using "corbaloc::host:3014/ACSServicesDaemon".
|
Creates and retrieves a reference to a ServiceDescriptionBuilder instance. (Make sure to call ServiceDescriptionBuilder#close when done with it.) This call may fail with a NoResourcesEx if 10 instances are already active, or if for another reason the daemon determines that its proper functioning would be jeopardized by creating the ServicesDaemonStartupSequence. This call will fail with BadParameterEx if the "instance_number" is invalid.
|
|
Set corrensponding manager reference. NOTE: this is used to initialize alarm system. |
|
Shuts down the daemon.
|
|
Starts ACS services. Returns immediately. The client will be notified through the callback object when the services are up, or if an error has occurred.
|
|
Asynchronously starts the defined services. This method can be called on any services daemon in the system, which will forward the calls to the daemons on the other hosts according to the services definition. Exceptions are forwarded to the callback handler. If a service cannot be started, the starting sequence will be abandoned, but the services that have been started already will be left running. This allows the client to either fix the problem and call this method again (with reuse_services=true) to complete the startup, or to stop the services. If a defined service is running already, it will be reused if "reuse_services" is true. Otherwise it will be considered a failure (see above).
|
|
Returns status of ACS (i.e. invokes acsStatus). instance_number ACS instance number
|
|
Stops ACS services. Returns immediately. The client will be notified through the callback object when the services are stopped, or if an error has occurred.
|
|
Asynchronously shuts down the services that were executed via the specified services definition. This method can be called on any services daemon in the system, which will forward the calls to the daemons on the other hosts according to the services definition. The shutdown order is determined by the daemon. If one of the given services is found to be not running (ServiceNotRunning exception from any of the stop_ methods) then the client will be notified via the callback, but the execution of this method will continue.
|