PutObjectLockConfiguration #
Overview #
Places an Object Lock configuration on the specified bucket.
AWS API Reference: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectLockConfiguration.html
Method #
PUTOBJECTLOCKCONFIGURATION
Import Parameters #
The request uses the following import parameters.
-
i_bucket_name (bucket in AWS) (Required)
Name of the bucket.
-
i_region (Required)
AWS Region of the Amazon S3 Bucket.
-
i_x_amz_bucket_obj_lock_token (x-amz-bucket-object-lock-token in AWS)
A token to allow Object Lock to be enabled for an existing bucket.
-
i_x_amz_expected_b_owner (x-amz-expected-bucket-owner in AWS)
The account id of the expected bucket owner
-
i_x_amz_request_payer (x-amz-request-payer in aws)
Confirms that the requester knows that they will be charged for the request
-
i_body (Structure with ObjectLockConfiguration, ObjectLockEnabled and Rule fields in AWS) (Required)
ObjectLockConfiguration: Root level tag for the ObjectLockConfiguration parameters ObjectLockEnabled: Indicates whether this bucket has an Object Lock configuration enabled. Rule: The Object Lock rule in place for the specified object.
Export Parameters #
This method use the following export parameters:
-
e_http_status
HTTP Status code.
-
e_response_headers
Returns information about the request in format Name/Value pair values.
-
e_response_content
Response content in string format.
Example #
DATA: lo_s3 TYPE REF TO /lnkc/cl_sdk_aws_s3,
lv_http_status TYPE i,
lt_response_headers TYPE tihttpnvp,
lv_response_content TYPE string,
ls_body type /lnkc/aws_s3_s_objlockconfig.
TRY.
CREATE OBJECT lo_s3
EXPORTING
i_user_name = 'user_awsconnector'
i_access_key = 'acces_key_value'
i_secret_access_key = 'secret_acceskey_value'.
ENDTRY.
ls_body-objectlockenabled = 'ObjectLockEnabled_value'.
" Structure of Rule Retentions
ls_body-rule-defaultretention-days = 'Days'.
ls_body-rule-defaultretention-mode = 'Mode'.
ls_body-rule-defaultretention-years = 'Years'.
TRY.
CALL METHOD lo_s3->putobjectlockconfiguration
EXPORTING
i_bucket_name = 'bucket_name'
i_region = 'bucket_region'
i_x_amz_bucket_obj_lock_token = 'obj_lock_token'
i_x_amz_expected_b_owner = 'expected_owner'
i_x_amz_request_payer = 'request_payer'
i_body = ls_body
IMPORTING
e_http_status = lv_http_status
e_response_headers = lt_response_headers
e_response_content = lv_response_content.
.
CATCH /lnkc/cx_sdk_aws .
" Error Message
ENDTRY.