YodelData.mesa
Copyright © 1985 by Xerox Corporation. All rights reserved.
Last Edited by: Hagmann, April 4, 1984 4:25:08 pm PST
Bob Hagmann July 9, 1985 9:12:30 am PDT
Carl Hauser, February 13, 1986 12:03:31 pm PST

DIRECTORY
AlpineEnvironment,
AlpineFile,
AlpTransaction,
Buttons,
IO,
MBQueue,
Rope,
RPC,
ViewerClasses;
YodelData: CEDAR DEFINITIONS = BEGIN
ROPE: TYPE = Rope.ROPE;
MyData: TYPE = REF MyDataObject;
YesNoAll: TYPE = {wait, yes, no, all};
MyDataObject: TYPE = MONITORED RECORD[
in: IO.STREAM,
out: IO.STREAM,
q: MBQueue.Queue,
condition: CONDITION,
level: { user, fileProperties, ownerProperties, administrator } ← user,
assertWheel: BOOLFALSE,
breakLocks: BOOLFALSE,
stopFlag: BOOLFALSE,
displayOptions: BOOLFALSE,
displayProperties: AlpineFile.PropertySet,
AutoDelete: BOOLFALSE,
DelVerCount: INT ← 0,
background: BOOLFALSE,
deleteConfirm: YesNoAll ← wait,
topChild,
kids,
src,
dest,
script: ViewerClasses.Viewer ← NIL,
maxW: INTEGER,
maxBW: INTEGER,
buttH: INTEGER,
oDeleteConfirm, oByteLength, oHighWaterMark, oStringName, oReadAccess, oModifyAccess, oOwner, oVersion, oSize, oCreateAccessList, oOwnerKeep, oFileKeep, oRootReadAccess, oRootModifyAccess, oQuota, yesButton, noButton: ViewerClasses.Viewer ← NIL
];
AlpineFile.PropertySet to ROPE conversions
PropertySetToRope: TYPE = RECORD [
property: AlpineEnvironment.Property,
propertyName: ROPE
];
NumberOfAlpineProperties: INT = 8 ;
PropertySetToRopeArray: ARRAY [0..NumberOfAlpineProperties) OF PropertySetToRope ;
Exported Procedures from YodelRoot
CreateButtons: PROC[d: MyData, parent: ViewerClasses.Viewer];
Exported Procedures from YodelUser -> for internal Yodel use
ListFilesProc: Buttons.ButtonProc;
DeleteFilesProc: Buttons.ButtonProc;
CopyFilesProc: Buttons.ButtonProc;
FullCopyFilesProc: Buttons.ButtonProc;
OptionsProc: Buttons.ButtonProc;
ChangeOptionsProc: Buttons.ButtonProc;
ChangeAutoDeleteProc: Buttons.ButtonProc;
ChangeDelVerProc: Buttons.ButtonProc;
ChangePriorityProc: Buttons.ButtonProc;
YesProc: Buttons.ButtonProc;
NoProc: Buttons.ButtonProc;
ListInterimProc: Buttons.ButtonProc;
hasPattern: SAFE PROC [pattern: ROPE] RETURNS [BOOL];
ParseSArgs: PROC [ d: MyData] RETURNS [user, password, srcServer, srcDir, srcFile: ROPE, parseError: BOOL, errorExplanation: ROPE];
DecomposePattern: PROC [server: ROPE, pattern: ROPE, user: ROPE, addStar: BOOL ← TRUE]
RETURNS [directory, restOfPattern: ROPE];
PrintResult: PROC [out: IO.STREAM, resultList: LIST OF REF ANY] RETURNS [printedSomething: BOOL];
Exported Procedures from YodelSignals
PerformProc: TYPE = PROC [trans: AlpTransaction.Handle, serverForTrans: ROPE, caller: AlpineEnvironment.Principal, key: RPC.EncryptionKey] RETURNS [LIST OF REF ANY];
PerformOp: PROC[ performProc: PerformProc, server: ROPE, user: ROPENIL,
password: ROPENIL] RETURNS [LIST OF REF ANY];
Exported Procedures from YodelProperties
ExamineProc: Buttons.ButtonProc;
ApplyProc: Buttons.ButtonProc;
QuotaProc: Buttons.ButtonProc;
GetOwnerPropertiesProc: Buttons.ButtonProc;
PutOwnerPropertiesProc: Buttons.ButtonProc;
Exported Procedures from YodelAdministrator
ChangeAssertWheel: Buttons.ButtonProc;
ChangeBreakLocks: Buttons.ButtonProc;
CreateOwnerProc: Buttons.ButtonProc;
DestroyOwnerProc: Buttons.ButtonProc;
WriteQuotaProc: Buttons.ButtonProc;
ListOwnersProc: Buttons.ButtonProc;
ReadDBPropertiesProc: Buttons.ButtonProc;
ConvertDirectoryProc: Buttons.ButtonProc;
RenameProc: Buttons.ButtonProc;
END.
Bob Hagmann June 10, 1985 4:56:14 pm PDT
reformatted
Bob Hagmann June 12, 1985 10:05:55 am PDT
changes to: MyDataObject, ChangeDelVerProc, YesProc, NoProc, YesNoAll
Bob Hagmann July 8, 1985 1:08:59 pm PDT
changes to: DecomposePattern, PrintResult
Bob Hagmann July 9, 1985 9:12:31 am PDT
changes to: MyDataObject