Skip to content

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]