blob: 8e2fed102deedce42c1f7e9fa7e4863c62f20997 (
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
|
// $Id$
#include "Ping.idl"
interface Implementation_Repository
// = TITLE
// Interface for communicating with the Implementation Repository
//
// = DESCRIPTION
// This interface exports all the administration functionality of
// the Implementation Repository.
{
exception Already_Registered {};
// Object already bound in the Implementation Repository
exception Cannot_Activate
{
string reason_;
};
exception Not_Found {};
// Object not found in the Implementation Repository
struct INET_Addr
{
string host_;
unsigned short port_;
};
// The location of a server
struct Process_Options
{
string command_line_;
// Command line options
string environment_;
// Environment
string working_directory_;
// Working directory
unsigned long creation_flags_;
// Creation flags
};
Object activate_object (in Object obj)
raises (Not_Found,
Cannot_Activate);
// Restart server that will contain this persistent object and return the
// new Object reference.
//
// The <Not_Found> exception is raised when <obj> is not found
// in the Implementation Repository. The <Cannot_Activate> exception
// is raised when <obj> is found in the Repository but could not be
// activated.
INET_Addr activate_server (in string server)
raises (Not_Found,
Cannot_Activate);
// Restart server that is named <server> and return the host/port
//
// The <Not_Found> exception is raised when <server> is not found
// in the Implementation Repository. The <Cannot_Activate> exception
// is raised when <server> is found in the Repository but could not be
// activated.
void register_server (in string server,
in Process_Options options)
raises (Already_Registered);
// Register the <options> to specify how the <server> should be
// restarted when a client asks for it.
//
// The <Already_Registered> exception is raised when <server> has
// already been registered with the Implementation Repository.
void reregister_server (in string server,
in Process_Options options);
// Update the <options> to specify how the <server> should be
// restarted when a client asks for it. Will register the server
// if not already registered.
void remove_server (in string server)
raises (Not_Found);
// Remove <server> from the Implementation Repository.
//
// The <Not_Found> exception is raised when <server> is not found
// in the Implementation Repository.
INET_Addr server_is_running (in string server,
in INET_Addr addr,
in Object ping)
raises (Not_Found);
// Used to notify the Implementation Repository that <server> is alive and
// well at <addr>.
void server_is_shutting_down (in string server)
raises (Not_Found);
// Used to tell the Implementation Repository that <server> is shutting
// down.
};
|