summaryrefslogtreecommitdiff
path: root/TAO/CIAO/tools/Daemon/README
blob: 2c7404e6a2ecd8dc850a60e9c008b15a48d6ae9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
$Id$

CIAO_Daemon:
============

This directory contains CIAO's per-host daemon process implementation
- CIAO_Daemon.  It includes implementations for two major CCM
interfaces, namely, ComponentInstallation and ServerActivation.
ComponentInstallation interfaces must be available per-host so all
ComponentServer running on the same host can query it to acquire
component implementations they need.  Likewise, ServerActivator
interacts with CCM's Assembly framework and is responsible to start up
new ComponentServer processes on this host.

The Daemon process registers three simple ObjectKey, "CIAODaemon",
"ComponentInstallation", and "ServerActivator" to the IORTable, so if you
start up the CIAO_Daemon process on a fixed endpoint like:

  CIAO_Daemon -ORBEndpoint iiop://hostname:13000

You can get to any of the three interfaces using one of the following
IOR:

  corbaloc:iiop:hostname:13000/CIAODaemon
  corbaloc:iiop:hostname:13000/ComponentInstallation
  corbaloc:iiop:hostname:13000/ServerActivator


Other command line flags supported by ServerActivator include:

  * -o <filename> : Specify the filename where CIAO_Daemon
                    writes the IOR of the Daemon interface to.  By
                    default, it writes to "daemon.ior".
                    DaemonController uses the IOR to get the object
                    refrence to interact with the Daemon process.

  * -n <pathname> : Specify the pathname to a ComponentServer
                    program that  ServerActivator uses to
                    startup a ComponentServer process.

  * -d <second> : Specify the time, in second, ServerActivator will
                  wait for the ComponentServer to callback to notify
                  ServerActivator their IOR.  ServerActivator
                  considers the activation fails if the
                  ComponentServer does not call back in time.

  * -i : Specify the name of the datafile ComponentInstallation
         interface uses to keep the persistent installation data.  By
         default, CIAO_Daemon uses the file
         "CIAO_Installation_Data.ini".  This file (even if empty) must
         exist before the process starts.

  * -s : Specify the Section name within the persistent data file the
         ComponentInstallation uses to retrieve and backup the
         installation data.  Changing this name allows us to switch
         among various sets of component implementations easily just
         by restarting the daemon process.  By default, CIAO_Daemon
         uses the name "ComponentInstallation" if this flag is not
         specified.

  * -c <svcconf name>: Specify the default svcconf filename for ComponentServer

  * -m <svcconf map>: Specify the svc.conf map configuration file.
                      This file contains the (hint, svc.conf filename)
                      tuples (two strings delimited by a comma).

DaemonController:
=================

This is a small command line utility program for interacting with the
CIAO_Daemon process.  It offers two major function groups thru 6
commands:

  * General daemon process control:

     - get_ior: use this command to query the IOR of any service
       interfaces running on the daemon process and store the IOR into
       a specified file.

     - shutdown: use this command to shutdown the daemon process.


  * ComponentInstallation related control:

     - install: to install a new location of a component
       implementation

     - uninstall: to remove a location of a component implementation

     - replace: to replace an existing compoment implementaion
       location with a new one

     - query: to query the location of a component implementation

This program uses resolve_initial_references ("CIAODaemon") to acqurie
the daemon control interface, so you must provide the reference to the
program somehow.  For example:

  DaemonController -ORBInitRef CIAODaemon=file://daemon.ior <command> [command options]

To check the parameter required for each of the commands listed above,
just append the -h command option flag, such as:

  DaemonController -ORBInitRef CIAODaemon=file://daemon.ior install -h