<> <> <> DIRECTORY FSPseudoServers USING [PseudoServerList], IO USING [STREAM], Rope USING [ROPE]; FSPseudoServersExtra: CEDAR DEFINITIONS = BEGIN ROPE: TYPE = Rope.ROPE; STREAM: TYPE = IO.STREAM; PseudoServerList: TYPE = FSPseudoServers.PseudoServerList; <> <> <> <> <> <<>> <> <<>> <> <<>> <> <<>> <> <<... translates the server name into the server name specified for writing. If no such translation is present, returns the original server name.>> <<>> <> <<... translates the server name into the server names specified for reading. If no such translation is present, returns a list containing the original server name.>> <<>> <> <<... determines if the server name implies not checking for remote versions. This is useful to reduce server traffic in cases where the files are known to be frozen.>> <<>> Lookup: PROC [server: ROPE] RETURNS [PseudoServerList]; <<... returns the PseudoServerList for the given name (NIL if no such translation).>> <<>> DeletePseudoServer: PROC [server: ROPE] RETURNS [PseudoServerList]; <<... deletes the given pseudo server (if any) from the root PseudoServerList, and returns the deleted element from the list (NIL if no such element).>> InsertPseudoServer: PROC [new: PseudoServerList]; <<... inserts the first item in the PseudoServerList into the root PseudoServerList.>> PseudoServerFromRope: PROC [rope: ROPE] RETURNS [error: ROPE, new: PseudoServerList]; <<... parses the given line into a new single element PseudoServerList. If error = NIL, then new # NIL, and is the new pseudo server entry. If error # NIL, then new = NIL.>> RopeFromPseudoServer: PROC [list: PseudoServerList] RETURNS [ROPE]; <<... turns the first entry in the PseudoServerList into a rope parsable by PseudoServerFromRope. If list = NIL, NIL is returned.>> END.