new pull page: bugfix pull deletions (#6702)

This commit is contained in:
Lars Hvam 2023-12-15 07:53:05 +01:00 committed by GitHub
parent 3537279f37
commit 4e831d10f3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 22 additions and 10 deletions

View File

@ -165,7 +165,6 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_PULL IMPLEMENTATION.
METHOD zif_abapgit_gui_event_handler~on_event.
DATA lo_log TYPE REF TO zcl_abapgit_log.
DATA lv_value TYPE string.
FIELD-SYMBOLS <ls_overwrite> LIKE LINE OF ms_checks-overwrite.
@ -192,10 +191,9 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_PULL IMPLEMENTATION.
ENDLOOP.
* todo, show log?
CREATE OBJECT lo_log.
mo_repo->deserialize(
zcl_abapgit_services_repo=>real_deserialize(
is_checks = ms_checks
ii_log = lo_log ).
io_repo = mo_repo ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-go_back.
ENDCASE.

View File

@ -57,6 +57,12 @@ CLASS zcl_abapgit_services_repo DEFINITION
!io_repo TYPE REF TO zcl_abapgit_repo
RAISING
zcx_abapgit_exception .
CLASS-METHODS real_deserialize
IMPORTING
!io_repo TYPE REF TO zcl_abapgit_repo
!is_checks TYPE zif_abapgit_definitions=>ty_deserialize_checks
RAISING
zcx_abapgit_exception .
CLASS-METHODS activate_objects
IMPORTING
!iv_key TYPE zif_abapgit_persistence=>ty_repo-key
@ -321,10 +327,7 @@ CLASS zcl_abapgit_services_repo IMPLEMENTATION.
METHOD gui_deserialize.
DATA:
lv_msg TYPE string,
ls_checks TYPE zif_abapgit_definitions=>ty_deserialize_checks,
li_log TYPE REF TO zif_abapgit_log.
DATA ls_checks TYPE zif_abapgit_definitions=>ty_deserialize_checks.
" find troublesome objects
ls_checks = io_repo->deserialize_checks( ).
@ -346,17 +349,28 @@ CLASS zcl_abapgit_services_repo IMPLEMENTATION.
RETURN.
ENDTRY.
real_deserialize(
io_repo = io_repo
is_checks = ls_checks ).
ENDMETHOD.
METHOD real_deserialize.
DATA li_log TYPE REF TO zif_abapgit_log.
DATA lv_msg TYPE string.
li_log = io_repo->create_new_log( 'Pull Log' ).
" pass decisions to delete
delete_unnecessary_objects(
io_repo = io_repo
is_checks = ls_checks
is_checks = is_checks
ii_log = li_log ).
" pass decisions to deserialize
io_repo->deserialize(
is_checks = ls_checks
is_checks = is_checks
ii_log = li_log ).
IF li_log->get_status( ) = zif_abapgit_log=>c_status-ok.