This commit is contained in:
Guenter Christian 2025-04-08 07:32:08 +00:00
parent dd9a9f3c1c
commit ec732a31b3
9 changed files with 55 additions and 51 deletions

View File

@ -163,7 +163,7 @@ CLASS zcl_abapgit_background IMPLEMENTATION.
TRY.
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( <ls_list>-key ).
li_repo_online ?= li_repo_online.
li_repo_online ?= li_repo.
lv_repo_name = li_repo->get_name( ).
WRITE: / <ls_list>-method, lv_repo_name.

View File

@ -37,7 +37,7 @@ CLASS zcl_abapgit_background_pull IMPLEMENTATION.
li_repo = ii_repo_online.
ls_checks = ii_repo_online->zif_abapgit_repo~deserialize_checks( ).
ls_checks = li_repo->deserialize_checks( ).
LOOP AT ls_checks-overwrite ASSIGNING <ls_overwrite>.
<ls_overwrite>-decision = zif_abapgit_definitions=>c_yes.

View File

@ -359,7 +359,7 @@ CLASS zcl_abapgit_gui_chunk_lib IMPLEMENTATION.
lv_key = iv_repo_key.
ELSEIF ii_repo_online IS BOUND.
li_repo = ii_repo_online.
lv_key = ii_repo_online->zif_abapgit_repo~get_key( ).
lv_key = li_repo->get_key( ).
ELSE.
zcx_abapgit_exception=>raise( 'Either iv_repo_key or io_repo must be supplied' ).
ENDIF.

View File

@ -23,7 +23,7 @@ CLASS zcl_abapgit_gui_page_merge DEFINITION
METHODS constructor
IMPORTING
ii_repo TYPE REF TO zif_abapgit_repo_online
ii_repo_online TYPE REF TO zif_abapgit_repo_online
iv_source TYPE string
iv_target TYPE string
RAISING
@ -32,7 +32,7 @@ CLASS zcl_abapgit_gui_page_merge DEFINITION
PROTECTED SECTION.
PRIVATE SECTION.
DATA mi_repo TYPE REF TO zif_abapgit_repo_online.
DATA mi_repo_online TYPE REF TO zif_abapgit_repo_online.
DATA mi_merge TYPE REF TO zif_abapgit_merge.
CONSTANTS:
@ -59,13 +59,13 @@ CLASS zcl_abapgit_gui_page_merge IMPLEMENTATION.
super->constructor( ).
mi_repo = ii_repo.
mi_repo_online = ii_repo_online.
ii_repo->select_branch( |{ zif_abapgit_git_definitions=>c_git_branch-heads_prefix }{ iv_target }| ).
ii_repo_online->select_branch( |{ zif_abapgit_git_definitions=>c_git_branch-heads_prefix }{ iv_target }| ).
CREATE OBJECT mi_merge TYPE zcl_abapgit_merge
EXPORTING
ii_repo_online = ii_repo
ii_repo_online = ii_repo_online
iv_source_branch = iv_source.
mi_merge->run( ).
@ -79,7 +79,7 @@ CLASS zcl_abapgit_gui_page_merge IMPLEMENTATION.
CREATE OBJECT lo_component
EXPORTING
ii_repo = ii_repo
ii_repo_online = ii_repo
iv_source = iv_source
iv_target = iv_target.
@ -113,6 +113,8 @@ CLASS zcl_abapgit_gui_page_merge IMPLEMENTATION.
METHOD zif_abapgit_gui_event_handler~on_event.
DATA: li_repo TYPE REF TO zif_abapgit_repo.
CASE ii_event->mv_action.
WHEN c_actions-merge.
IF mi_merge->has_conflicts( ) = abap_true.
@ -123,16 +125,18 @@ CLASS zcl_abapgit_gui_page_merge IMPLEMENTATION.
zcx_abapgit_exception=>raise( 'nothing to merge' ).
ENDIF.
IF mi_repo->zif_abapgit_repo~get_local_settings( )-code_inspector_check_variant IS NOT INITIAL.
li_repo = mi_repo_online.
IF li_repo->get_local_settings( )-code_inspector_check_variant IS NOT INITIAL.
rs_handled-page = zcl_abapgit_gui_page_code_insp=>create(
ii_repo = mi_repo
ii_repo = mi_repo_online
io_stage = mi_merge->get_result( )-stage ).
ELSE.
rs_handled-page = zcl_abapgit_gui_page_commit=>create(
ii_repo_online = mi_repo
ii_repo_online = mi_repo_online
io_stage = mi_merge->get_result( )-stage ).
ENDIF.
@ -142,7 +146,7 @@ CLASS zcl_abapgit_gui_page_merge IMPLEMENTATION.
WHEN c_actions-res_conflicts.
rs_handled-page = zcl_abapgit_gui_page_merge_res=>create(
ii_repo = mi_repo
ii_repo_online = mi_repo_online
io_merge_page = me
io_merge = mi_merge ).
@ -185,7 +189,7 @@ CLASS zcl_abapgit_gui_page_merge IMPLEMENTATION.
ri_html->add( '<div id="toc">' ).
ri_html->add( zcl_abapgit_gui_chunk_lib=>render_repo_top(
ii_repo = mi_repo
ii_repo = mi_repo_online
iv_show_package = abap_false
iv_show_branch = abap_false ) ).

View File

@ -13,7 +13,7 @@ CLASS zcl_abapgit_gui_page_merge_res DEFINITION
CLASS-METHODS create
IMPORTING
ii_repo TYPE REF TO zif_abapgit_repo_online
ii_repo_online TYPE REF TO zif_abapgit_repo_online
io_merge_page TYPE REF TO zcl_abapgit_gui_page_merge
io_merge TYPE REF TO zif_abapgit_merge
RETURNING
@ -23,7 +23,7 @@ CLASS zcl_abapgit_gui_page_merge_res DEFINITION
METHODS constructor
IMPORTING
ii_repo TYPE REF TO zif_abapgit_repo_online
ii_repo_online TYPE REF TO zif_abapgit_repo_online
io_merge_page TYPE REF TO zcl_abapgit_gui_page_merge
io_merge TYPE REF TO zif_abapgit_merge
RAISING
@ -146,7 +146,7 @@ CLASS zcl_abapgit_gui_page_merge_res IMPLEMENTATION.
super->constructor( ).
mi_repo_online = ii_repo.
mi_repo_online = ii_repo_online.
mo_merge_page = io_merge_page.
mo_merge = io_merge.
@ -163,7 +163,7 @@ CLASS zcl_abapgit_gui_page_merge_res IMPLEMENTATION.
CREATE OBJECT lo_component
EXPORTING
ii_repo = ii_repo
ii_repo_online = ii_repo_online
io_merge_page = io_merge_page
io_merge = io_merge.

View File

@ -42,7 +42,7 @@ CLASS zcl_abapgit_gui_page_repo_view DEFINITION
PRIVATE SECTION.
DATA mi_repo TYPE REF TO zif_abapgit_repo .
DATA mi_repo_aggregated_state TYPE REF TO zcl_abapgit_repo_item_state.
DATA mo_repo_aggregated_state TYPE REF TO zcl_abapgit_repo_item_state.
DATA mv_connection_error TYPE abap_bool.
DATA mv_cur_dir TYPE string .
DATA mv_hide_files TYPE abap_bool .
@ -431,7 +431,7 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
IF mi_repo->is_offline( ) = abap_false.
" online repo
IF mi_repo_aggregated_state->is_unchanged( ) = abap_false. " Any changes
IF mo_repo_aggregated_state->is_unchanged( ) = abap_false. " Any changes
ro_toolbar->add( iv_txt = 'Pull'
iv_act = |{ zif_abapgit_definitions=>c_action-git_pull }?key={ mv_key }|
iv_opt = get_crossout( iv_protected = abap_true
@ -459,7 +459,7 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
ELSE.
" offline repo
IF mi_repo->has_remote_source( ) = abap_true AND mi_repo_aggregated_state->is_unchanged( ) = abap_false.
IF mi_repo->has_remote_source( ) = abap_true AND mo_repo_aggregated_state->is_unchanged( ) = abap_false.
ro_toolbar->add( iv_txt = 'Pull <sup>zip</sup>'
iv_act = |{ zif_abapgit_definitions=>c_action-git_pull }?key={ mv_key }|
iv_opt = zif_abapgit_html=>c_html_opt-strong ).
@ -614,7 +614,7 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
lo_persistence_user = zcl_abapgit_persistence_user=>get_instance( ).
mv_key = iv_key.
mi_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
mi_repo = zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
mv_cur_dir = '/'. " Root
mv_hide_files = lo_persistence_user->get_hide_files( ).
@ -1250,13 +1250,13 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
register_handlers( ).
CREATE OBJECT mi_repo_aggregated_state.
CREATE OBJECT mo_repo_aggregated_state.
CREATE OBJECT ri_html TYPE zcl_abapgit_html.
TRY.
" Reinit, for the case of type change
mi_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( mi_repo->get_key( ) ).
mi_repo = zcl_abapgit_repo_srv=>get_instance( )->get( mi_repo->get_key( ) ).
IF mv_connection_error = abap_true.
" If connection doesn't work, render a minimal header
@ -1310,7 +1310,7 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
apply_order_by( CHANGING ct_repo_items = lt_repo_items ).
LOOP AT lt_repo_items ASSIGNING <ls_item>.
mi_repo_aggregated_state->sum_with_repo_item( <ls_item> ).
mo_repo_aggregated_state->sum_with_repo_item( <ls_item> ).
ENDLOOP.
ri_html->add( render_head_line( ) ).

View File

@ -380,14 +380,14 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION.
lv_sci_result = zif_abapgit_definitions=>c_sci_result-no_run.
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
TRY.
li_repo_online ?= zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
li_repo_online ?= li_repo.
CATCH cx_sy_move_cast_error INTO lx_error.
zcx_abapgit_exception=>raise( `Staging is only possible for online repositories.` ).
ENDTRY.
li_repo = li_repo_online.
IF li_repo_online->get_selected_branch( ) CP zif_abapgit_git_definitions=>c_git_branch-tags.
zcx_abapgit_exception=>raise( |You are working on a tag, must be on branch| ).
ELSEIF li_repo_online->get_selected_commit( ) IS NOT INITIAL.
@ -398,7 +398,7 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION.
TRY.
ri_page = zcl_abapgit_gui_page_code_insp=>create(
ii_repo = li_repo_online
ii_repo = li_repo
iv_raise_when_no_results = abap_true ).
CATCH zcx_abapgit_exception.
@ -491,7 +491,7 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION.
lt_r_trkorr = zcl_abapgit_ui_factory=>get_popups( )->popup_select_wb_tc_tr_and_tsk( ).
li_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
CREATE OBJECT ro_filter.
ro_filter->set_filter_values( iv_package = li_repo->get_package( )
@ -658,7 +658,7 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION.
lv_key = ii_event->query( )->get( 'KEY' ).
IF lv_key IS NOT INITIAL.
li_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
ENDIF.
CASE ii_event->mv_action.
@ -816,7 +816,7 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION.
DATA lv_xstr TYPE xstring.
lt_r_trkorr = zcl_abapgit_ui_factory=>get_popups( )->popup_select_wb_tc_tr_and_tsk( ).
li_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
li_repo->refresh( ).
CREATE OBJECT lo_obj_filter_trans.
lo_obj_filter_trans->set_filter_values( iv_package = li_repo->get_package( )
@ -854,7 +854,7 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION.
WHEN zif_abapgit_definitions=>c_action-zip_import " Import repo from ZIP
OR zif_abapgit_definitions=>c_action-rfc_compare. " Compare repo via RFC
li_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
IF ii_event->mv_action = zif_abapgit_definitions=>c_action-zip_import.
lv_path = zcl_abapgit_ui_factory=>get_frontend_services( )->show_file_open_dialog(
@ -904,7 +904,7 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION.
rs_handled-state = zcl_abapgit_gui=>c_event_state-no_more_act.
ENDCASE.
WHEN zif_abapgit_definitions=>c_action-zip_export. " Export repo as ZIP
li_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
lv_xstr = zcl_abapgit_zip=>encode_files( li_repo->get_files_local( ) ).
file_download( iv_package = li_repo->get_package( )
iv_xstr = lv_xstr ).
@ -922,7 +922,7 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION.
rs_handled-page = zcl_abapgit_gui_page_ex_object=>create( ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-new_page.
WHEN zif_abapgit_definitions=>c_action-where_used.
li_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ).
rs_handled-page = zcl_abapgit_gui_page_whereused=>create( ii_repo = li_repo ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-new_page.
ENDCASE.