XNSCHPrivate.mesa
Copyright Ó 1991 by Xerox Corporation. All rights reserved.
Demers, June 2, 1987 7:19:23 pm PDT
DIRECTORY
CHOpsP2V3 USING [Authenticator],
CrRPC USING [Handle],
IO USING [STREAM],
Rope USING [ROPE],
XNS USING [Address, Host],
XNSCH USING [Conversation, Element, Name]
;
XNSCHPrivate: CEDAR DEFINITIONS ~ {
OPEN CHOps: CHOpsP2V3;
Copied Types
Authenticator: TYPE ~ CHOps.Authenticator;
Conversation: TYPE ~ XNSCH.Conversation;
Element: TYPE ~ XNSCH.Element;
Handle: TYPE ~ CrRPC.Handle;
Host: TYPE ~ XNS.Host;
Name: TYPE ~ XNSCH.Name;
ROPE: TYPE ~ Rope.ROPE;
STREAM: TYPE ~ IO.STREAM;
Name / Address Cache
NACacheInsert: PROC [name: Name, distingName: Name, address: XNS.Address];
NACacheLookup: PROC [name: Name]
RETURNS [found: BOOL, distingName: Name, address: XNS.Address];
Conversations
GetAuthenticator: PROC [c: Conversation, host: Host]
RETURNS [Authenticator];
IsGeneric: PROC [c: Conversation]
RETURNS [BOOL];
Bulk Data Stream / Marshalling Procs
(See CrRPC)
GetElement: PROC [stream: STREAM] RETURNS [element: Element];
GetOrganization: PROC [stream: STREAM] RETURNS [element: Element];
The object and domain fields of the returned Element are NIL.
GetDomain: PROC [stream: STREAM] RETURNS [element: Element];
The object field of the returned Element is NIL.
PutElement: PROC [stream: STREAM, element: Element];
Invoking a remote procedure
RemoteProc: TYPE ~ PROC[handle: Handle, host: Host];
CallRemote: PROC [c: Conversation, proc: RemoteProc, domain: ROPE ¬ NIL,
idempotent: BOOL ¬ TRUE];
}...