-- Transport Mechanism Registration Server:  cache for name lookup

-- [Juniper]<Grapevine>MS>RegCacheDefs.mesa

-- Andrew Birrell  25-Jun-81 10:59:14

DIRECTORY
BodyDefs	USING[ Connect, RName, Timestamp ],
ObjectDirDefs	USING[ ObjectNumber ],
ProtocolDefs	USING[ RNameType ],
RegBTreeDefs	USING[ RegState ];

RegCacheDefs: DEFINITIONS =

BEGIN

AddName:	PROC[ name: BodyDefs.RName,
		      knownReg: BOOLEAN,
		      type:     ProtocolDefs.RNameType,
		      stamp:    BodyDefs.Timestamp,
		      obj:      ObjectDirDefs.ObjectNumber ];

ReadName:	PROC[ name: BodyDefs.RName ]
		RETURNS[ type: ProtocolDefs.RNameType,
			 stamp: BodyDefs.Timestamp,
			 obj: ObjectDirDefs.ObjectNumber ];

FlushName:	PROC[ BodyDefs.RName ];

TestKnownReg:	PROC[ name: BodyDefs.RName ]
		RETURNS[ state: RegBTreeDefs.RegState ];
   -- returns "bad" if not in cache --

AddConnect:	PROC[ name: BodyDefs.RName,
		      stamp: BodyDefs.Timestamp,
		      connect: BodyDefs.Connect ];

ReadConnect:	PROC[ name: BodyDefs.RName,
		      connect: BodyDefs.Connect ]
		RETURNS[ found: BOOLEAN ];

END.