-- Copyright (C) 1986 by Xerox Corporation. All rights reserved. -- Stub file was translated on May 19, 1986 10:00:53 am PDT by Lupine of February 22, 1986 5:15:54 pm PST -- Source interface ThParty came from file ThParty.bcd, which was created on May 19, 1986 10:00:45 am PDT with version stamp 125#171#14570621437 from source of May 22, 1985 12:18:35 pm PDT. -- The RPC stub modules for ThParty are: -- ThPartyRpcControl.mesa; -- ThPartyRpcClientImpl.mesa; -- ThPartyRpcBinderImpl.mesa; -- ThPartyRpcServerImpl.mesa. -- The parameters for this translation are: -- Target language = Cedar -- Default parameter passing = VALUE -- Deallocate server heap arguments = TRUE -- Inline RpcServerImpl dispatcher stubs = TRUE -- Declare signals = TRUE -- Warn about short POINTER ("MDS") allocations = TRUE -- Maximum number of dynamic heap NEWs = 50, MDS NEWs = 50 -- Acceptable parameter protocols = VersionRange[1..1]. DIRECTORY Basics, Lark, Thrush, ThSmarts, ThParty, RPC USING [defaultInterfaceName, EncryptionKey, InterfaceName, Principal, standardZones, VersionRange, Zones], RPCLupineExtras USING [RPCHost, noHost]; ThPartyRpcControl: DEFINITIONS SHARES ThParty = BEGIN OPEN ThParty, RpcPublic: RPC, RpcPrivateExtras: RPCLupineExtras; -- Public RPC types and constants. InterfaceName: TYPE = RpcPublic.InterfaceName; VersionRange: TYPE = RpcPublic.VersionRange; Principal: TYPE = RpcPublic.Principal; EncryptionKey: TYPE = RpcPublic.EncryptionKey; Zones: TYPE = RpcPublic.Zones; defaultInterfaceName: InterfaceName = RpcPublic.defaultInterfaceName; standardZones: Zones = RpcPublic.standardZones; -- Standard remote binding routines. ImportInterface: SAFE PROCEDURE [ interfaceName: InterfaceName _ defaultInterfaceName, parameterStorage: Zones _ standardZones, hostHint: RpcPrivateExtras.RPCHost_RpcPrivateExtras.noHost]; UnimportInterface: PROCEDURE; ExportInterface: SAFE PROCEDURE [ interfaceName: InterfaceName _ defaultInterfaceName, user: Principal, password: EncryptionKey, parameterStorage: Zones _ standardZones ]; UnexportInterface: SAFE PROCEDURE; -- Dynamic instantiation and binding. ImportNewInterface: SAFE PROCEDURE [ interfaceName: InterfaceName _ defaultInterfaceName, parameterStorage: Zones _ standardZones, hostHint: RpcPrivateExtras.RPCHost_RpcPrivateExtras.noHost] RETURNS [interfaceRecord: InterfaceRecord]; -- NewInterfaceRecord is necessary for Cedar clients who want to -- manufacture a private interface instance, because -- RpcBindingImpl has finalization on type InterfaceRecord. NewInterfaceRecord: SAFE PROCEDURE RETURNS [interfaceRecord: InterfaceRecord]; InterfaceRecord: TYPE = REF InterfaceRecordObject; InterfaceRecordObject: TYPE = RECORD [ Alert: SAFE PROCEDURE [shhh: SHHH, credentials: Credentials, state: StateInConv, reason: Reason, calledPartyID: PartyHandle, urgency: CallUrgency, alertKind: AlertKind, newConv: BOOL, comment: ROPE] RETURNS [nb: NB, convID: ConversationHandle], Advance: SAFE PROCEDURE [shhh: SHHH, credentials: Credentials, state: StateInConv, reason: Reason, comment: ROPE] RETURNS [nb: NB], CreateConversation: SAFE PROCEDURE [shhh: SHHH, credentials: Credentials, urgency: CallUrgency, alertKind: AlertKind] RETURNS [nb: NB, convID: ConversationHandle], MergeConversations: SAFE PROCEDURE [shhh: SHHH, credentials: Credentials, otherStateID: StateID, otherConvID: ConversationHandle] RETURNS [nb: NB], OtherParty: SAFE PROCEDURE [shhh: SHHH, credentials: Credentials] RETURNS [nb: NB, partyID: PartyHandle, description: Thrush.ROPE, conference: BOOL], DescribeParty: SAFE PROCEDURE [shh: SHHH, partyID: PartyHandle] RETURNS [description: Thrush.ROPE], ConversationsForParty: SAFE PROCEDURE [shh: SHHH, partyID: PartyHandle], SetIntervals: SAFE PROCEDURE [shhh: SHHH, credentials: Credentials, intervalSpecs: Thrush.IntervalSpecs] RETURNS [nb: NB], DescribeInterval: SAFE PROCEDURE [shhh: SHHH, credentials: Credentials, targetInterval: Thrush.IntervalSpec, minSilence: Thrush.VoiceTime] RETURNS [nb: NB, exists: BOOL, intervals: Thrush.IntervalSpecs], RegisterKey: SAFE PROCEDURE [shh: SHHH, credentials: Credentials, key: Thrush.EncryptionKey] RETURNS [nb: NB, keyIndex: [0..15]], SetProse: SAFE PROCEDURE [shhh: SHHH, credentials: Credentials, proseSpecs: Thrush.ProseSpecs] RETURNS [nb: NB], CreateParty: SAFE PROCEDURE [shh: SHHH, rName: Rname, type: Thrush.PartyType] RETURNS [partyID: PartyHandle], GetParty: SAFE PROCEDURE [shh: SHHH, partyID: PartyHandle, rName: Rname, type: Thrush.PartyType] RETURNS [newPartyID: PartyHandle], GetPartyFromNumber: SAFE PROCEDURE [shh: SHHH, partyID: PartyHandle, phoneNumber: Thrush.ROPE, description: ROPE, trunkOK: BOOL] RETURNS [newPartyID: PartyHandle], GetPartyFromFeepNum: SAFE PROCEDURE [shh: SHHH, partyID: PartyHandle, feepNum: Thrush.ROPE] RETURNS [newPartyID: PartyHandle], GetRname: SAFE PROCEDURE [shh: SHHH, partyID: PartyHandle] RETURNS [Rname: Thrush.Rname], Register: SAFE PROCEDURE [shh: SHHH, partyID: PartyHandle, interface: SmartsInterface, properties: ThSmarts.SmartsProperties, oldSmartsID: SmartsHandle] RETURNS [smartsID: SmartsHandle], RegisterClone: SAFE PROCEDURE [shh: SHHH, partyID: PartyHandle, clonePartyID: PartyHandle, oldSmartsID: SmartsHandle] RETURNS [smartsID: SmartsHandle], Deregister: SAFE PROCEDURE [shh: SHHH, smartsID: SmartsHandle], Enable: SAFE PROCEDURE [shh: SHHH, smartsID: SmartsHandle] RETURNS [nb: Thrush.NB], Disable: SAFE PROCEDURE [shh: SHHH, smartsID: SmartsHandle] RETURNS [nb: Thrush.NB], GetNumbersForRName: SAFE PROCEDURE [shh: SHHH, rName: ROPE] RETURNS [fullRName: ROPE, number: ROPE, homeNumber: ROPE], SetRingEnable: SAFE PROCEDURE [shh: SHHH, partyID: PartyHandle, ringEnable: Thrush.RingEnable, ringInterval: INT, update: BOOL], lupineDetails: PRIVATE REF LupineDetailsObject_NIL]; LupineDetailsObject: PRIVATE TYPE; -- Definitions for the stubs. LupineProtocolVersion: PUBLIC VersionRange = [first: 1, last: 1]; InterMdsCallsOnly: PUBLIC BOOLEAN = FALSE; ProcedureIndex: PRIVATE TYPE = MACHINE DEPENDENT { LupineUnusedIndex (0), LupineLastIndex (3), Alert (4), Advance (5), CreateConversation (6), MergeConversations (7), OtherParty (8), DescribeParty (9), ConversationsForParty (10), SetIntervals (11), DescribeInterval (12), RegisterKey (13), SetProse (14), CreateParty (15), GetParty (16), GetPartyFromNumber (17), GetPartyFromFeepNum (18), GetRname (19), Register (20), RegisterClone (21), Deregister (22), Enable (23), Disable (24), GetNumbersForRName (25), SetRingEnable (26)}; SignalIndex: PRIVATE TYPE = MACHINE DEPENDENT { LupineUnusedIndex (0), LupineLastIndex (3)}; END. -- ThPartyRpcControl.