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


Ulm's Oberon Library:
RemoteIterators


NAME

RemoteIterators - support export and import of iterators

SYNOPSIS

CONST exportObjects = 0; copyObjects = 1;
TYPE Mode = SHORTINT; (* exportObjects or copyObjects *)


PROCEDURE SetMode(it: Iterators.Iterator; packetlen: INTEGER; mode: Mode);

DESCRIPTION

RemoteIterators is a service provider (see RemoteObjects and Services) which allows to export and import iterators created by Iterators.

SetMode allows to parameterize subsequent exports of it. packetlen specifies the number of objects which are transferred in one packet over the network (a non-positive value means that all objects are to be sent in one packet) and mode selects how objects of the iterator are to be sent:

exportObjects
export, if supported, the objects of the iterator.
copyObjects
copy (by using PersistentObjects.Write and PersistentObjects.Read) the objects.
Note that RemoteIterators considers mode as a default way of transferring objects. If the given mode is not applicable, RemoteIterators checks for the other variant. Strings of type ConstStrings.String are additionally supported. Objects of the iterator which can be neither exported nor copied are silently ignored.

By default, RemoteIterators tries to export objects and uses a packet length of 1.

DIAGNOSTICS

RemoteIterators does not generate itself any error events. See RemoteObjects for the usual set of trouble which might occur on network connections.

SEE ALSO

ConstStrings
constant strings of arbitrary length
PersistentObjects
allows to convert objects in a sequence of bytes and vice versa
RemoteObjects
general mechanism to export and import objects

Edited by: borchert, last change: 2002/02/15, revision: 1.2, converted to HTML: 2002/02/15

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