Refactor: Persistence factory - Part 2 (#7231)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run

Co-authored-by: Lars Hvam <larshp@hotmail.com>
This commit is contained in:
Marc Bernard 2025-05-03 10:20:45 +02:00 committed by GitHub
parent 4e0b40e781
commit 05866ada19
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
17 changed files with 53 additions and 77 deletions

View File

@ -91,7 +91,7 @@ CLASS zcl_abapgit_http IMPLEMENTATION.
lo_digest TYPE REF TO zcl_abapgit_http_digest.
lv_default_user = zcl_abapgit_persistence_user=>get_instance( )->get_repo_login( iv_url ).
lv_default_user = zcl_abapgit_persist_factory=>get_user( )->get_repo_login( iv_url ).
lv_user = lv_default_user.
zcl_abapgit_password_dialog=>popup(
@ -106,7 +106,7 @@ CLASS zcl_abapgit_http IMPLEMENTATION.
ENDIF.
IF lv_user <> lv_default_user.
zcl_abapgit_persistence_user=>get_instance( )->set_repo_login(
zcl_abapgit_persist_factory=>get_user( )->set_repo_login(
iv_url = iv_url
iv_login = lv_user ).
ENDIF.

View File

@ -14,7 +14,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_PERSIST_SETTINGS IMPLEMENTATION.
CLASS zcl_abapgit_persist_settings IMPLEMENTATION.
METHOD zif_abapgit_persist_settings~modify.
@ -32,7 +32,7 @@ CLASS ZCL_ABAPGIT_PERSIST_SETTINGS IMPLEMENTATION.
ls_user_settings = io_settings->get_user_settings( ).
zcl_abapgit_persistence_user=>get_instance( )->set_settings( ls_user_settings ).
zcl_abapgit_persist_factory=>get_user( )->set_settings( ls_user_settings ).
" Settings have been modified: Update Buffered Settings
IF mo_settings IS BOUND.
@ -61,7 +61,7 @@ CLASS ZCL_ABAPGIT_PERSIST_SETTINGS IMPLEMENTATION.
iv_type = zcl_abapgit_persistence_db=>c_type_settings
iv_value = '' ) ).
ro_settings->set_user_settings( zcl_abapgit_persistence_user=>get_instance( )->get_settings( ) ).
ro_settings->set_user_settings( zcl_abapgit_persist_factory=>get_user( )->get_settings( ) ).
CATCH zcx_abapgit_not_found zcx_abapgit_exception.

View File

@ -7,13 +7,6 @@ CLASS zcl_abapgit_persistence_user DEFINITION
INTERFACES zif_abapgit_persist_user .
CLASS-METHODS get_instance
IMPORTING
!iv_user TYPE sy-uname DEFAULT sy-uname
RETURNING
VALUE(ri_user) TYPE REF TO zif_abapgit_persist_user
RAISING
zcx_abapgit_exception .
METHODS constructor
IMPORTING
!iv_user TYPE sy-uname DEFAULT sy-uname.
@ -48,7 +41,6 @@ CLASS zcl_abapgit_persistence_user DEFINITION
DATA mv_user TYPE sy-uname .
DATA ms_user TYPE ty_user.
CLASS-DATA gi_current_user TYPE REF TO zif_abapgit_persist_user .
METHODS from_xml
IMPORTING
@ -107,22 +99,6 @@ CLASS zcl_abapgit_persistence_user IMPLEMENTATION.
ENDMETHOD.
METHOD get_instance.
IF iv_user = sy-uname ##USER_OK.
IF gi_current_user IS NOT BOUND.
CREATE OBJECT gi_current_user TYPE zcl_abapgit_persistence_user.
ENDIF.
ri_user = gi_current_user.
ELSE.
CREATE OBJECT ri_user TYPE zcl_abapgit_persistence_user
EXPORTING
iv_user = iv_user.
ENDIF.
ENDMETHOD.
METHOD read.
DATA: lv_xml TYPE string.

View File

@ -27,12 +27,12 @@ CLASS ltcl_user IMPLEMENTATION.
DATA: lv_user TYPE string.
mi_user = zcl_abapgit_persistence_user=>get_instance( c_abap_user ).
mi_user = zcl_abapgit_persist_factory=>get_user( c_abap_user ).
mi_user->set_default_git_user_name( c_git_user ).
FREE mi_user.
mi_user = zcl_abapgit_persistence_user=>get_instance( c_abap_user ).
mi_user = zcl_abapgit_persist_factory=>get_user( c_abap_user ).
lv_user = mi_user->get_default_git_user_name( ).
cl_abap_unit_assert=>assert_equals(
@ -52,12 +52,12 @@ CLASS ltcl_user IMPLEMENTATION.
RETURN. " can't test
ENDIF.
mi_user = zcl_abapgit_persistence_user=>get_instance( c_abap_user ).
mi_user = zcl_abapgit_persist_factory=>get_user( c_abap_user ).
mi_user->set_repo_show( lv_repo_key ).
FREE mi_user.
mi_user = zcl_abapgit_persistence_user=>get_instance( c_abap_user ).
mi_user = zcl_abapgit_persist_factory=>get_user( c_abap_user ).
lv_key = mi_user->get_repo_show( ).
cl_abap_unit_assert=>assert_equals(
@ -70,13 +70,13 @@ CLASS ltcl_user IMPLEMENTATION.
DATA: lv_login TYPE string.
mi_user = zcl_abapgit_persistence_user=>get_instance( c_abap_user ).
mi_user = zcl_abapgit_persist_factory=>get_user( c_abap_user ).
mi_user->set_repo_login( iv_url = c_repo_url
iv_login = c_git_user ).
FREE mi_user.
mi_user = zcl_abapgit_persistence_user=>get_instance( c_abap_user ).
mi_user = zcl_abapgit_persist_factory=>get_user( c_abap_user ).
lv_login = mi_user->get_repo_login( c_repo_url ).
cl_abap_unit_assert=>assert_equals(
@ -91,12 +91,12 @@ CLASS ltcl_user IMPLEMENTATION.
ls_settings-show_default_repo = abap_true.
mi_user = zcl_abapgit_persistence_user=>get_instance( c_abap_user ).
mi_user = zcl_abapgit_persist_factory=>get_user( c_abap_user ).
mi_user->set_settings( ls_settings ).
FREE mi_user.
mi_user = zcl_abapgit_persistence_user=>get_instance( c_abap_user ).
mi_user = zcl_abapgit_persist_factory=>get_user( c_abap_user ).
ls_settings = mi_user->get_settings( ).
cl_abap_unit_assert=>assert_equals(

View File

@ -146,7 +146,7 @@ CLASS zcl_abapgit_repo_news IMPLEMENTATION.
RETURN.
ENDIF.
lv_last_seen = zcl_abapgit_persistence_user=>get_instance( )->get_repo_last_change_seen( lv_url ).
lv_last_seen = zcl_abapgit_persist_factory=>get_user( )->get_repo_last_change_seen( lv_url ).
TRY. " Find changelog
lt_remote = ii_repo->get_files_remote( ).
@ -170,7 +170,7 @@ CLASS zcl_abapgit_repo_news IMPLEMENTATION.
ENDLOOP.
IF ro_instance IS BOUND AND lv_last_seen <> ro_instance->latest_version( ).
zcl_abapgit_persistence_user=>get_instance( )->set_repo_last_change_seen(
zcl_abapgit_persist_factory=>get_user( )->set_repo_last_change_seen(
iv_url = lv_url
iv_version = ro_instance->latest_version( ) ).
ENDIF.

View File

@ -178,7 +178,7 @@ CLASS zcl_abapgit_repo_srv IMPLEMENTATION.
FIELD-SYMBOLS: <ls_repo_record> LIKE LINE OF lt_list.
lo_repo_db = zcl_abapgit_persist_factory=>get_repo( ).
lt_user_favorites = zcl_abapgit_persistence_user=>get_instance( )->get_favorites( ).
lt_user_favorites = zcl_abapgit_persist_factory=>get_user( )->get_favorites( ).
lt_list = lo_repo_db->list_by_keys( lt_user_favorites ).
SORT lt_list BY package.
@ -330,8 +330,8 @@ CLASS zcl_abapgit_repo_srv IMPLEMENTATION.
zcl_abapgit_persist_factory=>get_repo_cs( )->delete( ii_repo->get_key( ) ).
" If favorite, remove it
IF zcl_abapgit_persistence_user=>get_instance( )->is_favorite_repo( ii_repo->get_key( ) ) = abap_true.
zcl_abapgit_persistence_user=>get_instance( )->toggle_favorite( ii_repo->get_key( ) ).
IF zcl_abapgit_persist_factory=>get_user( )->is_favorite_repo( ii_repo->get_key( ) ) = abap_true.
zcl_abapgit_persist_factory=>get_user( )->toggle_favorite( ii_repo->get_key( ) ).
ENDIF.
DELETE TABLE mt_list FROM ii_repo.
@ -532,7 +532,7 @@ CLASS zcl_abapgit_repo_srv IMPLEMENTATION.
DATA lt_user_favorites TYPE zif_abapgit_persist_user=>ty_favorites.
DATA li_repo TYPE REF TO zif_abapgit_repo.
lt_user_favorites = zcl_abapgit_persistence_user=>get_instance( )->get_favorites( ).
lt_user_favorites = zcl_abapgit_persist_factory=>get_user( )->get_favorites( ).
SORT lt_user_favorites BY table_line.
IF mv_init = abap_false OR mv_only_favorites = abap_false.

View File

@ -1013,7 +1013,7 @@ CLASS zcl_abapgit_gui_chunk_lib IMPLEMENTATION.
ri_html->add( '<td class="repo_attr right">' ).
" Fav
IF abap_true = zcl_abapgit_persistence_user=>get_instance( )->is_favorite_repo( ii_repo->get_key( ) ).
IF abap_true = zcl_abapgit_persist_factory=>get_user( )->is_favorite_repo( ii_repo->get_key( ) ).
lv_icon = 'star/blue'.
ELSE.
lv_icon = 'star/grey'.

View File

@ -233,7 +233,7 @@ CLASS zcl_abapgit_gui_page_commit IMPLEMENTATION.
DATA li_user TYPE REF TO zif_abapgit_persist_user.
li_user = zcl_abapgit_persistence_user=>get_instance( ).
li_user = zcl_abapgit_persist_factory=>get_user( ).
rv_email = li_user->get_repo_git_user_email( mi_repo_online->get_url( ) ).
IF rv_email IS INITIAL.
@ -251,7 +251,7 @@ CLASS zcl_abapgit_gui_page_commit IMPLEMENTATION.
DATA li_user TYPE REF TO zif_abapgit_persist_user.
li_user = zcl_abapgit_persistence_user=>get_instance( ).
li_user = zcl_abapgit_persist_factory=>get_user( ).
rv_user = li_user->get_repo_git_user_name( mi_repo_online->get_url( ) ).
IF rv_user IS INITIAL.

View File

@ -620,7 +620,7 @@ CLASS zcl_abapgit_gui_page_diff_base IMPLEMENTATION.
DATA: lv_ts TYPE timestamp.
super->constructor( ).
mv_unified = zcl_abapgit_persistence_user=>get_instance( )->get_diff_unified( ).
mv_unified = zcl_abapgit_persist_factory=>get_user( )->get_diff_unified( ).
mv_repo_key = iv_key.
mi_repo = zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
@ -654,7 +654,7 @@ CLASS zcl_abapgit_gui_page_diff_base IMPLEMENTATION.
METHOD get_page_layout.
TRY.
IF zcl_abapgit_persistence_user=>get_instance( )->get_diff_unified( ) = abap_true.
IF zcl_abapgit_persist_factory=>get_user( )->get_diff_unified( ) = abap_true.
rv_page_layout = zcl_abapgit_gui_page=>c_page_layout-centered.
ELSE.
rv_page_layout = zcl_abapgit_gui_page=>c_page_layout-full_width.
@ -1294,7 +1294,7 @@ CLASS zcl_abapgit_gui_page_diff_base IMPLEMENTATION.
CASE ii_event->mv_action.
WHEN c_actions-toggle_unified. " Toggle file display
mv_unified = zcl_abapgit_persistence_user=>get_instance( )->toggle_diff_unified( ).
mv_unified = zcl_abapgit_persist_factory=>get_user( )->toggle_diff_unified( ).
rs_handled-page = zcl_abapgit_gui_page_hoc=>create(
iv_page_title = 'Diff'

View File

@ -347,7 +347,7 @@ CLASS zcl_abapgit_gui_page_repo_over IMPLEMENTATION.
super->constructor( ).
ms_list_settings = zcl_abapgit_persistence_user=>get_instance( )->get_list_settings( ).
ms_list_settings = zcl_abapgit_persist_factory=>get_user( )->get_list_settings( ).
" Overwrite setting
IF iv_only_favorites = abap_true.
@ -382,7 +382,7 @@ CLASS zcl_abapgit_gui_page_repo_over IMPLEMENTATION.
CLEAR ls_overview.
ls_overview-favorite = zcl_abapgit_persistence_user=>get_instance(
ls_overview-favorite = zcl_abapgit_persist_factory=>get_user(
)->is_favorite_repo( <ls_repo>->ms_data-key ).
ls_overview-offline = <ls_repo>->ms_data-offline.
ls_overview-key = <ls_repo>->ms_data-key.
@ -840,7 +840,7 @@ CLASS zcl_abapgit_gui_page_repo_over IMPLEMENTATION.
METHOD save_settings.
zcl_abapgit_persistence_user=>get_instance( )->set_list_settings( ms_list_settings ).
zcl_abapgit_persist_factory=>get_user( )->set_list_settings( ms_list_settings ).
ENDMETHOD.
@ -885,7 +885,7 @@ CLASS zcl_abapgit_gui_page_repo_over IMPLEMENTATION.
CASE ii_event->mv_action.
WHEN c_action-select.
zcl_abapgit_persistence_user=>get_instance( )->set_repo_show( lv_key ).
zcl_abapgit_persist_factory=>get_user( )->set_repo_show( lv_key ).
TRY.
zcl_abapgit_repo_srv=>get_instance( )->get( lv_key )->refresh( ).

View File

@ -611,7 +611,7 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
super->constructor( ).
TRY.
lo_persistence_user = zcl_abapgit_persistence_user=>get_instance( ).
lo_persistence_user = zcl_abapgit_persist_factory=>get_user( ).
mv_key = iv_key.
mi_repo = zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
@ -632,7 +632,7 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
CATCH zcx_abapgit_exception INTO lx_error.
" Reset 'last shown repo' so next start will go to repo overview
" and allow troubleshooting of issue
zcl_abapgit_persistence_user=>get_instance( )->set_repo_show( || ).
zcl_abapgit_persist_factory=>get_user( )->set_repo_show( || ).
RAISE EXCEPTION lx_error.
ENDTRY.
@ -1102,7 +1102,7 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
rs_handled-state = zcl_abapgit_gui=>c_event_state-new_page.
WHEN c_actions-toggle_hide_files. " Toggle file display
mv_hide_files = zcl_abapgit_persistence_user=>get_instance( )->toggle_hide_files( ).
mv_hide_files = zcl_abapgit_persist_factory=>get_user( )->toggle_hide_files( ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-re_render.
WHEN c_actions-change_dir. " Change dir
@ -1113,16 +1113,16 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
rs_handled-state = zcl_abapgit_gui=>c_event_state-re_render.
WHEN c_actions-toggle_folders. " Toggle folder view
mv_show_folders = zcl_abapgit_persistence_user=>get_instance( )->toggle_show_folders( ).
mv_show_folders = zcl_abapgit_persist_factory=>get_user( )->toggle_show_folders( ).
mv_cur_dir = '/'. " Root
rs_handled-state = zcl_abapgit_gui=>c_event_state-re_render.
WHEN c_actions-toggle_changes. " Toggle changes only view
mv_changes_only = zcl_abapgit_persistence_user=>get_instance( )->toggle_changes_only( ).
mv_changes_only = zcl_abapgit_persist_factory=>get_user( )->toggle_changes_only( ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-re_render.
WHEN c_actions-toggle_diff_first.
mv_diff_first = zcl_abapgit_persistence_user=>get_instance( )->set_diff_first(
mv_diff_first = zcl_abapgit_persist_factory=>get_user( )->set_diff_first(
boolc( mv_diff_first = abap_false ) ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-re_render.
@ -1131,13 +1131,13 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
rs_handled-state = zcl_abapgit_gui=>c_event_state-re_render.
WHEN zif_abapgit_definitions=>c_action-change_order_by.
mv_order_by = zcl_abapgit_persistence_user=>get_instance( )->set_order_by(
mv_order_by = zcl_abapgit_persist_factory=>get_user( )->set_order_by(
ii_event->query( )->get( 'ORDERBY' ) ).
mv_order_descending = zcl_abapgit_persistence_user=>get_instance( )->set_order_descending( abap_false ).
mv_order_descending = zcl_abapgit_persist_factory=>get_user( )->set_order_descending( abap_false ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-re_render.
WHEN zif_abapgit_definitions=>c_action-direction.
mv_order_descending = zcl_abapgit_persistence_user=>get_instance( )->set_order_descending(
mv_order_descending = zcl_abapgit_persist_factory=>get_user( )->set_order_descending(
boolc( ii_event->query( )->get( 'DIRECTION' ) = 'DESCENDING' ) ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-re_render.
@ -1393,7 +1393,7 @@ CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
CATCH zcx_abapgit_exception INTO lx_error.
" Reset 'last shown repo' so next start will go to repo overview
" and allow troubleshooting of issue
zcl_abapgit_persistence_user=>get_instance( )->set_repo_show( || ).
zcl_abapgit_persist_factory=>get_user( )->set_repo_show( || ).
RAISE EXCEPTION lx_error.
ENDTRY.

View File

@ -229,7 +229,7 @@ CLASS zcl_abapgit_gui_page_tags IMPLEMENTATION.
DATA li_user TYPE REF TO zif_abapgit_persist_user.
li_user = zcl_abapgit_persistence_user=>get_instance( ).
li_user = zcl_abapgit_persist_factory=>get_user( ).
rv_email = li_user->get_repo_git_user_email( mi_repo_online->get_url( ) ).
IF rv_email IS INITIAL.
@ -247,7 +247,7 @@ CLASS zcl_abapgit_gui_page_tags IMPLEMENTATION.
DATA li_user TYPE REF TO zif_abapgit_persist_user.
li_user = zcl_abapgit_persistence_user=>get_instance( ).
li_user = zcl_abapgit_persist_factory=>get_user( ).
rv_user = li_user->get_repo_git_user_name( mi_repo_online->get_url( ) ).
IF rv_user IS INITIAL.

View File

@ -258,7 +258,7 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION.
CASE ii_event->mv_action.
WHEN zif_abapgit_definitions=>c_action-go_home. " Go Home
lv_last_repo_key = zcl_abapgit_persistence_user=>get_instance( )->get_repo_show( ).
lv_last_repo_key = zcl_abapgit_persist_factory=>get_user( )->get_repo_show( ).
IF lv_last_repo_key IS NOT INITIAL.
rs_handled-page = zcl_abapgit_gui_page_repo_view=>create( lv_last_repo_key ).

View File

@ -57,7 +57,7 @@ CLASS zcl_abapgit_services_git IMPLEMENTATION.
DATA: ls_comment TYPE zif_abapgit_git_definitions=>ty_comment,
li_user TYPE REF TO zif_abapgit_persist_user.
li_user = zcl_abapgit_persistence_user=>get_instance( ).
li_user = zcl_abapgit_persist_factory=>get_user( ).
li_user->set_repo_git_user_name( iv_url = ii_repo_online->get_url( )
iv_username = is_commit-committer_name ).
li_user->set_repo_git_user_email( iv_url = ii_repo_online->get_url( )

View File

@ -397,7 +397,7 @@ CLASS zcl_abapgit_services_repo IMPLEMENTATION.
toggle_favorite( ri_repo->get_key( ) ).
" Set default repo for user
zcl_abapgit_persistence_user=>get_instance( )->set_repo_show( ri_repo->get_key( ) ).
zcl_abapgit_persist_factory=>get_user( )->set_repo_show( ri_repo->get_key( ) ).
COMMIT WORK AND WAIT.
@ -439,7 +439,7 @@ CLASS zcl_abapgit_services_repo IMPLEMENTATION.
toggle_favorite( li_repo->get_key( ) ).
" Set default repo for user
zcl_abapgit_persistence_user=>get_instance( )->set_repo_show( li_repo->get_key( ) ).
zcl_abapgit_persist_factory=>get_user( )->set_repo_show( li_repo->get_key( ) ).
COMMIT WORK AND WAIT.
@ -908,7 +908,7 @@ CLASS zcl_abapgit_services_repo IMPLEMENTATION.
METHOD toggle_favorite.
zcl_abapgit_persistence_user=>get_instance( )->toggle_favorite( iv_key ).
zcl_abapgit_persist_factory=>get_user( )->toggle_favorite( iv_key ).
ENDMETHOD.

View File

@ -36,14 +36,14 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_HOTKEY_CTL IMPLEMENTATION.
CLASS zcl_abapgit_gui_hotkey_ctl IMPLEMENTATION.
METHOD constructor.
super->constructor( ).
ms_user_settings = zcl_abapgit_persistence_user=>get_instance( )->get_settings( ).
ms_user_settings = zcl_abapgit_persist_factory=>get_user( )->get_settings( ).
ENDMETHOD.
@ -165,7 +165,7 @@ CLASS ZCL_ABAPGIT_GUI_HOTKEY_CTL IMPLEMENTATION.
ENDLOOP.
" render link hints activation key
ls_user_settings = zcl_abapgit_persistence_user=>get_instance( )->get_settings( ).
ls_user_settings = zcl_abapgit_persist_factory=>get_user( )->get_settings( ).
IF ls_user_settings-link_hints_enabled = abap_true.
ri_html->add( |<li>|
&& |<span class="key-id">{ ls_user_settings-link_hint_key }</span>|

View File

@ -35,7 +35,7 @@ CLASS lcl_startup IMPLEMENTATION.
ls_settings TYPE zif_abapgit_definitions=>ty_s_user_settings,
li_user_persistence TYPE REF TO zif_abapgit_persist_user.
li_user_persistence = zcl_abapgit_persistence_user=>get_instance( ).
li_user_persistence = zcl_abapgit_persist_factory=>get_user( ).
ls_settings = li_user_persistence->get_settings( ).
@ -72,7 +72,7 @@ CLASS lcl_startup IMPLEMENTATION.
IF zcl_abapgit_persist_factory=>get_settings( )->read( )->get_show_default_repo( ) = abap_false.
" Don't show the last seen repo at startup
zcl_abapgit_persistence_user=>get_instance( )->set_repo_show( || ).
zcl_abapgit_persist_factory=>get_user( )->set_repo_show( || ).
ENDIF.
" We have three special cases for gui startup
@ -88,7 +88,7 @@ CLASS lcl_startup IMPLEMENTATION.
IF lv_repo_key IS NOT INITIAL.
SET PARAMETER ID zif_abapgit_definitions=>c_spagpa_param_repo_key FIELD '' ##EXISTS.
zcl_abapgit_persistence_user=>get_instance( )->set_repo_show( lv_repo_key ).
zcl_abapgit_persist_factory=>get_user( )->set_repo_show( lv_repo_key ).
ELSEIF lv_package IS NOT INITIAL.
@ -144,7 +144,7 @@ CLASS lcl_startup IMPLEMENTATION.
ENDLOOP.
IF li_repo IS BOUND.
zcl_abapgit_persistence_user=>get_instance( )->set_repo_show( li_repo->get_key( ) ).
zcl_abapgit_persist_factory=>get_user( )->set_repo_show( li_repo->get_key( ) ).
ENDIF.
ENDMETHOD.