(* ---------------------------------------------------------------------- *)
(* Common Object Service
*)
(* ---------------------------------------------------------------------- *)
(* ICosLifeCycle - Interface Module for the Common Object Service
"Life Cycle Services"
Purpose:
Provide a way to control a remote service (object.)
Ping and Remove.
Notes:
* Most of this definition is defined by OMG in the
Common Object Services Volume 1 specification.
*)
(* ---------------------------------------------------------------------- *)
INTERFACE ICosLifeCycle;
TYPE TString = OPTIONAL ilu.CString;
(* ---------------------------------------------------------------------- *)
(* Exception Definitions *)
(* ---------------------------------------------------------------------- *)
EXCEPTION NotRemovable : TString "Not able to be removed.";
(* ---------------------------------------------------------------------- *)
(* CLifeCycle *)
(*
o should probably be inherited by most objects.
*)
(* ---------------------------------------------------------------------- *)
TYPE CLifeCycle = OBJECT
(* COLLECTIBLE*)
METHODS
Ping(),
(* Used to check the status of this object. *)
(* Usually just a null function. *)
Remove()
RAISES NotRemovable END
(* Suggests to this object to remove (kill, destroy) itself. *)
END;
(* ---------------------------------------------------------------------- *)
(* Symbol prefixing: I - Interface Module
C - Class Interface
T - Non-class Type
E - Enumeration Type
k - constant
p - parameter to a method
a - variable
*)
(* ---------------------------------------------------------------------- *)