Skip to content

/AWS1/CL_IOA=>CREATEPIPELINE()

About CreatePipeline

Creates a pipeline. A pipeline consumes messages from a channel and allows you to process the messages before storing them in a data store. You must specify both a channel and a datastore activity and, optionally, as many as 23 additional activities in the pipelineActivities array.

Method Signature

IMPORTING

Required arguments:

iv_pipelinename TYPE /AWS1/IOAPIPELINENAME /AWS1/IOAPIPELINENAME

The name of the pipeline.

it_pipelineactivities TYPE /AWS1/CL_IOAPIPELINEACTIVITY=>TT_PIPELINEACTIVITIES TT_PIPELINEACTIVITIES

A list of PipelineActivity objects. Activities perform transformations on your messages, such as removing, renaming or adding message attributes; filtering messages based on attribute values; invoking your Lambda unctions on messages for advanced processing; or performing mathematical transformations to normalize device data.

The list can be 2-25 PipelineActivity objects and must contain both a channel and a datastore activity. Each entry in the list must contain only one activity. For example:

pipelineActivities = [ { "channel": { ... } }, { "lambda": { ... } }, ... ]

Optional arguments:

it_tags TYPE /AWS1/CL_IOATAG=>TT_TAGLIST TT_TAGLIST

Metadata which can be used to manage the pipeline.

RETURNING

oo_output TYPE REF TO /aws1/cl_ioacreateplinresponse /AWS1/CL_IOACREATEPLINRESPONSE

Domain /AWS1/RT_ACCOUNT_ID
Primitive Type NUMC

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->/aws1/if_ioa~createpipeline(
  it_pipelineactivities = VALUE /aws1/cl_ioapipelineactivity=>tt_pipelineactivities(
    (
      new /aws1/cl_ioapipelineactivity(
        io_addattributes = new /aws1/cl_ioaaddattrsactivity(
          it_attributes = VALUE /aws1/cl_ioaattrnamemapping_w=>tt_attributenamemapping(
            (
              VALUE /aws1/cl_ioaattrnamemapping_w=>ts_attributenamemapping_maprow(
                value = new /aws1/cl_ioaattrnamemapping_w( |string| )
                key = |string|
              )
            )
          )
          iv_name = |string|
          iv_next = |string|
        )
        io_channel = new /aws1/cl_ioachannelactivity(
          iv_channelname = |string|
          iv_name = |string|
          iv_next = |string|
        )
        io_datastore = new /aws1/cl_ioadatastoreactivity(
          iv_datastorename = |string|
          iv_name = |string|
        )
        io_deviceregistryenrich = new /aws1/cl_ioadevregenrichacti00(
          iv_attribute = |string|
          iv_name = |string|
          iv_next = |string|
          iv_rolearn = |string|
          iv_thingname = |string|
        )
        io_deviceshadowenrich = new /aws1/cl_ioadevshadowenricha00(
          iv_attribute = |string|
          iv_name = |string|
          iv_next = |string|
          iv_rolearn = |string|
          iv_thingname = |string|
        )
        io_filter = new /aws1/cl_ioafilteractivity(
          iv_filter = |string|
          iv_name = |string|
          iv_next = |string|
        )
        io_lambda = new /aws1/cl_ioalambdaactivity(
          iv_batchsize = 123
          iv_lambdaname = |string|
          iv_name = |string|
          iv_next = |string|
        )
        io_math = new /aws1/cl_ioamathactivity(
          iv_attribute = |string|
          iv_math = |string|
          iv_name = |string|
          iv_next = |string|
        )
        io_removeattributes = new /aws1/cl_ioaremattrsactivity(
          it_attributes = VALUE /aws1/cl_ioaattributenames_w=>tt_attributenames(
            ( new /aws1/cl_ioaattributenames_w( |string| ) )
          )
          iv_name = |string|
          iv_next = |string|
        )
        io_selectattributes = new /aws1/cl_ioaselattrsactivity(
          it_attributes = VALUE /aws1/cl_ioaattributenames_w=>tt_attributenames(
            ( new /aws1/cl_ioaattributenames_w( |string| ) )
          )
          iv_name = |string|
          iv_next = |string|
        )
      )
    )
  )
  it_tags = VALUE /aws1/cl_ioatag=>tt_taglist(
    (
      new /aws1/cl_ioatag(
        iv_key = |string|
        iv_value = |string|
      )
    )
  )
  iv_pipelinename = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_pipelinename = lo_result->get_pipelinename( ).
  lv_pipelinearn = lo_result->get_pipelinearn( ).
ENDIF.