/AWS1/IF_DOE=>CREATECLUSTER()¶
About CreateCluster¶
Creates a new Amazon DocumentDB elastic cluster and returns its cluster structure.
Method Signature¶
METHODS /AWS1/IF_DOE~CREATECLUSTER
IMPORTING
!IV_CLUSTERNAME TYPE /AWS1/DOESTRING OPTIONAL
!IV_AUTHTYPE TYPE /AWS1/DOEAUTH OPTIONAL
!IV_ADMINUSERNAME TYPE /AWS1/DOESTRING OPTIONAL
!IV_ADMINUSERPASSWORD TYPE /AWS1/DOEPASSWORD OPTIONAL
!IV_SHARDCAPACITY TYPE /AWS1/DOEINTEGER OPTIONAL
!IV_SHARDCOUNT TYPE /AWS1/DOEINTEGER OPTIONAL
!IT_VPCSECURITYGROUPIDS TYPE /AWS1/CL_DOESTRINGLIST_W=>TT_STRINGLIST OPTIONAL
!IT_SUBNETIDS TYPE /AWS1/CL_DOESTRINGLIST_W=>TT_STRINGLIST OPTIONAL
!IV_KMSKEYID TYPE /AWS1/DOESTRING OPTIONAL
!IV_CLIENTTOKEN TYPE /AWS1/DOESTRING OPTIONAL
!IV_PREFERREDMAINTENANCEWIN00 TYPE /AWS1/DOESTRING OPTIONAL
!IT_TAGS TYPE /AWS1/CL_DOETAGMAP_W=>TT_TAGMAP OPTIONAL
!IV_BACKUPRETENTIONPERIOD TYPE /AWS1/DOEINTEGER OPTIONAL
!IV_PREFERREDBACKUPWINDOW TYPE /AWS1/DOESTRING OPTIONAL
!IV_SHARDINSTANCECOUNT TYPE /AWS1/DOEINTEGER OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_doecreateclustoutput
RAISING
/AWS1/CX_DOEACCESSDENIEDEX
/AWS1/CX_DOECONFLICTEXCEPTION
/AWS1/CX_DOEINTERNALSERVEREX
/AWS1/CX_DOESERVICEQUOTAEXCDEX
/AWS1/CX_DOETHROTTLINGEX
/AWS1/CX_DOEVALIDATIONEX
/AWS1/CX_DOECLIENTEXC
/AWS1/CX_DOESERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_clustername TYPE /AWS1/DOESTRING /AWS1/DOESTRING¶
The name of the new elastic cluster. This parameter is stored as a lowercase string.
Constraints:
Must contain from 1 to 63 letters, numbers, or hyphens.
The first character must be a letter.
Cannot end with a hyphen or contain two consecutive hyphens.
Example:
my-cluster
iv_authtype TYPE /AWS1/DOEAUTH /AWS1/DOEAUTH¶
The authentication type used to determine where to fetch the password used for accessing the elastic cluster. Valid types are
PLAIN_TEXTorSECRET_ARN.
iv_adminusername TYPE /AWS1/DOESTRING /AWS1/DOESTRING¶
The name of the Amazon DocumentDB elastic clusters administrator.
Constraints:
Must be from 1 to 63 letters or numbers.
The first character must be a letter.
Cannot be a reserved word.
iv_adminuserpassword TYPE /AWS1/DOEPASSWORD /AWS1/DOEPASSWORD¶
The password for the Amazon DocumentDB elastic clusters administrator. The password can contain any printable ASCII characters.
Constraints:
Must contain from 8 to 100 characters.
Cannot contain a forward slash (/), double quote ("), or the "at" symbol (@).
iv_shardcapacity TYPE /AWS1/DOEINTEGER /AWS1/DOEINTEGER¶
The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. Allowed values are 2, 4, 8, 16, 32, 64.
iv_shardcount TYPE /AWS1/DOEINTEGER /AWS1/DOEINTEGER¶
The number of shards assigned to the elastic cluster. Maximum is 32.
Optional arguments:¶
it_vpcsecuritygroupids TYPE /AWS1/CL_DOESTRINGLIST_W=>TT_STRINGLIST TT_STRINGLIST¶
A list of EC2 VPC security groups to associate with the new elastic cluster.
it_subnetids TYPE /AWS1/CL_DOESTRINGLIST_W=>TT_STRINGLIST TT_STRINGLIST¶
The Amazon EC2 subnet IDs for the new elastic cluster.
iv_kmskeyid TYPE /AWS1/DOESTRING /AWS1/DOESTRING¶
The KMS key identifier to use to encrypt the new elastic cluster.
The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key.
If an encryption key is not specified, Amazon DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region.
iv_clienttoken TYPE /AWS1/DOESTRING /AWS1/DOESTRING¶
The client token for the elastic cluster.
iv_preferredmaintenancewin00 TYPE /AWS1/DOESTRING /AWS1/DOESTRING¶
The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
Format:
ddd:hh24:mi-ddd:hh24:miDefault: a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week.
Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun
Constraints: Minimum 30-minute window.
it_tags TYPE /AWS1/CL_DOETAGMAP_W=>TT_TAGMAP TT_TAGMAP¶
The tags to be assigned to the new elastic cluster.
iv_backupretentionperiod TYPE /AWS1/DOEINTEGER /AWS1/DOEINTEGER¶
The number of days for which automatic snapshots are retained.
iv_preferredbackupwindow TYPE /AWS1/DOESTRING /AWS1/DOESTRING¶
The daily time range during which automated backups are created if automated backups are enabled, as determined by the
backupRetentionPeriod.
iv_shardinstancecount TYPE /AWS1/DOEINTEGER /AWS1/DOEINTEGER¶
The number of replica instances applying to all shards in the elastic cluster. A
shardInstanceCountvalue of 1 means there is one writer instance, and any additional instances are replicas that can be used for reads and to improve availability.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_doecreateclustoutput /AWS1/CL_DOECREATECLUSTOUTPUT¶
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->createcluster(
it_subnetids = VALUE /aws1/cl_doestringlist_w=>tt_stringlist(
( new /aws1/cl_doestringlist_w( |string| ) )
)
it_tags = VALUE /aws1/cl_doetagmap_w=>tt_tagmap(
(
VALUE /aws1/cl_doetagmap_w=>ts_tagmap_maprow(
value = new /aws1/cl_doetagmap_w( |string| )
key = |string|
)
)
)
it_vpcsecuritygroupids = VALUE /aws1/cl_doestringlist_w=>tt_stringlist(
( new /aws1/cl_doestringlist_w( |string| ) )
)
iv_adminusername = |string|
iv_adminuserpassword = |string|
iv_authtype = |string|
iv_backupretentionperiod = 123
iv_clienttoken = |string|
iv_clustername = |string|
iv_kmskeyid = |string|
iv_preferredbackupwindow = |string|
iv_preferredmaintenancewin00 = |string|
iv_shardcapacity = 123
iv_shardcount = 123
iv_shardinstancecount = 123
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lo_cluster = lo_result->get_cluster( ).
IF lo_cluster IS NOT INITIAL.
lv_string = lo_cluster->get_clustername( ).
lv_string = lo_cluster->get_clusterarn( ).
lv_status = lo_cluster->get_status( ).
lv_string = lo_cluster->get_clusterendpoint( ).
lv_string = lo_cluster->get_createtime( ).
lv_string = lo_cluster->get_adminusername( ).
lv_auth = lo_cluster->get_authtype( ).
lv_integer = lo_cluster->get_shardcapacity( ).
lv_integer = lo_cluster->get_shardcount( ).
LOOP AT lo_cluster->get_vpcsecuritygroupids( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_string = lo_row_1->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_cluster->get_subnetids( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_string = lo_row_1->get_value( ).
ENDIF.
ENDLOOP.
lv_string = lo_cluster->get_preferredmaintenancewi00( ).
lv_string = lo_cluster->get_kmskeyid( ).
LOOP AT lo_cluster->get_shards( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lv_string = lo_row_3->get_shardid( ).
lv_string = lo_row_3->get_createtime( ).
lv_status = lo_row_3->get_status( ).
ENDIF.
ENDLOOP.
lv_integer = lo_cluster->get_backupretentionperiod( ).
lv_string = lo_cluster->get_preferredbackupwindow( ).
lv_integer = lo_cluster->get_shardinstancecount( ).
ENDIF.
ENDIF.