DIRECTORY BasicTime USING [GMT, nullGMT], BlackCherry, BlackCherrySidedoor, IO USING [ STREAM ], MailBasics USING [RNameList], MailRetrieve USING [ Handle, MBXState ], MailUtils USING [ Credentials ], Rope USING [ ROPE ]; BlackCherryInternal: CEDAR DEFINITIONS ~ { OPEN BlackCherrySidedoor; ROPE: TYPE ~ Rope.ROPE; STREAM: TYPE ~ IO.STREAM; MsgHandle: TYPE ~ BlackCherry.MsgHandle; MsgSetInfo: TYPE ~ BlackCherry.MsgSetInfo; MsiData: TYPE ~ REF MsiDataRec; MsiDataRec: TYPE ~ RECORD[ allowNewMail, okToFlushMail, useFromFieldInTOC, checkStateReporting: BOOL ¬ FALSE, timeOfLastFlush: BasicTime.GMT ¬ BasicTime.nullGMT ]; RetrieveHandle: TYPE ~ REF RetrieveHandleRec; RetrieveHandleRec: TYPE ~ RECORD[ credentials: LIST OF MailUtils.Credentials, mHandle: MailRetrieve.Handle, lastStateReported: MailRetrieve.MBXState ¬ unknown, msiData: MsiData -- backpointer ]; userRNameList: READONLY MailBasics.RNameList; simpleUserNameList: READONLY LIST OF ROPE; credentials: READONLY LIST OF MailUtils.Credentials; customProcs: BlackCherry.CustomProcs; CloseAndOpen: PROC[msInfo: MsgSetInfo]; SetFileLength: PROC [msInfo: MsgSetInfo, len: INT]; StrmFlush: PROC[stream: STREAM, msiData: MsiData]; ForceStateOff: PROC; MakeAndSetNewHandle: PROC [ credentials: LIST OF MailUtils.Credentials ¬ NIL, msiData: MsiData, pollingInterval: INT ¬ 300 ]; CloseRetrieveHandle: PROC; GetRetrieveHandle: PROC RETURNS[RetrieveHandle]; UpdateUser: PROC[msiData: MsiData]; IsCurrentUser: PROC [ sender: ROPE ] RETURNS [ yes: BOOL ¬ TRUE ]; ReadAnyNewMail: PROC [msInfo: MsgSetInfo]; DoCopyOrExpunge: PROC[msInfo: MsgSetInfo, logName: ROPE, altFileData: BlackCherry.BCFileData, sortem: BOOL] RETURNS[newList, newLast: MsgHandle ¬ NIL]; DoAppendMsg: PROC[msInfo: MsgSetInfo, msgID, plainText, formatting: ROPE]; WriteMsgs: PUBLIC PROC [msInfo: MsgSetInfo, mailStrm: STREAM] RETURNS [ numMsgs: INT ¬ 0, newList, newLast: MsgHandle ¬ NIL ]; WriteTOC: PROC [ reader, writer: STREAM, numMsgs, segmentStart: INT, msgH: MsgHandle, useFromFieldInTOC: BOOL ] RETURNS [ last: MsgHandle ¬ NIL ]; ReadBWFile: PROC [msInfo: MsgSetInfo] RETURNS [numUndel, totalMsgs: INT ¬ 0, ok: BOOL ¬ FALSE]; AppendMsgs: PROC [msInfo: MsgSetInfo, first: MsgHandle, last: MsgHandle]; BCMailLog: PROC[fileData: BlackCherry.BCFileData, strmProc: MsgFromStreamProc, ropeProc: MsgFromRopesProc] RETURNS[ok: BOOL ¬ FALSE]; }. 8 BlackCherryInternal.mesa Copyright Σ 1991, 1992 by Xerox Corporation. All rights reserved. Willie-sue, July 20, 1993 4:06 pm PDT Exported operations (BlackCherryImpl) Exported operations (BlackCherryMailImpl) Writes msgs defined by msInfo onto mailStrm Exported operations (BlackCherrySidedoorlImpl) Κ·•NewlineDelimiter –(cedarcode) style™codešœ™Kšœ Οeœ7™BK™%K™—šΟk ˜ Kšœ žœžœ ˜K˜ K˜Kšžœžœžœ˜Kšœ žœ ˜Kšœ žœ˜(Kšœ žœ˜ Kšœžœžœ˜K˜—šΟnœžœž œžœ˜D˜Kšžœžœžœ˜Kšžœžœžœžœ˜K˜Kšœ žœžœ ˜(šœ žœ˜*K˜—Kšœ žœžœ ˜šœ žœžœ˜KšœEžœžœ˜RKšœžœ˜2Kšœ˜K˜—Kšœžœžœ˜-šœžœžœ˜!Kšœ žœžœ˜+K˜K˜3KšœΟc˜ K˜K˜—Kšœžœ˜-Kš œžœžœžœžœ˜*šœ žœžœžœ˜4K˜—Kšœ%˜%—K˜head™%šŸ œžœ˜'K˜—šŸ œžœžœ˜3K˜—šŸ œžœ žœ˜2K˜—šŸ œžœ˜K˜—š Ÿœžœžœžœžœ%žœ ˜}K˜—šŸœžœ˜K˜—KšŸœžœžœ˜0—™)šŸ œžœ˜#K™—š Ÿ œžœ žœžœžœžœ˜BK™—šŸœžœ˜*K˜—š Ÿœžœžœ/žœžœžœ˜—K˜—šŸ œžœ3žœ˜JK˜—šŸ œžœžœ žœžœ žœ$žœ˜~Kšœ+™+K™—š Ÿœžœžœžœ&žœ˜oKšžœžœ˜"K˜—š Ÿ œžœžœžœ žœžœ˜_K˜—KšŸ œžœ9˜I—™.šŸ œžœ[˜jKšžœžœžœœ˜——K˜Kšœ˜——…— P?