This package contains all the building blocks that you need in order to build a fully functional Spiderwiz application. You will find here a short description of the classes and hints how to use them. For a thorough description look at the documentation of each class, and for a detail usage instructions look at our tutorials.
Your starting point is class
Main. Extend it with your own class, in which you will define the
objects that you produce or consume, register object handlers and provide custom initialization code.
Next is to define your data objects library. A Data Object is a class that extends
DataObject and adds properties for the specific object type. If you are a producer of that
object type, create the object (with
DataObject.createChild()) and set its properties, or edit the properties of an existing object, then
commit the object. If you are a consumer of that object type, implement event
handling methods of the class.
For many applications this is all you need in order to achieve your tasks. Other classes help you in advanced scenarios:
Resetter can be used in case of communication problems, when a consumer detects that an object
stream has gone out of sequence. In that case it sends an object reset request to the producer, which can use the provided
Resetter for moderated streaming of reset data.
Filter is a base class for a filtering object that you need to use with
An extension of it is provided -
CatchAllFilter - that catches all data objects of a
The current Spiderwiz version comes with implementation of three communication protocols - TCP/IP sockets, WebSockets and local file
input-output (the latter is used mainly for offline debugging). You can extend the framework by writing your own communication
plugins. For that purpose, we provide two base classes that you can extend.
Channel is the base
class for a communication channel (like a TCP/IP socket, or a WebSocket session).
ServerChannel is the base class for implementations of server endpoints, which accept
session requests from clients and establish appropriate channels.
The framework also provides means for importing data from and exporting it to general services that are outside of the framework.
ImportHandler is used for that purpose. Its default implementation reads general
text lines from the specified communication channel and passes it over to data objects for parsing and handling, as well as
writing text lines generated by the objects to the specified channel. You can extend this class to provide a custom import/export
Class Summary Class Description CatchAllFilter<T extends DataObject>An implementation of
Filterthat catches all data objects of a specific type.
ChannelA base class for classes that handle data communication. DataObjectA base class for all Data Objects. Filter<T extends DataObject>A base class for implementing Data Object Filters. ImportHandlerThis class provides a mechanism for importing data from external resources into the framework and exporting data from the framework to external resources. MainStarting point for all Spiderwiz applications. Main.ObjectCodesObject codes of predefined Data Objects. QueryObjectA base class for Query Objects. ResetterData Object Resetting is the operation that takes place when a consumer of a specific data object type detects loss of data. ServerChannelThis is a base class for implementations of server channels.