deephaven.plugin.object_type¶
- class BidirectionalObjectType[source]¶
Bases:
ObjectTypeBase class for an object type that can continue to send responses to the client, or receive requests from the server even after it is fetched.
- authorization_export_behavior()¶
Declares how the server should authorize the references this plugin exports to the client.
"transform": the server applies the authorization transform to every reference this plugin exports, in the requesting user’s context. Use this when the plugin does not apply authorization itself."manual": the plugin takes responsibility for authorizing its own exported references (for example by callingdeephaven.plugin_authorization.transformbefore passing objects toon_data). The server does not additionally transform them."unset"(default): the plugin makes no declaration. The server’sPluginReferenceAuthorization.failClosedpolicy determines the effective behavior.
- Return type:
Literal['transform','manual','unset']- Returns:
One of
"transform","manual", or"unset".
- abstract create_client_connection(obj, connection)[source]¶
Signals creation of a client stream to the specified object. The returned MessageStream implementation will be called with each received message from the client, and can call the provided connection parameter to send messages as needed to the client.
Before returning, this method must call connection.on_message with some initial payload, so that the client has an initial view of the object.
- Return type:
- abstract is_type(obj)¶
Returns True if, and only if, the object is compatible with this object type.
- Return type:
bool
- abstract property name¶
The name of the object type.
- class Exporter[source]¶
Bases:
ABCThe interface for creating new references during FetchOnlyObjectBase.to_bytes.
- class FetchOnlyObjectType[source]¶
Bases:
ObjectTypeBase class for an object type which will only be fetched once, rather than support streaming requests or responses.
- authorization_export_behavior()¶
Declares how the server should authorize the references this plugin exports to the client.
"transform": the server applies the authorization transform to every reference this plugin exports, in the requesting user’s context. Use this when the plugin does not apply authorization itself."manual": the plugin takes responsibility for authorizing its own exported references (for example by callingdeephaven.plugin_authorization.transformbefore passing objects toon_data). The server does not additionally transform them."unset"(default): the plugin makes no declaration. The server’sPluginReferenceAuthorization.failClosedpolicy determines the effective behavior.
- Return type:
Literal['transform','manual','unset']- Returns:
One of
"transform","manual", or"unset".
- abstract is_type(obj)¶
Returns True if, and only if, the object is compatible with this object type.
- Return type:
bool
- abstract property name¶
The name of the object type.
- class MessageStream[source]¶
Bases:
ABCA stream of messages, either sent from server to client or client to server. ObjectType implementations provide an instance of this interface for each incoming stream to invoke as messages arrive, and will likewise be given an instance of this interface to be able to send messages to the client.
- class ObjectType[source]¶
Bases:
PluginAn object type plugin. Useful for serializing custom objects between the server / client.
- authorization_export_behavior()[source]¶
Declares how the server should authorize the references this plugin exports to the client.
"transform": the server applies the authorization transform to every reference this plugin exports, in the requesting user’s context. Use this when the plugin does not apply authorization itself."manual": the plugin takes responsibility for authorizing its own exported references (for example by callingdeephaven.plugin_authorization.transformbefore passing objects toon_data). The server does not additionally transform them."unset"(default): the plugin makes no declaration. The server’sPluginReferenceAuthorization.failClosedpolicy determines the effective behavior.
- Return type:
Literal['transform','manual','unset']- Returns:
One of
"transform","manual", or"unset".
- abstract is_type(obj)[source]¶
Returns True if, and only if, the object is compatible with this object type.
- Return type:
bool
- abstract property name¶
The name of the object type.