/AWS1/IF_IOA=>CREATECHANNEL()¶
About CreateChannel¶
Used to create a channel. A channel collects data from an MQTT topic and archives the raw, unprocessed messages before publishing the data to a pipeline.
Method Signature¶
METHODS /AWS1/IF_IOA~CREATECHANNEL
IMPORTING
!IV_CHANNELNAME TYPE /AWS1/IOACHANNELNAME OPTIONAL
!IO_CHANNELSTORAGE TYPE REF TO /AWS1/CL_IOACHANNELSTORAGE OPTIONAL
!IO_RETENTIONPERIOD TYPE REF TO /AWS1/CL_IOARETENTIONPERIOD OPTIONAL
!IT_TAGS TYPE /AWS1/CL_IOATAG=>TT_TAGLIST OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_ioacreatechannelrsp
RAISING
/AWS1/CX_IOAINTERNALFAILUREEX
/AWS1/CX_IOAINVALIDREQUESTEX
/AWS1/CX_IOALIMITEXCEEDEDEX
/AWS1/CX_IOARESRCALRDYEXISTSEX
/AWS1/CX_IOASERVICEUNAVAILEX
/AWS1/CX_IOATHROTTLINGEX
/AWS1/CX_IOACLIENTEXC
/AWS1/CX_IOASERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_channelname TYPE /AWS1/IOACHANNELNAME /AWS1/IOACHANNELNAME¶
The name of the channel.
Optional arguments:¶
io_channelstorage TYPE REF TO /AWS1/CL_IOACHANNELSTORAGE /AWS1/CL_IOACHANNELSTORAGE¶
Where channel data is stored. You can choose one of
serviceManagedS3orcustomerManagedS3storage. If not specified, the default isserviceManagedS3. You can't change this storage option after the channel is created.
io_retentionperiod TYPE REF TO /AWS1/CL_IOARETENTIONPERIOD /AWS1/CL_IOARETENTIONPERIOD¶
How long, in days, message data is kept for the channel. When
customerManagedS3storage is selected, this parameter is ignored.
it_tags TYPE /AWS1/CL_IOATAG=>TT_TAGLIST TT_TAGLIST¶
Metadata which can be used to manage the channel.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_ioacreatechannelrsp /AWS1/CL_IOACREATECHANNELRSP¶
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->createchannel(
io_channelstorage = new /aws1/cl_ioachannelstorage(
io_customermanageds3 = new /aws1/cl_ioacusmanagedchanne00(
iv_bucket = |string|
iv_keyprefix = |string|
iv_rolearn = |string|
)
io_servicemanageds3 = new /aws1/cl_ioasvcmanagedchanne00( )
)
io_retentionperiod = new /aws1/cl_ioaretentionperiod(
iv_numberofdays = 123
iv_unlimited = ABAP_TRUE
)
it_tags = VALUE /aws1/cl_ioatag=>tt_taglist(
(
new /aws1/cl_ioatag(
iv_key = |string|
iv_value = |string|
)
)
)
iv_channelname = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lv_channelname = lo_result->get_channelname( ).
lv_channelarn = lo_result->get_channelarn( ).
lo_retentionperiod = lo_result->get_retentionperiod( ).
IF lo_retentionperiod IS NOT INITIAL.
lv_unlimitedretentionperio = lo_retentionperiod->get_unlimited( ).
lv_retentionperiodindays = lo_retentionperiod->get_numberofdays( ).
ENDIF.
ENDIF.