mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +08:00
Add counter for deleted objects
Add counter for deleted objects and show popup only if there are any
This commit is contained in:
parent
fea262fb32
commit
f6a4e1a448
|
@ -131,6 +131,9 @@ CLASS lcl_repo_online DEFINITION INHERITING FROM lcl_repo FINAL.
|
|||
IMPORTING is_comment TYPE lif_defs=>ty_comment
|
||||
io_stage TYPE REF TO lcl_stage
|
||||
RAISING lcx_exception,
|
||||
get_unnecessary_local_objs
|
||||
RETURNING VALUE(rt_unnecessary_local_objects) TYPE LIF_DEFS=>TY_TADIR_TT
|
||||
RAISING lcx_exception,
|
||||
delete_unnecessary_local_objs
|
||||
RAISING lcx_exception lcx_cancel.
|
||||
|
||||
|
|
|
@ -323,14 +323,28 @@ CLASS lcl_repo_online IMPLEMENTATION.
|
|||
|
||||
METHOD delete_unnecessary_local_objs.
|
||||
|
||||
DATA: lt_tadir TYPE lif_defs=>ty_tadir_tt,
|
||||
lt_tadir_to_delete LIKE lt_tadir,
|
||||
lt_tadir_to_delete_unique TYPE HASHED TABLE OF lif_defs=>ty_tadir
|
||||
WITH UNIQUE KEY pgmid object obj_name,
|
||||
lt_local TYPE lif_defs=>ty_files_item_tt,
|
||||
lt_remote TYPE lif_defs=>ty_files_tt,
|
||||
lt_status TYPE lif_defs=>ty_results_tt,
|
||||
lt_package TYPE lcl_persistence_repo=>ty_repo-package.
|
||||
DATA: lt_tadir TYPE lif_defs=>ty_tadir_tt.
|
||||
|
||||
lt_tadir = get_unnecessary_local_objs( ).
|
||||
|
||||
IF lines( lt_tadir ) > 0.
|
||||
|
||||
lcl_objects=>delete( lt_tadir ).
|
||||
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD. " delete_unneccessary_local_objs.
|
||||
|
||||
|
||||
METHOD get_unnecessary_local_objs.
|
||||
|
||||
DATA: lt_tadir TYPE lif_defs=>ty_tadir_tt,
|
||||
lt_tadir_unique TYPE HASHED TABLE OF lif_defs=>ty_tadir
|
||||
WITH UNIQUE KEY pgmid object obj_name,
|
||||
lt_local TYPE lif_defs=>ty_files_item_tt,
|
||||
lt_remote TYPE lif_defs=>ty_files_tt,
|
||||
lt_status TYPE lif_defs=>ty_results_tt,
|
||||
lt_package TYPE lcl_persistence_repo=>ty_repo-package.
|
||||
|
||||
FIELD-SYMBOLS: <status> TYPE lif_defs=>ty_result,
|
||||
<tadir> TYPE lif_defs=>ty_tadir.
|
||||
|
@ -354,19 +368,13 @@ CLASS lcl_repo_online IMPLEMENTATION.
|
|||
BINARY SEARCH.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
INSERT <tadir> INTO TABLE lt_tadir_to_delete_unique.
|
||||
INSERT <tadir> INTO TABLE lt_tadir_unique.
|
||||
|
||||
ENDLOOP.
|
||||
|
||||
IF lines( lt_tadir_to_delete_unique ) > 0.
|
||||
|
||||
lt_tadir_to_delete = lt_tadir_to_delete_unique.
|
||||
lcl_objects=>delete( lt_tadir_to_delete ).
|
||||
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD. " delete_unneccessary_local_objs.
|
||||
rt_unnecessary_local_objects = lt_tadir_unique.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS. "lcl_repo_online IMPLEMENTATION
|
||||
|
||||
|
|
|
@ -47,8 +47,9 @@ CLASS lcl_services_git IMPLEMENTATION.
|
|||
|
||||
METHOD reset.
|
||||
|
||||
DATA: lo_repo TYPE REF TO lcl_repo_online,
|
||||
lv_answer TYPE c LENGTH 1.
|
||||
DATA: lo_repo TYPE REF TO lcl_repo_online,
|
||||
lv_answer TYPE c LENGTH 1,
|
||||
lt_unnecessary_local_objs TYPE lif_defs=>ty_tadir_tt.
|
||||
|
||||
lo_repo ?= lcl_app=>repo_srv( )->get( iv_key ).
|
||||
|
||||
|
@ -70,18 +71,24 @@ CLASS lcl_services_git IMPLEMENTATION.
|
|||
RAISE EXCEPTION TYPE lcx_cancel.
|
||||
ENDIF.
|
||||
|
||||
lv_answer = lcl_popups=>popup_to_confirm(
|
||||
titlebar = 'Warning'
|
||||
text_question = 'Delete unnecessary local objects?'
|
||||
text_button_1 = 'Ok'
|
||||
icon_button_1 = 'ICON_OKAY'
|
||||
text_button_2 = 'No'
|
||||
icon_button_2 = 'ICON_CANCEL'
|
||||
default_button = '2'
|
||||
display_cancel_button = abap_false ). "#EC NOTEXT
|
||||
lt_unnecessary_local_objs = lo_repo->get_unnecessary_local_objs( ).
|
||||
|
||||
IF lines( lt_unnecessary_local_objs ) > 0.
|
||||
|
||||
lv_answer = lcl_popups=>popup_to_confirm(
|
||||
titlebar = 'Warning'
|
||||
text_question = |Delete ({ lines( lt_unnecessary_local_objs ) }) unnecessary local objects?|
|
||||
text_button_1 = 'Yes'
|
||||
icon_button_1 = 'ICON_OKAY'
|
||||
text_button_2 = 'No'
|
||||
icon_button_2 = 'ICON_CANCEL'
|
||||
default_button = '2'
|
||||
display_cancel_button = abap_false ). "#EC NOTEXT
|
||||
|
||||
IF lv_answer = '1'.
|
||||
lo_repo->delete_unnecessary_local_objs( ).
|
||||
ENDIF.
|
||||
|
||||
IF lv_answer = '1'.
|
||||
lo_repo->delete_unnecessary_local_objs( ).
|
||||
ENDIF.
|
||||
|
||||
lo_repo->deserialize( ).
|
||||
|
|
Loading…
Reference in New Issue
Block a user