<> <> <> <> DIRECTORY CrRPC, FetchP70V1; FetchP70V1ClientImpl: CEDAR PROGRAM IMPORTS CrRPC EXPORTS FetchP70V1 ~ { OPEN FetchP70V1; <> BadFileName: PUBLIC BadFileNameType ~ CODE; CantOpenLogFile: PUBLIC CantOpenLogFileType ~ CODE; ServerNotFound: PUBLIC ServerNotFoundType ~ CODE; NilHeap: PUBLIC NilHeapType ~ CODE; BadParameters: PUBLIC BadParametersType ~ CODE; BadRelease: PUBLIC BadReleaseType ~ CODE; InternalError: PUBLIC InternalErrorType ~ CODE; Warning: PUBLIC WarningType ~ CODE; CourierError: PUBLIC CourierErrorType ~ CODE; FileNotFound: PUBLIC FileNotFoundType ~ CODE; VersionMismatch: PUBLIC VersionMismatchType ~ CODE; ServerGoingAway: PUBLIC ServerGoingAwayType ~ CODE; BadHandle: PUBLIC BadHandleType ~ CODE; BadResults: PUBLIC BadResultsType ~ CODE; <> GetError: CrRPC.GetErrorProc ~ { SELECT errNum FROM 12 => ERROR BadFileName[]; 10 => ERROR CantOpenLogFile[]; 5 => ERROR ServerNotFound[]; 9 => ERROR NilHeap[]; 2 => ERROR BadParameters[]; 13 => ERROR BadRelease[]; 3 => ERROR InternalError[]; 11 => ERROR Warning[]; 6 => ERROR CourierError[]; 0 => ERROR FileNotFound[]; 8 => ERROR VersionMismatch[]; 4 => ERROR ServerGoingAway[]; 7 => ERROR BadHandle[]; 1 => ERROR BadResults[]; ENDCASE => { ERROR CrRPC.Error[h, remoteError, "Unexpected Remote Error"]; }; }; <> Find: PUBLIC FindType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, file]; CrRPC.PutRope[s, release]; CrRPC.PutBool[s, getDFName]; CrRPC.PutBool[s, getFilePath]; CrRPC.PutBool[s, getCreateDate]; }; GetResults: CrRPC.GetResultsProc ~ { dfName _ CrRPC.GetRope[s]; filePath _ CrRPC.GetRope[s]; createDate _ CrRPC.GetRope[s]; nMatches _ CrRPC.GetCard16[s]; }; CrRPC.Call[h~h, remotePgm~70, remotePgmVersion~1, remoteProc~1 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; Predicate: PUBLIC PredicateType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, release]; }; GetResults: CrRPC.GetResultsProc ~ { respond _ CrRPC.GetBool[s]; }; CrRPC.Call[h~h, remotePgm~70, remotePgmVersion~1, remoteProc~0 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; }...