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

Ulm's Oberon Library:


RemoteIterators - support export and import of iterators


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

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


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:

export, if supported, the objects of the iterator.
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.


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


constant strings of arbitrary length
allows to convert objects in a sequence of bytes and vice versa
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