Events: System Events

System events are events that are emitted by the system itself. There is no other way to get this information than through these events.

Entity Types

Entity TypeComponentPropertyData TypeSocket Type
System EventeventeventAnyOutput
labeledlabelStringNone

Types of Events

LabelDescriptionPayload
/io/reactive-graph/events/type/component/createdTriggered if a component has been createdName of the created component
/io/reactive-graph/events/type/component/deletedTriggered if a component has been deletedName of the deleted component
/io/reactive-graph/events/type/entity/createdTriggered if an entity type has been createdName of the created entity type
/io/reactive-graph/events/type/entity/deletedTriggered if an entity type has been deletedName of the deleted entity type
/io/reactive-graph/events/type/relation/createdTriggered if a relation type has been createdName of the created relation type
/io/reactive-graph/events/type/relation/deletedTriggered if a relation type has been deletedName of the deleted relation type
/io/reactive-graph/event/type/changedTriggered if the type system has changed
/io/reactive-graph/events/instance/entity/createdTriggered if an entity instance has been createdUUID of the created entity instance
/io/reactive-graph/events/instance/entity/deletedTriggered if an entity instance has been deletedUUID of the deleted entity instance
/io/reactive-graph/events/instance/relation/createdTriggered if a relation instance has been createdEdge key of the created relation instance
/io/reactive-graph/events/instance/relation/deletedTriggered if a relation instance has been deletedEdge key of the deleted relation instance
/io/reactive-graph/events/flow/createdTriggered if a flow has been createdUUID of the created flow
/io/reactive-graph/events/flow/deletedTriggered if a flow has been deletedUUID of the deleted flow

Label

Subscribing to these events is easily possible with a label.

GraphQL Subscription

It is possible to subscribe to these events via GraphQL subscription.

Transform and Zip Multiple Events

Instead of subscribing multiple events directly you can zip multiple events and subscribe to the result.

Get new components

subscription getSystemEventComponentCreated {
  entity(label: "/io/reactive-graph/event/type/component/created", propertyName: "event") {
    name
    value
    type {
      dataType
      socketType
    }
  }
}

Get which components have been deleted

subscription getSystemEventComponentDeleted {
  entity(label: "/io/reactive-graph/event/type/component/deleted", propertyName: "event") {
    name
    value
    type {
      dataType
      socketType
    }
  }
}

Get new flows

subscription getSystemEventFlowCreated {
  entity(label: "/io/reactive-graph/event/instance/flow/created", propertyName: "event") {
    name
    value
    type {
      dataType
      socketType
    }
  }
}

Get which flows have been deleted

subscription getSystemEventCFlowDeleted {
  entity(label: "/io/reactive-graph/event/instance/flow/deleted", propertyName: "event") {
    name
    value
    type {
      dataType
      socketType
    }
  }
}