Oberon || Library || Module Index || Search Engine || Definition || Module


Ulm's Oberon Library:
WebNames


NAME

WebNames - provide a name space for web objects

SYNOPSIS

TYPE NameSpace = POINTER TO NameSpaceRec;
TYPE NameSpaceRec =
   RECORD
      (Disciplines.ObjectRec)
   END;


PROCEDURE GetObject(space: NameSpace; path: Streams.Stream; VAR obj: NamedObjects.Object): BOOLEAN; PROCEDURE InsertObject(space: NameSpace; path: Streams.Stream; obj: NamedObjects.Object): BOOLEAN; PROCEDURE DeleteObject(space: NameSpace; path: Streams.Stream): BOOLEAN; PROCEDURE CreateNameSpace(VAR space: NameSpace);

DESCRIPTION

The module WebNames uses a name space to insert, delete and resolve WebObjects. The hierachic name for each object ist evaluated to a sequence of flat names which are arranged like files and directories in a Unix file system. URL escape sequences (a percent sign and a two digit hex number, %XX) are allowed in the names. They are resolved before performing an operation. Simultaneous operations by different tasks are allowed. Synchronization problems are considered.

CreateNameSpace creates a new name space.

InsertObject inserts an object into the given name-space space under the supplied path. Necessary directory-nodes are inserted, too. With a successful insert the result is TRUE.

DeleteObject deletes object with given path from name-space space. Directory-nodes up to last fork are also deleted. The procedure returns FALSE if there are errors.

GetObject fetches object of a given path from name-space space. Returns FALSE if there are errors or if there is no object with that path in the space.

DIAGNOSTICS

All procedures return TRUE on success, otherwise FALSE.

SEE ALSO

NamedObjects
add Names functionality to arbitrary objects
Names
abstraction for name hierarchies
Streams
stream operations

AUTHOR

Manfred Rueß, University of Ulm

BUGS

There may remain directory nodes if there is an error when deleting nodes.
Edited by: borchert, last change: 1998/04/24, revision: 1.1, converted to HTML: 1998/04/24

Oberon || Library || Module Index || Search Engine || Definition || Module