PRAG: Fix locking and transport entries (#5939)

This commit is contained in:
Marc Bernard 2022-12-14 13:10:43 -05:00 committed by GitHub
parent 1b845b4971
commit 526162ed6e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -12,19 +12,6 @@ CLASS zcl_abapgit_object_prag DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
description TYPE c LENGTH 255, description TYPE c LENGTH 255,
END OF ty_pragma. END OF ty_pragma.
METHODS:
_raise_pragma_not_exists
RAISING
zcx_abapgit_exception,
_raise_pragma_exists
RAISING
zcx_abapgit_exception,
_raise_pragma_enqueue
RAISING
zcx_abapgit_exception.
ENDCLASS. ENDCLASS.
@ -41,26 +28,34 @@ CLASS zcl_abapgit_object_prag IMPLEMENTATION.
METHOD zif_abapgit_object~delete. METHOD zif_abapgit_object~delete.
DATA: lo_pragma TYPE REF TO cl_abap_pragma. DATA: lo_pragma TYPE REF TO cl_abap_pragma,
lx_error TYPE REF TO cx_root.
TRY. TRY.
lo_pragma = cl_abap_pragma=>get_ref( ms_item-obj_name ). lo_pragma = cl_abap_pragma=>get_ref( ms_item-obj_name ).
lo_pragma->delete( ). lo_pragma->delete( ).
lo_pragma->leave_change( ). "unlock
CATCH cx_abap_pragma_not_exists. CATCH cx_root INTO lx_error.
_raise_pragma_not_exists( ). IF lo_pragma IS BOUND.
CATCH cx_abap_pragma_enqueue. lo_pragma->leave_change( ).
_raise_pragma_enqueue( ). ENDIF.
zcx_abapgit_exception=>raise( lx_error->get_text( ) ).
ENDTRY. ENDTRY.
corr_insert( iv_package ).
ENDMETHOD. ENDMETHOD.
METHOD zif_abapgit_object~deserialize. METHOD zif_abapgit_object~deserialize.
DATA: ls_pragma TYPE ty_pragma, DATA: ls_pragma TYPE ty_pragma,
lo_pragma TYPE REF TO cl_abap_pragma. lo_pragma TYPE REF TO cl_abap_pragma,
lx_error TYPE REF TO cx_root.
tadir_insert( iv_package ).
TRY. TRY.
io_xml->read( io_xml->read(
@ -77,13 +72,12 @@ CLASS zcl_abapgit_object_prag IMPLEMENTATION.
p_extension = ls_pragma-extension ). p_extension = ls_pragma-extension ).
lo_pragma->save( ). lo_pragma->save( ).
lo_pragma->leave_change( ). "unlock
CATCH cx_abap_pragma_not_exists. CATCH cx_root INTO lx_error.
_raise_pragma_not_exists( ). IF lo_pragma IS BOUND.
CATCH cx_abap_pragma_exists. lo_pragma->leave_change( ).
_raise_pragma_exists( ). ENDIF.
CATCH cx_abap_pragma_enqueue. zcx_abapgit_exception=>raise( lx_error->get_text( ) ).
_raise_pragma_enqueue( ).
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -154,23 +148,8 @@ CLASS zcl_abapgit_object_prag IMPLEMENTATION.
ig_data = ls_pragma ). ig_data = ls_pragma ).
CATCH cx_abap_pragma_not_exists. CATCH cx_abap_pragma_not_exists.
_raise_pragma_not_exists( ). zcx_abapgit_exception=>raise( |Pragma { ms_item-obj_name } doesn't exist| ).
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.
METHOD _raise_pragma_enqueue.
zcx_abapgit_exception=>raise( |Pragma { ms_item-obj_name } enqueue error| ).
ENDMETHOD.
METHOD _raise_pragma_exists.
zcx_abapgit_exception=>raise( |Pragma { ms_item-obj_name } exists| ).
ENDMETHOD.
METHOD _raise_pragma_not_exists.
zcx_abapgit_exception=>raise( |Pragma { ms_item-obj_name } doesn't exist| ).
ENDMETHOD.
ENDCLASS. ENDCLASS.