Refactor: Simplify lock check for workbench objects (#6517)

Co-authored-by: Lars Hvam <larshp@hotmail.com>
This commit is contained in:
Marc Bernard 2023-09-30 02:28:17 -04:00 committed by GitHub
parent 03033a2e89
commit 8420663819
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 23 additions and 48 deletions

View File

@ -727,16 +727,9 @@ CLASS zcl_abapgit_object_devc IMPLEMENTATION.
METHOD zif_abapgit_object~is_locked.
DATA: lv_object TYPE eqegraarg.
lv_object = |DV{ ms_item-obj_name }|.
OVERLAY lv_object WITH ' '.
lv_object = lv_object && '*'.
rv_is_locked = exists_a_lock_entry_for( iv_lock_object = 'EEUDB'
iv_argument = lv_object ).
iv_argument = ms_item-obj_name
iv_prefix = 'DV' ).
ENDMETHOD.

View File

@ -759,16 +759,9 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
METHOD is_function_group_locked.
DATA: lv_object TYPE eqegraarg.
lv_object = |FG{ ms_item-obj_name }|.
OVERLAY lv_object WITH ' '.
lv_object = lv_object && '*'.
rv_is_functions_group_locked = exists_a_lock_entry_for( iv_lock_object = 'EEUDB'
iv_argument = lv_object ).
iv_argument = ms_item-obj_name
iv_prefix = 'FG' ).
ENDMETHOD.

View File

@ -13,7 +13,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_OBJECT_PARA IMPLEMENTATION.
CLASS zcl_abapgit_object_para IMPLEMENTATION.
METHOD unlock.
@ -188,16 +188,9 @@ CLASS ZCL_ABAPGIT_OBJECT_PARA IMPLEMENTATION.
METHOD zif_abapgit_object~is_locked.
DATA: lv_argument TYPE seqg3-garg.
lv_argument = |PA{ ms_item-obj_name }|.
OVERLAY lv_argument WITH ' '.
lv_argument = lv_argument && '*'.
rv_is_locked = exists_a_lock_entry_for( iv_lock_object = 'EEUDB'
iv_argument = lv_argument ).
iv_argument = ms_item-obj_name
iv_prefix = 'PA' ).
ENDMETHOD.

View File

@ -334,15 +334,9 @@ CLASS zcl_abapgit_object_pinf IMPLEMENTATION.
METHOD zif_abapgit_object~is_locked.
DATA: lv_argument TYPE eqegraarg.
lv_argument = |PF{ ms_item-obj_name }|.
OVERLAY lv_argument WITH ' *'.
rv_is_locked = exists_a_lock_entry_for( iv_lock_object = 'EEUDB'
iv_argument = lv_argument ).
iv_argument = ms_item-obj_name
iv_prefix = 'PF' ).
ENDMETHOD.

View File

@ -833,17 +833,9 @@ CLASS zcl_abapgit_object_tran IMPLEMENTATION.
METHOD zif_abapgit_object~is_locked.
DATA: lv_object TYPE eqegraarg.
lv_object = |TN{ ms_item-obj_name }|.
OVERLAY lv_object WITH ' '.
lv_object = lv_object && '*'.
rv_is_locked = exists_a_lock_entry_for( iv_lock_object = 'EEUDB'
iv_argument = lv_object ).
iv_argument = ms_item-obj_name
iv_prefix = 'TN' ).
ENDMETHOD.

View File

@ -38,7 +38,8 @@ CLASS zcl_abapgit_objects_super DEFINITION
METHODS exists_a_lock_entry_for
IMPORTING
!iv_lock_object TYPE string
!iv_argument TYPE seqg3-garg OPTIONAL
!iv_argument TYPE csequence OPTIONAL
!iv_prefix TYPE csequence OPTIONAL
RETURNING
VALUE(rv_exists_a_lock_entry) TYPE abap_bool
RAISING
@ -213,11 +214,20 @@ CLASS ZCL_ABAPGIT_OBJECTS_SUPER IMPLEMENTATION.
METHOD exists_a_lock_entry_for.
DATA: lt_lock_entries TYPE STANDARD TABLE OF seqg3.
DATA: lv_argument TYPE seqg3-garg.
IF iv_prefix IS INITIAL.
lv_argument = iv_argument.
ELSE.
lv_argument = |{ iv_prefix }{ iv_argument }|.
OVERLAY lv_argument WITH ' '.
lv_argument = lv_argument && '*'.
ENDIF.
CALL FUNCTION 'ENQUEUE_READ'
EXPORTING
guname = '*'
garg = iv_argument
garg = lv_argument
TABLES
enq = lt_lock_entries
EXCEPTIONS