Flow related data objects
flow
A flow
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
id | string | the id of the flow | [null] |
name | string | the name of the flow | [not null] |
owner | string | the UID of the flow owner | |
isPublic | bool | public state flag | |
config | flowConfig | the configuration of the flow | [not null] |
peer | controlPeer | the controlPeer running the flow | |
running | bool | the flow's run state |
flowConfig
A flowConfig
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
id | string | the id of the flow config | [null] |
name | string | the name of the flow | [not null] |
bricks | list of brick | a list of bricks used in the flow | [not null] |
connections | list of connection | a list of connections between the bricks | [not null] |
autoscaleQueueLevel | integer | Output queue level (number of data packets) that triggers autoscaling | |
autoscaleMaxInstances | integer | Maximum number of instances for autoscaling | |
exitAfterIdleSeconds | integer | Idle time after which automatic teardown is triggered | |
message_type | messageType | Description of the flows global message type | [not null] |
messageType
structure of the message type object
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
json | list of NestedTypeDefinition | JSON representation of the message type | |
UJOSchema | string | UJOSchema of the message type |
NestedTypeDefinition
structure of the message type's JSON representation
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
name | string | type name | |
type | list of string | type identifyier (list for limited variants) | |
key_value_types | list of string | types of key and value for maps [key, value] | length = 2 |
list_type | string | type of a list | |
optional | bool | flag for optional object elements | |
doc | string | documentation of the type | |
constraints | list of Constraint | type limitations | |
--------------------- | ---------------------------- | ------------------------------------------------ | ----------- |
elements | list of NestedTypeDefinition | elements of objects/records without elements item | |
without elements item | objects/records in these elements need own types |
Note: A nestedTypeDefinition can contain the item "elements" if its type is "object" or "record". If one of these elements is itself is supposed to be of type object/record is not supportedto embed the elements of that nested record/object directly. A new NestedTypeDefinition needs to be defined and appended to the list of NestedTypeDefinitions in messageType/json for these nested objects/records. The name of that new type is to be used as "type" for the element.
Constraint
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
length | list of variant | length constraint, e.g. (.. 12) | |
in | list of variant | in constraint | |
not | string | not in/null constraints including optional default |
controlPeer
The control peer running the flow (set by the Grid Manager)
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
address | string | IP address of the control peer | |
state | int | State of the control peer (0 registered, 1 active) |
brick
A brick
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
id | string | id of the brick type (see availabe brick) | [not null] |
instanceID | string | id of the brick instance | [not null] |
family | string | brick family | [not null] |
name | string | brick name | [not null] |
parameters | list of parameter | parameters of the brick | |
autoscaleQueueLevel | integer | Output queue level that triggers autoscaling | |
autoscaleMaxInstances | integer | Maximum number of instances for autoscaling | |
exitAfterIdleSeconds | integer | Idle time after which automatic teardown is triggered | |
location | location | relative location on the canvas in the UI | |
portsdescription | portsdescription | short description of the ports | [not null] |
inputPorts | list of port | input ports | |
outputPorts | list of port | output ports |
portsdescription
Description of brick ports
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
schemaFile | string | file name of file with UJOschema port description | |
input | map | input port names: datatype Names | |
output | map | input port names: datatype Names |
port
A brick ports
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
schema | string | UJOschema port description | |
name | string | port name | |
typeName | string | port type name in UJOSchema | |
BinarySchema | bytes | binary representation of schema | |
JSONSchema | list of NestedTypeDefinition | JSON representation of schema | |
MappingRules | list of MappingRule | Mapping rules for the port |
MappingRule
MappingRule holds the two ElementReferences that are to be mapped,
e.g. to map the element "line" of the object "book"
<book = { line -> string};>
to the element "article" of the
record "newspaper" < newspaper = [ article = string]; >
your apply a MappingRule:
< mappingRule=[["book","line"],["newspaper","article"]] >
Identifier | Type | Constraints |
---|---|---|
MappingRule | list of ElementReference | length( 2 ) |
ElementReference
ElementReference is the reference to the element in an object,
e.g. the element "line" of the object "book":
<book = { line -> string};>
which would be expressed as: <elementReference = ["book", "line"]
>
Identifier | Type | Constraints |
---|---|---|
ElementReference | list of string |
parameter
Brick parameters
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
key | string | parameter key | [not null] |
value | string | parameter value | |
type | string | data type of the parameter |
location
Relative location of a brick in x/y direction.
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
x | float64 | Relative location on Canvas x-direction | [not null, in [0, 1]] |
y | float64 | Relative location on Canvas y-direction | [not null, in [0, 1]] |
connection
Connection between bricks in a flow
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
source | string | source brick | [not null] |
target | string | target brick | [not null] |
ports | list of port | source and target ports used to connect | [not null] |
port
Source and target port identification for a connection
Items:
Name | Type | Doc | Constraints |
---|---|---|---|
source | string | source port identification | [not null] |
target | string | target port identification | [not null] |