VoiceRopeServerSunRPCClientStub.mesa
Copyright Ó 1990 by Xerox Corporation. All rights reserved.
Derived from VoiceRopeServerP912V1ClientImpl.mesa
Generated by PolleZ.pa at May 16, 1990 3:45:53 pm PDT
using Sirocco [2.0] of February 10, 1989 6:26:26 pm PST
Pier, May 24, 1990 2:46:51 pm PDT
Swinehart, September 16, 1990 12:43:16 pm PDT
Polle Zellweger, December 27, 1990 6:15 pm PST
DIRECTORY
SunRPC,
ThrushSunRPC,
SRPCCalls,
VoiceRopeServerSunRPC,
VoiceRopeServerSunRPCClient;
VoiceRopeServerSunRPCClientStub: CEDAR PROGRAM
IMPORTS SunRPC, SRPCCalls
EXPORTS VoiceRopeServerSunRPCClient ~ {
OPEN VoiceRopeServerSunRPC, SRPCCalls;
Handle: TYPE ~ SunRPC.Handle;
GetError: SunRPCGetErrorProc ~ {
No errors in VoiceRopeServer interface.
ec: ROPE;
explanation: ROPE;
ec ← SunRPC.GetRope[h];
explanation ← SunRPC.GetRope[h];
IF NOT Rope.InlineIsEmpty[ec] THEN ERROR Error[ec, explanation];
};
Remote Procedures --
Forget: PUBLIC ForgetType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutRope[h, class];
SunRPC.PutRope[h, refID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~7 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Play: PUBLIC PlayType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, voiceRope.ropeID];
SunRPC.PutInt32[h, voiceRope.start];
SunRPC.PutInt32[h, voiceRope.length];
SunRPC.PutCard32[h, credentials.partyID];
SunRPC.PutCard32[h, credentials.smartsID];
SunRPC.PutCard32[h, credentials.convID];
SunRPC.PutCard32[h, ORD[credentials.state]];
SunRPC.PutCard32[h, credentials.stateID];
SunRPC.PutCard32[h, serviceID];
SunRPC.PutCard32[h, intID];
SunRPCPutBool[h, queueIt];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~2 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Record: PUBLIC RecordType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutCard32[h, credentials.partyID];
SunRPC.PutCard32[h, credentials.smartsID];
SunRPC.PutCard32[h, credentials.convID];
SunRPC.PutCard32[h, ORD[credentials.state]];
SunRPC.PutCard32[h, credentials.stateID];
SunRPC.PutCard32[h, serviceID];
SunRPC.PutCard32[h, recordedParty];
SunRPC.PutCard32[h, intID];
SunRPCPutBool[h, queueIt];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
voiceRope.ropeID ← SunRPC.GetRope[h];
voiceRope.start ← SunRPC.GetInt32[h];
voiceRope.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~1 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Cat: PUBLIC CatType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr1.ropeID];
SunRPC.PutInt32[h, vr1.start];
SunRPC.PutInt32[h, vr1.length];
SunRPC.PutRope[h, vr2.ropeID];
SunRPC.PutInt32[h, vr2.start];
SunRPC.PutInt32[h, vr2.length];
SunRPC.PutRope[h, vr3.ropeID];
SunRPC.PutInt32[h, vr3.start];
SunRPC.PutInt32[h, vr3.length];
SunRPC.PutRope[h, vr4.ropeID];
SunRPC.PutInt32[h, vr4.start];
SunRPC.PutInt32[h, vr4.length];
SunRPC.PutRope[h, vr5.ropeID];
SunRPC.PutInt32[h, vr5.start];
SunRPC.PutInt32[h, vr5.length];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
new.ropeID ← SunRPC.GetRope[h];
new.start ← SunRPC.GetInt32[h];
new.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~9 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Stop: PUBLIC StopType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutCard32[h, creentials.partyID];
SunRPC.PutCard32[h, creentials.smartsID];
SunRPC.PutCard32[h, creentials.convID];
SunRPC.PutCard32[h, ORD[creentials.state]];
SunRPC.PutCard32[h, creentials.stateID];
SunRPC.PutCard32[h, serviceID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~3 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Substr: PUBLIC SubstrType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutInt32[h, start];
SunRPC.PutInt32[h, len];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
new.ropeID ← SunRPC.GetRope[h];
new.start ← SunRPC.GetInt32[h];
new.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~10 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Replace: PUBLIC ReplaceType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutInt32[h, start];
SunRPC.PutInt32[h, len];
SunRPC.PutRope[h, with.ropeID];
SunRPC.PutInt32[h, with.start];
SunRPC.PutInt32[h, with.length];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
new.ropeID ← SunRPC.GetRope[h];
new.start ← SunRPC.GetInt32[h];
new.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~11 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
DescribeRope: PUBLIC DescribeRopeType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutInt32[h, minSilence];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
length ← SunRPC.GetInt32[h];
noise ← UProc1[h];
};
SunRPCCall[h~h, remoteProc~13 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
SetPermissions: PUBLIC SetPermissionsType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
MProc2[h, playAccess];
MProc2[h, editAccess];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~17 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Pause: PUBLIC PauseType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutCard32[h, cedentials.partyID];
SunRPC.PutCard32[h, cedentials.smartsID];
SunRPC.PutCard32[h, cedentials.convID];
SunRPC.PutCard32[h, ORD[cedentials.state]];
SunRPC.PutCard32[h, cedentials.stateID];
SunRPC.PutCard32[h, serviceID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~4 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Resume: PUBLIC ResumeType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutCard32[h, credentials.partyID];
SunRPC.PutCard32[h, credentials.smartsID];
SunRPC.PutCard32[h, credentials.convID];
SunRPC.PutCard32[h, ORD[credentials.state]];
SunRPC.PutCard32[h, credentials.stateID];
SunRPC.PutCard32[h, serviceID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~5 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
GetEnergies: PUBLIC GetEnergiesType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutCard32[h, samplesPerSegment];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
energies ← UProc3[h];
};
SunRPCCall[h~h, remoteProc~14 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
GetPermissions: PUBLIC GetPermissionsType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
playAccess ← UProc4[h];
editAccess ← UProc4[h];
};
SunRPCCall[h~h, remoteProc~18 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Length: PUBLIC LengthType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
len ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~12 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
GetByInterest: PUBLIC GetByInterestType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, class];
SunRPC.PutRope[h, refID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
voiceRope.ropeID ← SunRPC.GetRope[h];
voiceRope.start ← SunRPC.GetInt32[h];
voiceRope.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~8 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
StoreBlock: PUBLIC StoreBlockType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
MProc5[h, block];
FOR i6: CARDINAL IN [0..3) DO
SunRPC.PutCard32[h, key[i6]];
ENDLOOP;
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
voiceRope.ropeID ← SunRPC.GetRope[h];
voiceRope.start ← SunRPC.GetInt32[h];
voiceRope.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~16 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Retain: PUBLIC RetainType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutRope[h, class];
SunRPC.PutRope[h, refID];
SunRPC.PutRope[h, other];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~6 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
FetchBlock: PUBLIC FetchBlockType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutInt32[h, start];
SunRPC.PutInt32[h, len];
SunRPCPutBool[h, decrypt];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
block ← UProc7[h];
};
SunRPCCall[h~h, remoteProc~15 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Unmarshal / Marshal Procs --
SunRPCGetBool: PROC [h: Handle] RETURNS [BOOL] ~ INLINE {
RETURN [SunRPC.GetCard32[h] # 0] };
SunRPCPutBool: PROC [h: Handle, bool: BOOL] ~ INLINE {
SunRPC.PutCard32[h, IF bool THEN 1 ELSE 0] };
MProc2: PROC [h: Handle, val: Users] ~ {
SunRPC.PutCard32[h, val.length];
FOR i8: CARDINAL IN [0..val.length) DO
SunRPC.PutRope[h, val.body[i8]];
ENDLOOP;
};
UProc3: PROC [h: Handle] RETURNS [res: EnergySequence] ~ {
{
length10: CARDINAL ~ SunRPC.GetCard32[h];
res ← NEW[EnergySequenceObject[length10]];
FOR i9: CARDINAL IN [0..length10) DO
res.body[i9] ← SunRPC.GetCard32[h];
ENDLOOP;
};
};
MProc5: PROC [h: Handle, val: VoiceBlock] ~ {
SunRPC.PutCard32[h, val.length];
FOR i11: CARDINAL IN [0..val.length) DO
SunRPC.PutCard32[h, val.body[i11]];
ENDLOOP;
};
UProc4: PROC [h: Handle] RETURNS [res: Users] ~ {
{
length13: CARDINAL ~ SunRPC.GetCard32[h];
res ← NEW[UsersObject[length13]];
FOR i12: CARDINAL IN [0..length13) DO
res.body[i12] ← SunRPC.GetRope[h];
ENDLOOP;
};
};
UProc7: PROC [h: Handle] RETURNS [res: VoiceBlock] ~ {
{
length15: CARDINAL ~ SunRPC.GetCard32[h];
res ← NEW[VoiceBlockObject[length15]];
FOR i14: CARDINAL IN [0..length15) DO
res.body[i14] ← SunRPC.GetCard32[h];
ENDLOOP;
};
};
UProc1: PROC [h: Handle] RETURNS [res: IntervalSpecs] ~ {
{
length17: CARDINAL ~ SunRPC.GetCard32[h];
res ← NEW[IntervalSpecsObject[length17]];
FOR i16: CARDINAL IN [0..length17) DO
res.body[i16].start ← SunRPC.GetInt32[h];
res.body[i16].length ← SunRPC.GetInt32[h];
ENDLOOP;
};
};
SunRPCCall: PROC [h: Handle, remoteProc: CARD, putArgs: SunRPCPutArgsProc, getResults: SunRPCGetResultsProc, getError: SunRPCGetErrorProc] ~ {
SunRPCProgramCall[h: h, remoteProc: remoteProc, putArgs: putArgs, getResults: getResults, getError: getError];
};
}...
Polle Zellweger, December 27, 1990 6:15:26 pm PST
Manually added callerRName field to operations that need to know the caller's name.
changes to: Retain, Cat, Substr, Replace, SetPermissions