WalnutOpsInternal.mesa
Willie-Sue, June 14, 1985 12:43:22 pm PDT
Communication between WalnutOpsImpl and WalnutOpsImpl2
Copyright © 1984 by Xerox Corporation. All rights reserved.
Last Edited by: Willie-sue, January 10, 1985 12:44:02 pm PST
DIRECTORY
IO USING [STREAM],
Rope USING [ROPE],
WalnutDefs USING [Segment];
WalnutOpsInternal:
CEDAR
DEFINITIONS
= BEGIN
ROPE: TYPE = Rope.ROPE;
mailStream: IO.STREAM;
newMailSomewhere: BOOL;
errorInProgress: BOOL;
isShutdown: BOOL;
systemIsReadOnly: BOOL;
walnutSegment: WalnutDefs.Segment;
rootFileName: ROPE;
Procedures
CarefullyApply: PROC[proc: PROC[], didUpdate: BOOL];
-- for extended operations (get log write lock); if BOOL is TRUE, op is "inProgress"
LongRunningApply: PROC[proc: PROC[inProgress: BOOL]];
Restart: PROC;
CleanupAfterCopy: PROC;
-- used for newMail, readArchive, and scavenge
ParseLog: PROC[verbose: BOOL← FALSE] RETURNS[numNew: INT];
CheckInProgress: PROC;
CheckReport: PROC[msg1, msg2, msg3: ROPE← NIL];
StatsReport: PROC[format: ROPE];
DoLogExpunge: PROC[expungeID: INT];
END.