Dummies to strip off an arg for the local call
MyFindService: PROC [service: Rope.ROPE] RETURNS [found: BOOL, instance: RPC.ShortROPE];
MyFindServiceWithQueueing: PROC [service: Rope.ROPE, version: RPC.ShortROPE, timeToWait: INT, clientMachineName: RPC.ShortROPE, streamPupAddress: PupDefs.PupAddress, needListener: BOOL] RETURNS [found: ComputeServer.AskResponce, instance: RPC.ShortROPE, serverPupAddress: PupDefs.PupAddress, errMsg: Rope.ROPE];
MyNewStats: PROC [serverMachineName: RPC.ShortROPE, serverMachinePupAddress: RPC.ShortROPE, serverUP: BOOL, firstCall: BOOL, machineType: PrincOps.MachineType, mainMemory: CARDINAL, numberCPUs: CARDINAL, diskPartionSize: INT, freePagesOnDisk: INT, freeboard: INT, freeGFI: CARDINAL, freeMDS: CARDINAL, freeVM: CARDINAL, oldestLRUFileDate: BasicTime.GMT, CPULoad: REAL, reclamationRate: REAL, freeProcesses: CARDINAL] RETURNS [terminateService, newPackage: BOOL, queueingCommands: LIST OF Rope.ROPE];
MyBestServerStats: PROC RETURNS[instance: RPC.ShortROPE, FOM: REAL] ;
MyNoticeNewPackage: PROC [package: RPC.ShortROPE] RETURNS [error: BOOL, tryDifferentController: BOOL, msg: Rope.ROPE];
MyRemoveOldPackage: PROC [package: RPC.ShortROPE] RETURNS [error: BOOL, tryDifferentController: BOOL, msg: Rope.ROPE];
MyGetSomeInfo: PROC RETURNS [error: BOOL, tryDifferentController: BOOL, msg: Rope.ROPE, serverList: LIST OF Rope.ROPE, bestFOM: REAL];
MyCommandUnavailable: PROC [serverMachineName: RPC.ShortROPE, commandName: Rope.ROPE, version: RPC.ShortROPE];
MyExtraCommandAvailable: PROC [serverMachineName: RPC.ShortROPE, commandName: Rope.ROPE, version: RPC.ShortROPE];
MyMightAcceptQueuedCommand: PROC [serverMachineAddress: RPC.ShortROPE, commandName: Rope.ROPE];
lFindService:
PROC [interface: ComputeServerControllerRpcControl.InterfaceRecord, service: Rope.
ROPE]
RETURNS [found:
BOOL, instance:
RPC.ShortROPE] = {
RETURN MyFindService[service];
};
lMyFindServiceWithQueueing:
PROC [interface: ComputeServerControllerRpcControl.InterfaceRecord, service: Rope.
ROPE, version:
RPC.ShortROPE, timeToWait:
INT, clientMachineName:
RPC.ShortROPE, streamPupAddress: PupDefs.PupAddress, needListener:
BOOL]
RETURNS [found: ComputeServer.AskResponce, instance:
RPC.ShortROPE, serverPupAddress: PupDefs.PupAddress, errMsg: Rope.
ROPE] = {
RETURN MyFindServiceWithQueueing[service, version, timeToWait, clientMachineName, streamPupAddress, needListener];
};
lNewStats:
PROC [interface: ComputeServerControllerRpcControl.InterfaceRecord, serverMachineName:
RPC.ShortROPE, serverMachinePupAddress:
RPC.ShortROPE, serverUP:
BOOL, firstCall:
BOOL, machineType: PrincOps.MachineType, mainMemory:
CARDINAL, numberCPUs:
CARDINAL, diskPartionSize:
INT, freePagesOnDisk:
INT, freeboard:
INT, freeGFI:
CARDINAL, freeMDS:
CARDINAL, freeVM:
CARDINAL, oldestLRUFileDate: BasicTime.
GMT, CPULoad:
REAL, reclamationRate:
REAL, freeProcesses:
CARDINAL]
RETURNS [terminateService, newPackage:
BOOL, queueingCommands:
LIST
OF Rope.
ROPE] = {
RETURN MyNewStats[serverMachineName, serverMachinePupAddress, serverUP, firstCall, machineType, mainMemory, numberCPUs, diskPartionSize, freePagesOnDisk, freeboard, freeGFI, freeMDS, freeVM, oldestLRUFileDate, CPULoad, reclamationRate, freeProcesses];
};
lBestServerStats:
PROC
[interface: ComputeServerControllerRpcControl.InterfaceRecord
] RETURNS[instance:
RPC.ShortROPE,
FOM:
REAL] = {
RETURN MyBestServerStats[];
};
lNoticeNewPackage:
PROC [interface: ComputeServerControllerRpcControl.InterfaceRecord, package:
RPC.ShortROPE]
RETURNS [error:
BOOL, tryDifferentController:
BOOL, msg: Rope.
ROPE] = {
RETURN MyNoticeNewPackage[package];
};
lRemoveOldPackage:
PROC [interface: ComputeServerControllerRpcControl.InterfaceRecord, package:
RPC.ShortROPE]
RETURNS [error:
BOOL, tryDifferentController:
BOOL, msg: Rope.
ROPE] = {
RETURN MyRemoveOldPackage [package];
};
lGetSomeInfo:
PROC [interface: ComputeServerControllerRpcControl.InterfaceRecord]
RETURNS [error:
BOOL, tryDifferentController:
BOOL, msg: Rope.
ROPE, serverList:
LIST
OF Rope.
ROPE, bestFOM:
REAL] = {
RETURN MyGetSomeInfo[];
};
lCommandUnavailable:
PROC [interface: ComputeServerControllerRpcControl.InterfaceRecord, serverMachineName:
RPC.ShortROPE, commandName: Rope.
ROPE, version:
RPC.ShortROPE] = {
MyCommandUnavailable[serverMachineName, commandName, version];
};
lExtraCommandAvailable:
PROC [interface: ComputeServerControllerRpcControl.InterfaceRecord, serverMachineName:
RPC.ShortROPE, commandName: Rope.
ROPE, version:
RPC.ShortROPE] = {
MyExtraCommandAvailable[serverMachineName, commandName, version];
};
lMightAcceptQueuedCommand:
PROC [interface: ComputeServerControllerRpcControl.InterfaceRecord, serverMachineAddress:
RPC.ShortROPE, commandName: Rope.
ROPE] = {
MyMightAcceptQueuedCommand[serverMachineAddress, commandName];
};