/AWS1/IF_XDD=>CREATESTREAM()¶
About CreateStream¶
Creates a new change data capture (CDC) stream for a cluster. The stream captures database changes and delivers them to the specified target destination.
Required permissions
- dsql:CreateStream
-
Permission to create a new stream.
Resources:
arn:aws:dsql:region:account-id:cluster/cluster-id - iam:PassRole
-
Permission to pass the IAM role specified in the target definition to the service.
Resources: ARN of the IAM role specified in
targetDefinition.kinesis.roleArn - kms:Decrypt
-
Required when the cluster uses a customer managed KMS key (CMK). Permission to decrypt data using the cluster's CMK.
Resources: ARN of the KMS key used by the cluster
Method Signature¶
METHODS /AWS1/IF_XDD~CREATESTREAM
IMPORTING
!IV_CLUSTERIDENTIFIER TYPE /AWS1/XDDCLUSTERID OPTIONAL
!IO_TARGETDEFINITION TYPE REF TO /AWS1/CL_XDDTARGETDEFINITION OPTIONAL
!IV_ORDERING TYPE /AWS1/XDDSTREAMORDERING OPTIONAL
!IV_FORMAT TYPE /AWS1/XDDSTREAMFORMAT OPTIONAL
!IT_TAGS TYPE /AWS1/CL_XDDTAGMAP_W=>TT_TAGMAP OPTIONAL
!IV_CLIENTTOKEN TYPE /AWS1/XDDCLIENTTOKEN OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_xddcreatestreamoutput
RAISING
/AWS1/CX_XDDACCESSDENIEDEX
/AWS1/CX_XDDINTERNALSERVEREX
/AWS1/CX_XDDTHROTTLINGEX
/AWS1/CX_XDDVALIDATIONEX
/AWS1/CX_XDDCONFLICTEXCEPTION
/AWS1/CX_XDDRESOURCENOTFOUNDEX
/AWS1/CX_XDDSERVICEQUOTAEXCDEX
/AWS1/CX_XDDCLIENTEXC
/AWS1/CX_XDDSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_clusteridentifier TYPE /AWS1/XDDCLUSTERID /AWS1/XDDCLUSTERID¶
The ID of the cluster for which to create the stream.
io_targetdefinition TYPE REF TO /AWS1/CL_XDDTARGETDEFINITION /AWS1/CL_XDDTARGETDEFINITION¶
The target destination configuration for the stream. Contains Kinesis stream configuration including stream ARN and IAM role ARN.
iv_ordering TYPE /AWS1/XDDSTREAMORDERING /AWS1/XDDSTREAMORDERING¶
The ordering mode for the stream. Determines how change events are ordered when delivered to the target.
iv_format TYPE /AWS1/XDDSTREAMFORMAT /AWS1/XDDSTREAMFORMAT¶
The format of the stream records.
Optional arguments:¶
it_tags TYPE /AWS1/CL_XDDTAGMAP_W=>TT_TAGMAP TT_TAGMAP¶
A map of key and value pairs to use to tag your stream.
iv_clienttoken TYPE /AWS1/XDDCLIENTTOKEN /AWS1/XDDCLIENTTOKEN¶
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully, the subsequent retries with the same client token return the result from the original successful request and they have no additional effect.
If you don't specify a client token, the Amazon Web Services SDK automatically generates one.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_xddcreatestreamoutput /AWS1/CL_XDDCREATESTREAMOUTPUT¶
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->createstream(
io_targetdefinition = new /aws1/cl_xddtargetdefinition(
io_kinesis = new /aws1/cl_xddkinesistargetdefn(
iv_rolearn = |string|
iv_streamarn = |string|
)
)
it_tags = VALUE /aws1/cl_xddtagmap_w=>tt_tagmap(
(
VALUE /aws1/cl_xddtagmap_w=>ts_tagmap_maprow(
key = |string|
value = new /aws1/cl_xddtagmap_w( |string| )
)
)
)
iv_clienttoken = |string|
iv_clusteridentifier = |string|
iv_format = |string|
iv_ordering = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lv_clusterid = lo_result->get_clusteridentifier( ).
lv_streamid = lo_result->get_streamidentifier( ).
lv_streamarn = lo_result->get_arn( ).
lv_streamstatus = lo_result->get_status( ).
lv_streamcreationtime = lo_result->get_creationtime( ).
lv_streamordering = lo_result->get_ordering( ).
lv_streamformat = lo_result->get_format( ).
ENDIF.