/AWS1/IF_REV=>CREATEPOLICY()¶
About CreatePolicy¶
Creates a resilience policy that defines availability and disaster recovery requirements.
Method Signature¶
METHODS /AWS1/IF_REV~CREATEPOLICY
IMPORTING
!IV_NAME TYPE /AWS1/REVENTITYNAME OPTIONAL
!IV_DESCRIPTION TYPE /AWS1/REVLONGDESCRIPTION OPTIONAL
!IO_AVAILABILITYSLO TYPE REF TO /AWS1/CL_REVAVAILABILITYSLO OPTIONAL
!IO_MULTIAZ TYPE REF TO /AWS1/CL_REVMULTIAZTARGETS OPTIONAL
!IO_MULTIREGION TYPE REF TO /AWS1/CL_REVMULTIREGIONTARGETS OPTIONAL
!IO_DATARECOVERY TYPE REF TO /AWS1/CL_REVDATARECTARGETS OPTIONAL
!IV_KMSKEYID TYPE /AWS1/REVKMSKEYID OPTIONAL
!IT_TAGS TYPE /AWS1/CL_REVTAGMAP_W=>TT_TAGMAP OPTIONAL
!IV_CLIENTTOKEN TYPE /AWS1/REVCLIENTTOKEN OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_revcreatepolicyrsp
RAISING
/AWS1/CX_REVACCESSDENIEDEX
/AWS1/CX_REVCONFLICTEXCEPTION
/AWS1/CX_REVINTERNALSERVEREX
/AWS1/CX_REVRESOURCENOTFOUNDEX
/AWS1/CX_REVSERVICEQUOTAEXCDEX
/AWS1/CX_REVVLDTNEXCEPTION
/AWS1/CX_REVCLIENTEXC
/AWS1/CX_REVSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_name TYPE /AWS1/REVENTITYNAME /AWS1/REVENTITYNAME¶
Resource name (used in ARN — no spaces allowed).
Optional arguments:¶
iv_description TYPE /AWS1/REVLONGDESCRIPTION /AWS1/REVLONGDESCRIPTION¶
Resource description for services and policies.
io_availabilityslo TYPE REF TO /AWS1/CL_REVAVAILABILITYSLO /AWS1/CL_REVAVAILABILITYSLO¶
The availability SLO for the resilience policy.
io_multiaz TYPE REF TO /AWS1/CL_REVMULTIAZTARGETS /AWS1/CL_REVMULTIAZTARGETS¶
The multi-AZ disaster recovery targets for the resilience policy.
io_multiregion TYPE REF TO /AWS1/CL_REVMULTIREGIONTARGETS /AWS1/CL_REVMULTIREGIONTARGETS¶
The multi-Region disaster recovery targets for the resilience policy.
io_datarecovery TYPE REF TO /AWS1/CL_REVDATARECTARGETS /AWS1/CL_REVDATARECTARGETS¶
The data recovery targets for the resilience policy.
iv_kmskeyid TYPE /AWS1/REVKMSKEYID /AWS1/REVKMSKEYID¶
KMS key identifier — accepts key ID, key ARN, alias name, or alias ARN.
it_tags TYPE /AWS1/CL_REVTAGMAP_W=>TT_TAGMAP TT_TAGMAP¶
Resource tags.
iv_clienttoken TYPE /AWS1/REVCLIENTTOKEN /AWS1/REVCLIENTTOKEN¶
Idempotency token.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_revcreatepolicyrsp /AWS1/CL_REVCREATEPOLICYRSP¶
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->createpolicy(
io_availabilityslo = new /aws1/cl_revavailabilityslo( '0.1' )
io_datarecovery = new /aws1/cl_revdatarectargets( 123 )
io_multiaz = new /aws1/cl_revmultiaztargets(
iv_disasterrecoveryapproach = |string|
iv_rpoinminutes = 123
iv_rtoinminutes = 123
)
io_multiregion = new /aws1/cl_revmultiregiontargets(
iv_disasterrecoveryapproach = |string|
iv_rpoinminutes = 123
iv_rtoinminutes = 123
)
it_tags = VALUE /aws1/cl_revtagmap_w=>tt_tagmap(
(
VALUE /aws1/cl_revtagmap_w=>ts_tagmap_maprow(
key = |string|
value = new /aws1/cl_revtagmap_w( |string| )
)
)
)
iv_clienttoken = |string|
iv_description = |string|
iv_kmskeyid = |string|
iv_name = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lo_policy = lo_result->get_policy( ).
IF lo_policy IS NOT INITIAL.
lv_arn = lo_policy->get_policyarn( ).
lv_entityname = lo_policy->get_name( ).
lv_longdescription = lo_policy->get_description( ).
lo_availabilityslo = lo_policy->get_availabilityslo( ).
IF lo_availabilityslo IS NOT INITIAL.
lv_double = lo_availabilityslo->get_target( ).
ENDIF.
lo_multiaztargets = lo_policy->get_multiaz( ).
IF lo_multiaztargets IS NOT INITIAL.
lv_integer = lo_multiaztargets->get_rtoinminutes( ).
lv_integer = lo_multiaztargets->get_rpoinminutes( ).
lv_multiazdisasterrecovery = lo_multiaztargets->get_disasterrecoveryapproach( ).
ENDIF.
lo_multiregiontargets = lo_policy->get_multiregion( ).
IF lo_multiregiontargets IS NOT INITIAL.
lv_integer = lo_multiregiontargets->get_rtoinminutes( ).
lv_integer = lo_multiregiontargets->get_rpoinminutes( ).
lv_multiregiondisasterreco = lo_multiregiontargets->get_disasterrecoveryapproach( ).
ENDIF.
lo_datarecoverytargets = lo_policy->get_datarecovery( ).
IF lo_datarecoverytargets IS NOT INITIAL.
lv_integer = lo_datarecoverytargets->get_timebetweenbackupsinmins( ).
ENDIF.
lv_kmskeyid = lo_policy->get_kmskeyid( ).
LOOP AT lo_policy->get_tags( ) into ls_row.
lv_key = ls_row-key.
lo_value = ls_row-value.
IF lo_value IS NOT INITIAL.
lv_tagvalue = lo_value->get_value( ).
ENDIF.
ENDLOOP.
lv_integer = lo_policy->get_associatedservicecount( ).
lv_timestamp = lo_policy->get_createdat( ).
lv_timestamp = lo_policy->get_updatedat( ).
ENDIF.
ENDIF.