diff --git a/src/objects/zcl_abapgit_object_iarp.clas.abap b/src/objects/zcl_abapgit_object_iarp.clas.abap index 12dfbca46..cb47e674a 100644 --- a/src/objects/zcl_abapgit_object_iarp.clas.abap +++ b/src/objects/zcl_abapgit_object_iarp.clas.abap @@ -3,56 +3,100 @@ CLASS zcl_abapgit_object_iarp DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje PUBLIC SECTION. INTERFACES zif_abapgit_object. ALIASES mo_files FOR zif_abapgit_object~mo_files. + METHODS: + constructor + IMPORTING is_item TYPE zif_abapgit_definitions=>ty_item + iv_language TYPE spras. PROTECTED SECTION. PRIVATE SECTION. + DATA: + ms_name TYPE w3resokey. + METHODS: read - EXPORTING es_attr TYPE w3resoattr + EXPORTING es_attributes TYPE w3resoattr et_parameters TYPE w3resopara_tabletype RAISING zcx_abapgit_exception, + save - IMPORTING is_attr TYPE w3resoattr + IMPORTING is_attributes TYPE w3resoattr it_parameters TYPE w3resopara_tabletype + RAISING zcx_abapgit_exception, + + w3_api_load + RETURNING VALUE(ri_resource) TYPE REF TO if_w3_api_resource + RAISING zcx_abapgit_exception, + + w3_api_get_attributes + IMPORTING ii_resource TYPE REF TO if_w3_api_resource + RETURNING VALUE(rs_attributes) TYPE w3resoattr + RAISING zcx_abapgit_exception, + + w3_api_get_parameters + IMPORTING ii_resource TYPE REF TO if_w3_api_resource + RETURNING VALUE(rt_parameters) TYPE w3resopara_tabletype + RAISING zcx_abapgit_exception, + + w3_api_create_new + IMPORTING is_attributes TYPE w3resoattr + RETURNING VALUE(ri_resource) TYPE REF TO if_w3_api_resource + RAISING zcx_abapgit_exception, + + w3_api_set_attributes + IMPORTING ii_resource TYPE REF TO if_w3_api_resource + is_attributes TYPE w3resoattr + RAISING zcx_abapgit_exception, + + w3_api_set_parameters + IMPORTING ii_resource TYPE REF TO if_w3_api_resource + it_parameters TYPE w3resopara_tabletype + RAISING zcx_abapgit_exception, + + w3_api_save + IMPORTING ii_resource TYPE REF TO if_w3_api_resource + RAISING + zcx_abapgit_exception, + + w3_api_set_changeable + IMPORTING ii_resource TYPE REF TO if_w3_api_resource + RAISING zcx_abapgit_exception, + + w3_api_delete + IMPORTING ii_resource TYPE REF TO if_w3_api_resource RAISING zcx_abapgit_exception. ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_IARP IMPLEMENTATION. +CLASS zcl_abapgit_object_iarp IMPLEMENTATION. + + + METHOD constructor. + + super->constructor( + is_item = is_item + iv_language = iv_language ). + + ms_name = ms_item-obj_name. + + ENDMETHOD. METHOD read. - DATA: li_resource TYPE REF TO if_w3_api_resource, - ls_name TYPE w3resokey. + DATA: li_resource TYPE REF TO if_w3_api_resource. + li_resource = w3_api_load( ). + es_attributes = w3_api_get_attributes( li_resource ). - ls_name = ms_item-obj_name. + CLEAR: es_attributes-chname, + es_attributes-tdate, + es_attributes-ttime, + es_attributes-devclass. - cl_w3_api_resource=>if_w3_api_resource~load( - EXPORTING - p_resource_name = ls_name - IMPORTING - p_resource = li_resource - EXCEPTIONS - object_not_existing = 1 - permission_failure = 2 - error_occured = 3 - OTHERS = 4 ). - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from w3api_resource~load' ). - ENDIF. - - li_resource->get_attributes( IMPORTING p_attributes = es_attr ). - - CLEAR: es_attr-chname, - es_attr-tdate, - es_attr-ttime, - es_attr-devclass. - - li_resource->get_parameters( IMPORTING p_parameters = et_parameters ). + et_parameters = w3_api_get_parameters( li_resource ). ENDMETHOD. @@ -61,15 +105,70 @@ CLASS ZCL_ABAPGIT_OBJECT_IARP IMPLEMENTATION. DATA: li_resource TYPE REF TO if_w3_api_resource. + li_resource = w3_api_create_new( is_attributes ). - cl_w3_api_resource=>if_w3_api_resource~create_new( - EXPORTING p_resource_data = is_attr - IMPORTING p_resource = li_resource ). + w3_api_set_attributes( + ii_resource = li_resource + is_attributes = is_attributes ). - li_resource->set_attributes( is_attr ). - li_resource->set_parameters( it_parameters ). + w3_api_set_parameters( + ii_resource = li_resource + it_parameters = it_parameters ). - li_resource->if_w3_api_object~save( ). + w3_api_save( li_resource ). + + ENDMETHOD. + + + METHOD w3_api_get_attributes. + + ii_resource->get_attributes( + IMPORTING + p_attributes = rs_attributes + EXCEPTIONS + object_invalid = 1 + resource_deleted = 2 + error_occured = 3 + OTHERS = 4 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_resource~get_attributes. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_get_parameters. + + ii_resource->get_parameters( + IMPORTING + p_parameters = rt_parameters + EXCEPTIONS + object_invalid = 1 + resource_deleted = 2 + error_occured = 3 + OTHERS = 4 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_resource~get_parameters. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_load. + + cl_w3_api_resource=>if_w3_api_resource~load( + EXPORTING + p_resource_name = ms_name + IMPORTING + p_resource = ri_resource + EXCEPTIONS + object_not_existing = 1 + permission_failure = 2 + error_occured = 3 + OTHERS = 4 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from w3api_resource~load. Subrc={ sy-subrc }| ). + ENDIF. ENDMETHOD. @@ -81,29 +180,12 @@ CLASS ZCL_ABAPGIT_OBJECT_IARP IMPLEMENTATION. METHOD zif_abapgit_object~delete. - DATA: li_resource TYPE REF TO if_w3_api_resource, - ls_name TYPE w3resokey. + DATA: li_resource TYPE REF TO if_w3_api_resource. - - ls_name = ms_item-obj_name. - - cl_w3_api_resource=>if_w3_api_resource~load( - EXPORTING - p_resource_name = ls_name - IMPORTING - p_resource = li_resource - EXCEPTIONS - object_not_existing = 1 - permission_failure = 2 - error_occured = 3 - OTHERS = 4 ). - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from if_w3_api_resource~load' ). - ENDIF. - - li_resource->if_w3_api_object~set_changeable( abap_true ). - li_resource->if_w3_api_object~delete( ). - li_resource->if_w3_api_object~save( ). + li_resource = w3_api_load( ). + w3_api_set_changeable( li_resource ). + w3_api_delete( li_resource ). + w3_api_save( li_resource ). ENDMETHOD. @@ -120,7 +202,7 @@ CLASS ZCL_ABAPGIT_OBJECT_IARP IMPLEMENTATION. CHANGING cg_data = lt_parameters ). ls_attr-devclass = iv_package. - save( is_attr = ls_attr + save( is_attributes = ls_attr it_parameters = lt_parameters ). ENDMETHOD. @@ -128,26 +210,15 @@ CLASS ZCL_ABAPGIT_OBJECT_IARP IMPLEMENTATION. METHOD zif_abapgit_object~exists. - DATA: ls_name TYPE w3resokey. + DATA: lx_error TYPE REF TO zcx_abapgit_exception. + TRY. + w3_api_load( ). + rv_bool = abap_true. - ls_name = ms_item-obj_name. - - cl_w3_api_resource=>if_w3_api_resource~load( - EXPORTING - p_resource_name = ls_name - EXCEPTIONS - object_not_existing = 1 - permission_failure = 2 - error_occured = 3 - OTHERS = 4 ). - IF sy-subrc = 1. - rv_bool = abap_false. - ELSEIF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from w3_api_resource~load' ). - ELSE. - rv_bool = abap_true. - ENDIF. + CATCH zcx_abapgit_exception INTO lx_error. + rv_bool = abap_false. + ENDTRY. ENDMETHOD. @@ -173,9 +244,7 @@ CLASS ZCL_ABAPGIT_OBJECT_IARP IMPLEMENTATION. METHOD zif_abapgit_object~is_locked. - rv_is_locked = abap_false. - ENDMETHOD. @@ -183,9 +252,16 @@ CLASS ZCL_ABAPGIT_OBJECT_IARP IMPLEMENTATION. CALL FUNCTION 'RS_TOOL_ACCESS' EXPORTING - operation = 'SHOW' - object_name = ms_item-obj_name - object_type = ms_item-obj_type. + operation = 'SHOW' + object_name = ms_item-obj_name + object_type = ms_item-obj_type + EXCEPTIONS + not_executed = 1 + invalid_object_type = 2 + OTHERS = 3. + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from RS_TOOL_ACCESS. Subrc={ sy-subrc }| ). + ENDIF. ENDMETHOD. @@ -200,7 +276,7 @@ CLASS ZCL_ABAPGIT_OBJECT_IARP IMPLEMENTATION. RETURN. ENDIF. - read( IMPORTING es_attr = ls_attr + read( IMPORTING es_attributes = ls_attr et_parameters = lt_parameters ). io_xml->add( iv_name = 'ATTR' @@ -209,4 +285,128 @@ CLASS ZCL_ABAPGIT_OBJECT_IARP IMPLEMENTATION. ig_data = lt_parameters ). ENDMETHOD. + + METHOD w3_api_create_new. + + cl_w3_api_resource=>if_w3_api_resource~create_new( + EXPORTING + p_resource_data = is_attributes + IMPORTING + p_resource = ri_resource + EXCEPTIONS + object_already_existing = 1 + object_just_created = 2 + not_authorized = 3 + undefined_name = 4 + author_not_existing = 5 + action_cancelled = 6 + error_occured = 7 + OTHERS = 8 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_resource~create_new. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_set_attributes. + + ii_resource->set_attributes( + EXPORTING + p_attributes = is_attributes + EXCEPTIONS + object_not_changeable = 1 + object_deleted = 2 + object_invalid = 3 + author_not_existing = 4 + authorize_failure = 5 + error_occured = 6 + OTHERS = 7 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_resource~set_attributes. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_set_parameters. + + ii_resource->set_parameters( + EXPORTING + p_parameters = it_parameters + EXCEPTIONS + object_not_changeable = 1 + object_deleted = 2 + object_invalid = 3 + authorize_failure = 4 + invalid_parameter = 5 + error_occured = 6 + OTHERS = 7 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_resource~set_parameters. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_save. + + ii_resource->if_w3_api_object~save( + EXCEPTIONS + object_invalid = 1 + object_not_changeable = 2 + action_cancelled = 3 + permission_failure = 4 + not_changed = 5 + data_invalid = 6 + error_occured = 7 + OTHERS = 8 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_object~save. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_set_changeable. + + ii_resource->if_w3_api_object~set_changeable( + EXPORTING + p_changeable = abap_true + EXCEPTIONS + action_cancelled = 1 + object_locked_by_other_user = 2 + permission_failure = 3 + object_already_changeable = 4 + object_already_unlocked = 5 + object_just_created = 6 + object_deleted = 7 + object_modified = 8 + object_not_existing = 9 + object_invalid = 10 + error_occured = 11 + content_data_error = 12 + OTHERS = 13 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_object~set_changeable. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_delete. + + ii_resource->if_w3_api_object~delete( + EXCEPTIONS + object_not_empty = 1 + object_not_changeable = 2 + object_invalid = 3 + error_occured = 4 + OTHERS = 5 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_object~delete. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + ENDCLASS. diff --git a/src/objects/zcl_abapgit_object_iasp.clas.abap b/src/objects/zcl_abapgit_object_iasp.clas.abap index d152d5535..78cf672d4 100644 --- a/src/objects/zcl_abapgit_object_iasp.clas.abap +++ b/src/objects/zcl_abapgit_object_iasp.clas.abap @@ -3,56 +3,99 @@ CLASS zcl_abapgit_object_iasp DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje PUBLIC SECTION. INTERFACES zif_abapgit_object. ALIASES mo_files FOR zif_abapgit_object~mo_files. + METHODS: + constructor + IMPORTING + is_item TYPE zif_abapgit_definitions=>ty_item + iv_language TYPE spras. PROTECTED SECTION. PRIVATE SECTION. + DATA: + mv_name TYPE itsappl. + METHODS: read EXPORTING es_attr TYPE w3servattr et_parameters TYPE w3servpara_tabletype RAISING zcx_abapgit_exception, + save IMPORTING is_attr TYPE w3servattr it_parameters TYPE w3servpara_tabletype + RAISING zcx_abapgit_exception, + + w3_api_load + RETURNING VALUE(ri_service) TYPE REF TO if_w3_api_service + RAISING zcx_abapgit_exception, + + w3_api_get_attributes + IMPORTING ii_service TYPE REF TO if_w3_api_service + RETURNING VALUE(rs_attributes) TYPE w3servattr, + + w3_api_get_parameters + IMPORTING ii_service TYPE REF TO if_w3_api_service + RETURNING VALUE(rt_parameters) TYPE w3servpara_tabletype, + + w3_api_create_new + IMPORTING is_attributes TYPE w3servattr + RETURNING VALUE(ri_service) TYPE REF TO if_w3_api_service + RAISING + zcx_abapgit_exception, + + w3_api_set_attributes + IMPORTING ii_service TYPE REF TO if_w3_api_service + is_attributes TYPE w3servattr + RAISING zcx_abapgit_exception, + + w3_api_set_parameters + IMPORTING ii_service TYPE REF TO if_w3_api_service + it_parameters TYPE w3servpara_tabletype + RAISING zcx_abapgit_exception, + + w3_api_save + IMPORTING ii_service TYPE REF TO if_w3_api_service + RAISING zcx_abapgit_exception, + + w3_api_set_changeable + IMPORTING ii_service TYPE REF TO if_w3_api_service + RAISING zcx_abapgit_exception, + + w3_api_delete + IMPORTING ii_service TYPE REF TO if_w3_api_service RAISING zcx_abapgit_exception. ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_IASP IMPLEMENTATION. +CLASS zcl_abapgit_object_iasp IMPLEMENTATION. + + + METHOD constructor. + + super->constructor( + is_item = is_item + iv_language = iv_language ). + + mv_name = ms_item-obj_name. + + ENDMETHOD. METHOD read. - DATA: li_service TYPE REF TO if_w3_api_service, - lv_name TYPE itsappl. + DATA: li_service TYPE REF TO if_w3_api_service. - - lv_name = ms_item-obj_name. - - cl_w3_api_service=>if_w3_api_service~load( - EXPORTING - p_service_name = lv_name - IMPORTING - p_service = li_service - EXCEPTIONS - object_not_existing = 1 - permission_failure = 2 - error_occured = 3 - OTHERS = 4 ). - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from w3api_service~load' ). - ENDIF. - - li_service->get_attributes( IMPORTING p_attributes = es_attr ). + li_service = w3_api_load( ). + es_attr = w3_api_get_attributes( li_service ). CLEAR: es_attr-chname, es_attr-tdate, es_attr-ttime, es_attr-devclass. - li_service->get_parameters( IMPORTING p_parameters = et_parameters ). + et_parameters = w3_api_get_parameters( li_service ). ENDMETHOD. @@ -61,15 +104,50 @@ CLASS ZCL_ABAPGIT_OBJECT_IASP IMPLEMENTATION. DATA: li_service TYPE REF TO if_w3_api_service. + li_service = w3_api_create_new( is_attr ). - cl_w3_api_service=>if_w3_api_service~create_new( - EXPORTING p_service_data = is_attr - IMPORTING p_service = li_service ). + w3_api_set_attributes( + ii_service = li_service + is_attributes = is_attr ). - li_service->set_attributes( is_attr ). - li_service->set_parameters( it_parameters ). + w3_api_set_parameters( + ii_service = li_service + it_parameters = it_parameters ). - li_service->if_w3_api_object~save( ). + w3_api_save( li_service ). + + ENDMETHOD. + + + METHOD w3_api_get_attributes. + + ii_service->get_attributes( IMPORTING p_attributes = rs_attributes ). + + ENDMETHOD. + + + METHOD w3_api_get_parameters. + + ii_service->get_parameters( IMPORTING p_parameters = rt_parameters ). + + ENDMETHOD. + + + METHOD w3_api_load. + + cl_w3_api_service=>if_w3_api_service~load( + EXPORTING + p_service_name = mv_name + IMPORTING + p_service = ri_service + EXCEPTIONS + object_not_existing = 1 + permission_failure = 2 + error_occured = 3 + OTHERS = 4 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( 'error from w3api_service~load' ). + ENDIF. ENDMETHOD. @@ -81,29 +159,13 @@ CLASS ZCL_ABAPGIT_OBJECT_IASP IMPLEMENTATION. METHOD zif_abapgit_object~delete. - DATA: li_service TYPE REF TO if_w3_api_service, - lv_name TYPE itsappl. + DATA: li_service TYPE REF TO if_w3_api_service. + li_service = w3_api_load( ). - lv_name = ms_item-obj_name. - - cl_w3_api_service=>if_w3_api_service~load( - EXPORTING - p_service_name = lv_name - IMPORTING - p_service = li_service - EXCEPTIONS - object_not_existing = 1 - permission_failure = 2 - error_occured = 3 - OTHERS = 4 ). - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from w3_api_service~load' ). - ENDIF. - - li_service->if_w3_api_object~set_changeable( abap_true ). - li_service->if_w3_api_object~delete( ). - li_service->if_w3_api_object~save( ). + w3_api_set_changeable( li_service ). + w3_api_delete( li_service ). + w3_api_save( li_service ). ENDMETHOD. @@ -128,26 +190,15 @@ CLASS ZCL_ABAPGIT_OBJECT_IASP IMPLEMENTATION. METHOD zif_abapgit_object~exists. - DATA: lv_name TYPE itsappl. + DATA: lx_error TYPE REF TO zcx_abapgit_exception. + TRY. + w3_api_load( ). + rv_bool = abap_true. - lv_name = ms_item-obj_name. - - cl_w3_api_service=>if_w3_api_service~load( - EXPORTING - p_service_name = lv_name - EXCEPTIONS - object_not_existing = 1 - permission_failure = 2 - error_occured = 3 - OTHERS = 4 ). - IF sy-subrc = 1. - rv_bool = abap_false. - ELSEIF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from w3_api_service~load' ). - ELSE. - rv_bool = abap_true. - ENDIF. + CATCH zcx_abapgit_exception INTO lx_error. + rv_bool = abap_false. + ENDTRY. ENDMETHOD. @@ -181,9 +232,16 @@ CLASS ZCL_ABAPGIT_OBJECT_IASP IMPLEMENTATION. CALL FUNCTION 'RS_TOOL_ACCESS' EXPORTING - operation = 'SHOW' - object_name = ms_item-obj_name - object_type = ms_item-obj_type. + operation = 'SHOW' + object_name = ms_item-obj_name + object_type = ms_item-obj_type + EXCEPTIONS + not_executed = 1 + invalid_object_type = 2 + OTHERS = 3. + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from RS_TOOL_ACCESS. Subrc={ sy-subrc }| ). + ENDIF. ENDMETHOD. @@ -207,4 +265,129 @@ CLASS ZCL_ABAPGIT_OBJECT_IASP IMPLEMENTATION. ig_data = lt_parameters ). ENDMETHOD. + + METHOD w3_api_create_new. + + cl_w3_api_service=>if_w3_api_service~create_new( + EXPORTING + p_service_data = is_attributes + IMPORTING + p_service = ri_service + EXCEPTIONS + object_already_existing = 1 + object_just_created = 2 + not_authorized = 3 + undefined_name = 4 + author_not_existing = 5 + action_cancelled = 6 + error_occured = 7 + invalid_parameter = 8 + OTHERS = 9 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_service~create_new. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_set_attributes. + + ii_service->set_attributes( + EXPORTING + p_attributes = is_attributes + EXCEPTIONS + object_not_changeable = 1 + object_deleted = 2 + object_invalid = 3 + author_not_existing = 4 + authorize_failure = 5 + error_occured = 6 + OTHERS = 7 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_service~set_attributes. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_set_parameters. + + ii_service->set_parameters( + EXPORTING + p_parameters = it_parameters + EXCEPTIONS + object_not_changeable = 1 + object_deleted = 2 + object_invalid = 3 + authorize_failure = 4 + invalid_parameter = 5 + error_occured = 6 + OTHERS = 7 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_service~set_parameters. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_save. + + ii_service->if_w3_api_object~save( + EXCEPTIONS + object_invalid = 1 + object_not_changeable = 2 + action_cancelled = 3 + permission_failure = 4 + not_changed = 5 + data_invalid = 6 + error_occured = 7 + OTHERS = 8 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_object~save. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_set_changeable. + + ii_service->if_w3_api_object~set_changeable( + EXPORTING + p_changeable = abap_true + EXCEPTIONS + action_cancelled = 1 + object_locked_by_other_user = 2 + permission_failure = 3 + object_already_changeable = 4 + object_already_unlocked = 5 + object_just_created = 6 + object_deleted = 7 + object_modified = 8 + object_not_existing = 9 + object_invalid = 10 + error_occured = 11 + content_data_error = 12 + OTHERS = 13 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_object~set_changeable. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + + + METHOD w3_api_delete. + + ii_service->if_w3_api_object~delete( + EXCEPTIONS + object_not_empty = 1 + object_not_changeable = 2 + object_invalid = 3 + error_occured = 4 + OTHERS = 5 ). + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( |error from if_w3_api_object~delete. Subrc={ sy-subrc }| ). + ENDIF. + + ENDMETHOD. + ENDCLASS.