OBJECT

BitmapRouterNode

BitMapRouterNodes use a bitmapper function (either inline or referenced) to construct a bitmap of truthy values for each message processed. The message bitmap is then and'ed with route bitmaps. If the result of the and is equal to the route bitmap then the message is sent along that route.

link GraphQL Schema definition

  • type BitmapRouterNode implements Node {
  • # The config, in JSON object format (i.e. - dict, map).
  • config: AWSJSON
  • # When and who created.
  • created: AtBy!
  • # A human-readable description.
  • description: String
  • # A Python code string that contains a single top-level function definition.
  • # This function must have the signature (*, context, message, source, **kwargs)
  • # and return an integer.
  • # Mutually exclusive with managedBitmapper.
  • inlineBitmapper: String
  • # When and who modified.
  • lastModified: AtBy!
  • # The logging level.
  • loggingLevel: LogLevel
  • # A managed BitmapperFunction. Mutually exclusive with inlineBitmapper.
  • managedBitmapper: BitmapperFunction
  • # The name.
  • name: String!
  • # A list of the Edges messages are received on.
  • receiveEdges: [Edge]
  • # The MessageType that this Node is capable of receiving.
  • receiveMessageType: MessageType
  • # The list of Python requirements, in pip format.
  • requirements: [String!]
  • # The route table. A route table is a JSON object with hexidecimal (base-16) keys
  • # (the route bitmaps - e.g. 0xF1) and a list of target Node names as the values.
  • routeTable: AWSJSON!
  • # A list of the Edges messages are sent on.
  • sendEdges: [Edge]
  • # The MessageType that this Node is capable of sending.
  • sendMessageType: MessageType
  • # Is the Node stopped; null == false.
  • stopped: Boolean
  • # The Tenant.
  • tenant: Tenant!
  • # Deletes this Node and all of its Edges.
  • #
  • # Arguments
  • # drainEdges: If sending Edges attached to this Nodes should be
  • # drained. Defaults to True.
  • Delete(drainEdges: Boolean): Boolean!
  • # Lists the changes.
  • #
  • # Arguments
  • # endDateTime: The end date/time (inclusive) to list changes for
  • # in ISO8601 format. Defaults to now.
  • # exclusiveStartKey: The lastEvaluatedKey from a previous
  • # ChangeResult. Used when paginating.
  • # limit: Used for limiting the number of results when paginating.
  • # Defaults to "all".
  • # sortAscending: True for ascending results, False for descending
  • # result. Defaults to True.
  • # startDateTime: The start date/time (inclusive) to list changes
  • # for in ISO8601 format. Defaults to the beginning of time.
  • ListChanges(
  • endDateTime: AWSDateTime,
  • exclusiveStartKey: AWSJSON,
  • limit: Int,
  • sortAscending: Boolean,
  • startDateTime: AWSDateTime
  • ): ChangeResult!
  • # Lists log events that are emitted by the inlineTransformer/managedTransformer
  • #
  • # Arguments
  • # endDateTime: The end date/time, inclusive, to list the log
  • # events to. Defaults to now.
  • # filterPattern: The filter pattern to apply, in AWS Cloudwatch
  • # Logs filter pattern format (
  • # https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html
  • # ).
  • # limit: The number of log events to return. Maximum 10,000.
  • # nextToken: The nextToken returned from a previous call to
  • # ListLogEvents.
  • # startDateTime: The start date/time, inclusive, to list the log
  • # events from. Defaults to the beginning of time.
  • ListLogEvents(
  • endDateTime: AWSDateTime,
  • filterPattern: String,
  • limit: Int,
  • nextToken: String,
  • startDateTime: AWSDateTime
  • ): LogEventResults!
  • # Starts a stopped Node. Has no effect on an already running Node.
  • Start: Boolean!
  • # Stops a running Node. Has no effect on an already stopped Node.
  • Stop: Boolean!
  • # Updates and returns the BitmapRouterNode
  • #
  • # Arguments
  • # config: The config, in JSON object format (i.e. - dict, map).
  • # description: A human-readable description.
  • # inlineBitmapper: A Python code string that contains a single
  • # top-level function definition.
  • # This function must have the signature (*, context, message, source, **kwargs)
  • # and return an integer.
  • # Mutually exclusive with managedBitmapper.
  • # loggingLevel: The logging level.
  • # managedBitmapper: The name of a managed BitmapperFunction.
  • # Mutually exclusive with inlineBitmapper.
  • # requirements: The list of Python requirements, in pip format.
  • # routeTable: The route table. A route table is a JSON object
  • # with hexidecimal (base-16) keys (the route bitmaps - e.g. 0xF1) and a list of
  • # target Node names as the values.
  • Update(
  • config: AWSJSON,
  • description: String,
  • inlineBitmapper: String,
  • loggingLevel: LogLevel,
  • managedBitmapper: String,
  • requirements: [String!],
  • routeTable: AWSJSON
  • ): BitmapRouterNode!
  • # Validates the supplied code against the supplied message.
  • #
  • # Arguments
  • # code: The code to validate.
  • # message: The message to use for validation.
  • # loggingLevel: The loggingLevel to use during the validation.
  • # Defaults to INFO.
  • # source: The source "node" of the test message. Defaults to
  • # "Validation".
  • Validate(
  • code: String!,
  • message: String!,
  • loggingLevel: LogLevel,
  • source: String
  • ): ValidationResult!
  • }