/AWS1/IF_LSA=>CREATEBUCKET()¶
About CreateBucket¶
Creates an Amazon Lightsail bucket.
A bucket is a cloud storage resource available in the Lightsail object storage service. Use buckets to store objects such as data and its descriptive metadata. For more information about buckets, see Buckets in Amazon Lightsail in the Amazon Lightsail Developer Guide.
Method Signature¶
METHODS /AWS1/IF_LSA~CREATEBUCKET
IMPORTING
!IV_BUCKETNAME TYPE /AWS1/LSABUCKETNAME OPTIONAL
!IV_BUNDLEID TYPE /AWS1/LSANONEMPTYSTRING OPTIONAL
!IT_TAGS TYPE /AWS1/CL_LSATAG=>TT_TAGLIST OPTIONAL
!IV_ENABLEOBJECTVERSIONING TYPE /AWS1/LSABOOLEAN OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_lsacreatebucketresult
RAISING
/AWS1/CX_LSAACCESSDENIEDEX
/AWS1/CX_LSAINVALIDINPUTEX
/AWS1/CX_LSARGNSETUPINPRGSSEX
/AWS1/CX_LSASERVICEEXCEPTION
/AWS1/CX_LSAUNAUTHNTCTDEX
/AWS1/CX_LSACLIENTEXC
/AWS1/CX_LSASERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_bucketname TYPE /AWS1/LSABUCKETNAME /AWS1/LSABUCKETNAME¶
The name for the bucket.
For more information about bucket names, see Bucket naming rules in Amazon Lightsail in the Amazon Lightsail Developer Guide.
iv_bundleid TYPE /AWS1/LSANONEMPTYSTRING /AWS1/LSANONEMPTYSTRING¶
The ID of the bundle to use for the bucket.
A bucket bundle specifies the monthly cost, storage space, and data transfer quota for a bucket.
Use the GetBucketBundles action to get a list of bundle IDs that you can specify.
Use the UpdateBucketBundle action to change the bundle after the bucket is created.
Optional arguments:¶
it_tags TYPE /AWS1/CL_LSATAG=>TT_TAGLIST TT_TAGLIST¶
The tag keys and optional values to add to the bucket during creation.
Use the TagResource action to tag the bucket after it's created.
iv_enableobjectversioning TYPE /AWS1/LSABOOLEAN /AWS1/LSABOOLEAN¶
A Boolean value that indicates whether to enable versioning of objects in the bucket.
For more information about versioning, see Enabling and suspending object versioning in a bucket in Amazon Lightsail in the Amazon Lightsail Developer Guide.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_lsacreatebucketresult /AWS1/CL_LSACREATEBUCKETRESULT¶
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->createbucket(
it_tags = VALUE /aws1/cl_lsatag=>tt_taglist(
(
new /aws1/cl_lsatag(
iv_key = |string|
iv_value = |string|
)
)
)
iv_bucketname = |string|
iv_bundleid = |string|
iv_enableobjectversioning = ABAP_TRUE
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lo_bucket = lo_result->get_bucket( ).
IF lo_bucket IS NOT INITIAL.
lv_nonemptystring = lo_bucket->get_resourcetype( ).
lo_accessrules = lo_bucket->get_accessrules( ).
IF lo_accessrules IS NOT INITIAL.
lv_accesstype = lo_accessrules->get_getobject( ).
lv_boolean = lo_accessrules->get_allowpublicoverrides( ).
ENDIF.
lv_nonemptystring = lo_bucket->get_arn( ).
lv_nonemptystring = lo_bucket->get_bundleid( ).
lv_isodate = lo_bucket->get_createdat( ).
lv_nonemptystring = lo_bucket->get_url( ).
lo_resourcelocation = lo_bucket->get_location( ).
IF lo_resourcelocation IS NOT INITIAL.
lv_string = lo_resourcelocation->get_availabilityzone( ).
lv_regionname = lo_resourcelocation->get_regionname( ).
ENDIF.
lv_bucketname = lo_bucket->get_name( ).
lv_nonemptystring = lo_bucket->get_supportcode( ).
LOOP AT lo_bucket->get_tags( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_tagkey = lo_row_1->get_key( ).
lv_tagvalue = lo_row_1->get_value( ).
ENDIF.
ENDLOOP.
lv_nonemptystring = lo_bucket->get_objectversioning( ).
lv_boolean = lo_bucket->get_abletoupdatebundle( ).
LOOP AT lo_bucket->get_readonlyaccessaccounts( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lv_nonemptystring = lo_row_3->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_bucket->get_resourcesreceivingaccess( ) into lo_row_4.
lo_row_5 = lo_row_4.
IF lo_row_5 IS NOT INITIAL.
lv_nonemptystring = lo_row_5->get_name( ).
lv_nonemptystring = lo_row_5->get_resourcetype( ).
ENDIF.
ENDLOOP.
lo_bucketstate = lo_bucket->get_state( ).
IF lo_bucketstate IS NOT INITIAL.
lv_nonemptystring = lo_bucketstate->get_code( ).
lv_string = lo_bucketstate->get_message( ).
ENDIF.
lo_bucketaccesslogconfig = lo_bucket->get_accesslogconfig( ).
IF lo_bucketaccesslogconfig IS NOT INITIAL.
lv_boolean = lo_bucketaccesslogconfig->get_enabled( ).
lv_bucketname = lo_bucketaccesslogconfig->get_destination( ).
lv_bucketaccesslogprefix = lo_bucketaccesslogconfig->get_prefix( ).
ENDIF.
lo_bucketcorsconfig = lo_bucket->get_cors( ).
IF lo_bucketcorsconfig IS NOT INITIAL.
LOOP AT lo_bucketcorsconfig->get_rules( ) into lo_row_6.
lo_row_7 = lo_row_6.
IF lo_row_7 IS NOT INITIAL.
lv_bucketcorsruleid = lo_row_7->get_id( ).
LOOP AT lo_row_7->get_allowedmethods( ) into lo_row_8.
lo_row_9 = lo_row_8.
IF lo_row_9 IS NOT INITIAL.
lv_bucketcorsallowedmethod = lo_row_9->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_row_7->get_allowedorigins( ) into lo_row_10.
lo_row_11 = lo_row_10.
IF lo_row_11 IS NOT INITIAL.
lv_string = lo_row_11->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_row_7->get_allowedheaders( ) into lo_row_12.
lo_row_13 = lo_row_12.
IF lo_row_13 IS NOT INITIAL.
lv_string = lo_row_13->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_row_7->get_exposeheaders( ) into lo_row_14.
lo_row_15 = lo_row_14.
IF lo_row_15 IS NOT INITIAL.
lv_string = lo_row_15->get_value( ).
ENDIF.
ENDLOOP.
lv_integer = lo_row_7->get_maxageseconds( ).
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
LOOP AT lo_result->get_operations( ) into lo_row_16.
lo_row_17 = lo_row_16.
IF lo_row_17 IS NOT INITIAL.
lv_nonemptystring = lo_row_17->get_id( ).
lv_resourcename = lo_row_17->get_resourcename( ).
lv_resourcetype = lo_row_17->get_resourcetype( ).
lv_isodate = lo_row_17->get_createdat( ).
lo_resourcelocation = lo_row_17->get_location( ).
IF lo_resourcelocation IS NOT INITIAL.
lv_string = lo_resourcelocation->get_availabilityzone( ).
lv_regionname = lo_resourcelocation->get_regionname( ).
ENDIF.
lv_boolean = lo_row_17->get_isterminal( ).
lv_string = lo_row_17->get_operationdetails( ).
lv_operationtype = lo_row_17->get_operationtype( ).
lv_operationstatus = lo_row_17->get_status( ).
lv_isodate = lo_row_17->get_statuschangedat( ).
lv_string = lo_row_17->get_errorcode( ).
lv_string = lo_row_17->get_errordetails( ).
ENDIF.
ENDLOOP.
ENDIF.