DIRECTORY DB USING [ Entity, Domain, Attribute, Index, Relation], Rope USING [ ROPE] ; HickoryStorage: CEDAR DEFINITIONS = BEGIN OPEN Rope, DB; PropertyTypes: TYPE = { Int, Bool, Time, String}; PropertyRel: TYPE = RECORD [ -- to store properties of one type for an event Name: Rope.ROPE, Rel: Relation, Event: Attribute, PropValue: Attribute, Property: Attribute, EventIndex: Index ]; ProtectedData: TYPE = MONITORED RECORD [ eventDomain: Domain, -- domains for events and all the rope attributes iconDomain: Domain, messageDomain: Domain, textDomain: Domain, placeDomain: Domain, repTimeDomain: Domain, groupDomain: Domain, propertyDomain: Domain, typeDomain: Domain, BooleanEntity: Entity, IntegerEntity: Entity, TimeEntity: Entity, RopeEntity: Entity, eventRel: RECORD [ -- this describes the event relation Name: Rope.ROPE, Rel: Relation, Key: Attribute, -- key for tuple Time: Attribute, -- when does event start RepeatType: Attribute, -- is it a repeated event Forgotten: Attribute, -- has it been forgotten Duration: Attribute, -- how long ( minutes) LeadTime: Attribute, -- when is reminder posted NagTime: Attribute, -- how long is reminder posted KeepTime: Attribute, -- how long to keep event in data base? Text: Attribute, Message: Attribute, -- walnut msg. id. Place: Attribute, -- where is it happening Protection: Attribute, -- { Public, Private} Icon: Attribute, -- how does the reminder icon look Reminder: Attribute, -- is event a reminder or not? TimeIndex: Index ], repeatRel: RECORD [ -- this thing describes the repeated event relation Name: Rope.ROPE, Rel: Relation, Event: Attribute, FirstTime: Attribute, LastOccurred: Attribute, RepeatType: Attribute, RepeatTime: Attribute, -- a rope for complicated repetitions RepeatUntil: Attribute, -- until when to schedule repeated events EventIndex: Index ], iconRel: RECORD [ -- the icon relation in data base Name: Rope.ROPE, Rel: Relation, Key: Attribute, IconFlavor: Attribute, IconLabel: Attribute ], administrativeRel: RECORD [ -- the relation to store administrative stuff Name: Rope.ROPE, Rel: Relation, CleanTime: Attribute, -- when was Hickory last maintained Owner: Attribute, -- who is the owner of the Hickory DB PassWord: Attribute ], cacheRel: RECORD [ -- to keep the cached repetitions Name: Rope.ROPE, Rel: Relation, Event: Attribute, Time: Attribute, TimeIndex: Index ], groupRel: RECORD [ -- to keep grouped events Name: Rope.ROPE, Rel: Relation, Event: Attribute, Group: Attribute, EventIndex: Index ], propertyDescriptorRel: RECORD [ -- to store the description of properties Name: Rope.ROPE, Rel: Relation, Property: Attribute, Type: Attribute ], propertyRels: ARRAY PropertyTypes OF PropertyRel, activity: BOOLEAN _ FALSE, -- was there any activity lately? segmentName: ROPE , -- data base segment name, read from user.profile owner: BOOLEAN -- is owner using data base ]; -- ProtectedData protData: ProtectedData; SetUpRelationSchemes: PROCEDURE; END. /ivy/binding/hickory/hickoryStorage defines the relations and other protected monitor data of Hickory Last Edited by: Binding, July 25, 1984 3:58:44 pm PDT The protected data of the monitor initializes the data base schemes and initializes all global variables of protData. Κh˜Jšœ#™#JšœA™AJ™5J˜šΟk ˜ J˜7Jšœœœ˜J˜J˜—šœœ ˜#Jšœœœ˜headšœ!™!JšΟb œœ˜1J˜šž œ œΟc/˜LJšœ œ˜J˜J˜J˜J˜J˜J˜J˜—šž œœ œœ˜)J˜JšœŸ2˜LJ˜J˜J˜J˜J˜J˜J˜J˜J˜J˜J˜J˜J˜J˜šœ œŸ$˜9Jšœ œ˜Jšœ˜JšœŸ˜!JšœŸ˜*JšœŸ˜1JšœŸ˜/JšœŸ˜,JšœŸ˜0JšœŸ˜3JšœŸ'˜=Jšœ˜JšœŸ˜'JšœŸ˜+JšœŸ˜-JšœŸ"˜5JšœŸ˜4J˜Jšœ˜J˜—šœ œŸ4˜JJšœ œ˜Jšœ˜Jšœ˜Jšœ˜J˜Jšœ˜JšœŸ&˜>JšœŸ)˜BJ˜Jšœ˜J˜J˜—šœ œŸ!˜4Jšœ œ˜J˜J˜J˜J˜J˜J˜—šœœŸ-˜IJšœ œ˜J˜JšœŸ#˜;JšœŸ%˜8J˜J˜—J˜šœ œŸ"˜5Jšœ œ˜J˜J˜J˜J˜J˜J˜—šœ œŸ˜,Jšœ œ˜J˜J˜J˜J˜J˜J˜—šœœŸ)˜IJšœ œ˜J˜J˜J˜J˜J˜—˜1J˜—Jšœ œœŸ!˜