Interface ObjectType

All Superinterfaces:
Plugin, Registration
All Known Implementing Classes:
EchoObjectType, FigureWidgetTypePlugin, HierarchicalTableTypePlugin, ObjectTypeBase, ObjectTypeBase.FetchOnly, ObjectTypeClassBase, ObjectTypeClassBase.FetchOnly, PartitionedTableTypePlugin

public interface ObjectType extends Plugin
An "object type" plugin. Useful for serializing custom objects between the server / client.
  • Method Details

    • name

      String name()
      The name of the object type.
      Returns:
      the name
    • isType

      boolean isType(Object object)
      Returns true if, and only if, the object is compatible with this object type.
      Parameters:
      object - the object
      Returns:
      true if the object is compatible
    • clientConnection

      Signals creation of a client stream to the provided object. The returned MessageStream implementation will be called with each received message from the client, and can call the provided connection instance to send messages as needed to the client.
      Parameters:
      object - the object to create a connection for
      connection - a stream to send objects to the client
      Returns:
      a stream to receive objects from the client
      Throws:
      ObjectCommunicationException - may throw an exception received from ObjectType.MessageStream.onData(ByteBuffer, Object...) calls