-- AlpineUserTransBinderPacifierImpl.mesa
-- Last edited by
--   Kolling on April 27, 1983 3:16 pm
  DIRECTORY
       AlpineEnvironment,
       AlpineTransaction;
AlpineUserTransBinderPacifierImpl: PROGRAM
  EXPORTS AlpineTransaction =
  
  BEGIN
  
  CommitOrAbort: TYPE = AlpineEnvironment.CommitOrAbort;
  Conversation: TYPE = AlpineEnvironment.Conversation;
  FileStore: TYPE = AlpineEnvironment.FileStore;
  Outcome: TYPE = AlpineEnvironment.Outcome;
  RequestedOutcome: TYPE = AlpineEnvironment.CommitOrAbort;
  TransID: TYPE = AlpineEnvironment.TransID;
  
  Create: PUBLIC PROCEDURE[conversation: Conversation, createLocalWorker: BOOL ← TRUE]
   RETURNS [transID: TransID] = BEGIN ERROR; END;
  CreateWorker: PUBLIC PROCEDURE[conversation: Conversation, transID: TransID, coordinator:
   FileStore] = BEGIN ERROR; END;
  AssertAlpineWheel: PUBLIC PROCEDURE[conversation: Conversation, transID: TransID,
   enable: BOOL ← TRUE] = BEGIN ERROR; END;
  Finish: PUBLIC PROCEDURE[conversation: Conversation, transID: TransID, requestedOutcome:
   RequestedOutcome, continue: BOOL ← FALSE] RETURNS [outcome: Outcome, newTrans:
    TransID] = BEGIN ERROR; END;
    
  END.