DIRECTORY AlpineEnvironment USING [allOwnerProperties, CommitOrAbort, FileStore, LockFailure, LockOption, NeededAccess, nullVolumeGroupID, OperationFailure, Outcome, OwnerName, OwnerPropertySet, OwnerPropertyValuePair, PageCount, TransID, UnknownType, VolumeID, VolumeGroupID], AlpInstance USING [Handle], AlpineTransaction USING [RequestedOutcome]; AlpTransaction: CEDAR DEFINITIONS = BEGIN allOwnerProperties: OwnerPropertySet = AlpineEnvironment.allOwnerProperties; FileStore: TYPE = AlpineEnvironment.FileStore; LockOption: TYPE = AlpineEnvironment.LockOption; nullVolumeGroupID: VolumeGroupID = AlpineEnvironment.nullVolumeGroupID; Outcome: TYPE = AlpineEnvironment.Outcome; OwnerName: TYPE = AlpineEnvironment.OwnerName; OwnerPropertySet: TYPE = AlpineEnvironment.OwnerPropertySet; OwnerPropertyValuePair: TYPE = AlpineEnvironment.OwnerPropertyValuePair; PageCount: TYPE = AlpineEnvironment.PageCount; RequestedOutcome: TYPE = AlpineTransaction.RequestedOutcome; TransID: TYPE = AlpineEnvironment.TransID; VolumeID: TYPE = AlpineEnvironment.VolumeID; VolumeGroupID: TYPE = AlpineEnvironment.VolumeGroupID; AccessFailed: READONLY ERROR [missingAccess: AlpineEnvironment.NeededAccess]; LockFailed: READONLY ERROR [why: AlpineEnvironment.LockFailure]; OperationFailed: READONLY ERROR [why: AlpineEnvironment.OperationFailure]; StaticallyInvalid: READONLY ERROR; Unknown: READONLY ERROR [what: AlpineEnvironment.UnknownType]; PossiblyDamaged: READONLY SIGNAL; Handle: TYPE = REF Object; Object: TYPE = RECORD[inst: AlpInstance.Handle, transID: TransID]; Create: PROCEDURE [instHandle: AlpInstance.Handle, createLocalWorker: BOOLEAN _ TRUE] RETURNS [handle: Handle]; CreateWithTransID: PROCEDURE [instHandle: AlpInstance.Handle, transID: TransID, createLocalWorker: BOOLEAN _ TRUE] RETURNS [handle: Handle]; CreateWorker: PROCEDURE[handle: Handle, coordinator: FileStore]; Finish: PROCEDURE[handle: Handle, requestedOutcome: RequestedOutcome, continue: BOOLEAN _ FALSE] RETURNS[outcome: Outcome]; AssertAlpineWheel: PROCEDURE[handle: Handle, enable: BOOLEAN]; GetVolumeGroup: PROCEDURE[handle: Handle, volumeGroupID: VolumeGroupID, lock: LockOption _ [none, wait]] RETURNS[volumes: LIST OF VolumeID]; GetNextVolumeGroup: PROCEDURE[handle: Handle, previousGroup: VolumeGroupID _ nullVolumeGroupID, lock: LockOption _ [none, wait]] RETURNS[volumeGroupID: VolumeGroupID]; GetEnclosingVolumeGroup: PROCEDURE[handle: Handle, volumeID: VolumeID, lock: LockOption _ [none, wait]] RETURNS[volumeGroupID: VolumeGroupID]; CreateOwner: PROCEDURE[handle: Handle, volumeGroupID: VolumeGroupID, owner: OwnerName, properties: LIST OF OwnerPropertyValuePair, enforceTotalQuota: BOOLEAN _ FALSE] RETURNS[spaceLeftOnVolumeGroup: PageCount]; DestroyOwner: PROCEDURE[handle: Handle, volumeGroupID: VolumeGroupID, owner: OwnerName]; ReadNextOwner: PROCEDURE[handle: Handle, volumeGroupID: VolumeGroupID, previousOwner: OwnerName _ NIL, desiredProperties: OwnerPropertySet _ allOwnerProperties] RETURNS[owner: OwnerName, properties: LIST OF OwnerPropertyValuePair]; ReadOwnerProperties: PROCEDURE[handle: Handle, volumeGroupID: VolumeGroupID, owner: OwnerName, desiredProperties: OwnerPropertySet _ allOwnerProperties] RETURNS[properties: LIST OF OwnerPropertyValuePair]; WriteOwnerProperties: PROCEDURE[handle: Handle, volumeGroupID: VolumeGroupID, owner: OwnerName, overCommitQuotasIfNeeded: BOOLEAN _ FALSE, properties: LIST OF OwnerPropertyValuePair]; ReadOwnerDBProperties: PROCEDURE[handle: Handle, volumeGroupID: VolumeGroupID] RETURNS[nOwners, nEntriesUsed, nEntries: NAT, totalQuota, totalSpaceInUse, volumeGroupSize: PageCount]; ReorganizeOwnerDB: PROCEDURE[handle: Handle, volumeGroupID: VolumeGroupID, nEntries: NAT]; END. AlpTransaction.mesa Last edited by Kolling on June 3, 1983 2:44 pm Taft on June 2, 1983 11:22 am In addition to the errors documented for the corresponding Alpine procedures, all of the procedures defined in this interface can also error RPC.CallFailed[RPC.CallFailure]. At the moment, Alpine ignores the transID and lock parameters for GetVolumeGroup, GetNextVolumeGroup, and GetEnclosingVolumeGroup. Edit Log Initial: Kolling: February 14, 1983 3:56 pm: package to aid clients, in conjunction with AlpInstance and AlpFile. ส– "cedar" style˜Jšœ™šœ™Jšœ™Jšœ™—unitšฯk ˜ Icodešœœ๓˜‹Lšœ œ ˜Lšœœ˜+—šœœ˜#Lš˜L˜L˜LLšœ œ˜.Lšœ œ ˜0L˜GLšœ œ˜*Lšœ œ˜.Lšœœ&˜Lšœœœ˜!Kšœœœ˜Kšœœœ-˜BJ˜Jšœฐ™ฐKš ฯnœ œ5œœœ˜oKš žœ œ3œœœœ˜ŒKšž œ œ)˜@Kš žœ œ?œœœ˜|Kšžœ œœ˜>Kš žœ œ4œœ œœ ˜ŒKšžœ œdœ˜งKšžœ œ*œœ˜ŽKšž œ œ5œœœ,œœœ$˜าKšž œ œC˜ZKš ž œ œJœ<œœœ˜็Kš žœ œ{œ œœ˜อKš žœ œ[œœœœ˜ทKšžœ œ/œ"œ;˜ถKšžœ œ.œ œ˜ZKšœ˜—J™™J™J™s—J˜J˜—…—Œม