3 #pragma prefix "omg.org"
8 * Implementation Repository Entry
10 interface ImplementationDef {
21 typedef sequence<octet> ObjectTag;
28 typedef sequence<ObjectInfo> ObjectInfoList;
30 attribute ActivationMode mode;
31 attribute ObjectInfoList objs;
32 readonly attribute string name;
33 attribute string command;
34 readonly attribute string tostring;
38 * Implementation Repository
40 interface ImplRepository {
41 typedef sequence<ImplementationDef> ImplDefSeq;
43 ImplementationDef restore (in string asstring);
44 ImplementationDef create (in ImplementationDef::ActivationMode mode,
45 in ImplementationDef::ObjectInfoList objs,
48 void destroy (in ImplementationDef impl_def);
49 ImplDefSeq find_by_name (in string name);
50 ImplDefSeq find_by_repoid (in string repoid);
51 ImplDefSeq find_by_repoid_tag (in string repoid,
52 in ImplementationDef::ObjectTag tag);
53 ImplDefSeq find_all ();
57 * interface provided by an object adapter to the mediator
60 typedef sequence<Object> ObjSeq;
62 oneway void restore_request (in ObjSeq objs);
63 oneway void obj_inactive (in Object obj);
64 oneway void impl_inactive ();
68 * object adapter mediator
70 interface OAMediator {
71 typedef sequence<octet> RefData;
72 typedef sequence<Object> ObjSeq;
73 typedef unsigned long ServerId;
75 void create_obj (in Object objref, in RefData id,
76 out Object remote_objref, in ServerId svid);
77 void restore_obj (in Object objref, inout Object remote_objref,
78 out RefData id, in ServerId svid);
79 oneway void activate_obj (in Object objref, in ServerId svid);
80 oneway void deactivate_obj (in Object objref, in ServerId svid);
81 oneway void migrate_obj (in Object objref, in ServerId svid,
82 in ImplementationDef impl);
83 oneway void orphan_obj (in Object objref, in ServerId svid);
84 oneway void dispose_obj (in Object objref, in ServerId svid);
86 void create_impl (in ImplementationDef impl,
87 in OAServer server, inout ServerId id);
88 oneway void activate_impl (in ServerId id);
89 oneway void deactivate_impl (in ServerId id);
90 Object get_remote_object (in RefData key);
93 * this cannot be oneway, because we must be sure the
94 * mediator has has seen the dispose_impl() before the
97 void dispose_impl (in ServerId id);
99 ObjSeq get_restore_objs (in ServerId id);
102 boolean force_activation (in ImplementationDef impl);
109 interface POAMediator {
110 string create_impl (in string svid, in string ior);
111 void activate_impl (in string svid);
112 void deactivate_impl (in string svid);
115 boolean force_activation (in ImplementationDef impl);
116 boolean hold (in ImplementationDef impl);
117 boolean stop (in ImplementationDef impl);
118 boolean continue (in ImplementationDef impl);
119 void shutdown_server();