<> <> <> <> <> DIRECTORY AlpineEnvironment USING[AccessList, allOwnerProperties, Conversation, LockFailure, NeededAccess, OperationFailure, OwnerName, OwnerPropertySet, OwnerPropertyValuePair, PageCount, TransID, UniversalFile, UnknownType, VolumeGroupID]; AlpineDebug: --CEDAR, that is, it would be if Lupine could handle safe interfaces. -- DEFINITIONS = BEGIN AccessList: TYPE = AlpineEnvironment.AccessList; -- crock city, for lupine. <> ReadOwnerFileHeader: PROCEDURE[conversation: AlpineEnvironment.Conversation, transID: AlpineEnvironment.TransID, volumeGroupID: AlpineEnvironment.VolumeGroupID] RETURNS[version: NAT, recordedVolGroupID: AlpineEnvironment.VolumeGroupID, totalQuota, quotaLeft: AlpineEnvironment.PageCount, numberOfOwners, numberOfOwnerSlotsInUse, maxNumberOfOwnersAllowed: NAT]; <> <> ReadNextOwnerRecord: PROCEDURE[conversation: AlpineEnvironment.Conversation, transID: AlpineEnvironment.TransID, volumeGroupID: AlpineEnvironment.VolumeGroupID, contRecNum: INT _ 0, desiredProperties: AlpineEnvironment.OwnerPropertySet _ AlpineEnvironment.allOwnerProperties] RETURNS[entryEmpty, entryValid: BOOLEAN, owner: AlpineEnvironment.OwnerName, properties: LIST OF AlpineEnvironment.OwnerPropertyValuePair, nextContRecNum: INT]; <> <> ChangeSpaceForOwner: PROCEDURE [conversation: AlpineEnvironment.Conversation, transID: AlpineEnvironment.TransID, volumeGroupID: AlpineEnvironment.VolumeGroupID, owner: AlpineEnvironment.OwnerName, nPages: AlpineEnvironment.PageCount]; <> ReadDBUniversalFile: PROCEDURE[volumeGroupID: AlpineEnvironment.VolumeGroupID] RETURNS[dBID: AlpineEnvironment.UniversalFile]; <> ReportAccessCacheStats: PROCEDURE RETURNS [nCacheEntries: NAT, statsCacheHit, statsGrapevineAuthorized, statsGrapevineNotAuthorized, statsRegServersDown, statsIndivGrapeNotAuthorized: INT]; ReportAccessVolatileStats: PROCEDURE RETURNS [nRegs, nInits, nUnRegs, nReorganizes, nEnumAlls, nAllocReqsWin, nAllocReqsLose, nDeallocReqs, nRemoveOwner, nEnumFindWin, nEnumFindLose, nSetEnums, nActions, nPhaseOnes, nPhaseTwos, nAborts: INT]; CrashSystem: PROCEDURE [conversation: AlpineEnvironment.Conversation, transID: AlpineEnvironment.TransID]; <> <> AccessFailed: ERROR[missingAccess: AlpineEnvironment.NeededAccess]; LockFailed: ERROR[why: AlpineEnvironment.LockFailure]; OperationFailed: ERROR[why: AlpineEnvironment.OperationFailure]; StaticallyInvalid: ERROR; Unknown: ERROR[what: AlpineEnvironment.UnknownType]; END.