diff --git a/src/background/zcl_abapgit_background.clas.abap b/src/background/zcl_abapgit_background.clas.abap index 766e8334d..f84e5b347 100644 --- a/src/background/zcl_abapgit_background.clas.abap +++ b/src/background/zcl_abapgit_background.clas.abap @@ -76,6 +76,7 @@ CLASS ZCL_ABAPGIT_BACKGROUND IMPLEMENTATION. lt_list TYPE zcl_abapgit_persist_background=>ty_background_keys, li_background TYPE REF TO zif_abapgit_background, li_log TYPE REF TO zif_abapgit_log, + lx_error TYPE REF TO zcx_abapgit_exception, lv_repo_name TYPE string. FIELD-SYMBOLS: LIKE LINE OF lt_list. @@ -101,22 +102,26 @@ CLASS ZCL_ABAPGIT_BACKGROUND IMPLEMENTATION. WRITE: / 'Background mode'. LOOP AT lt_list ASSIGNING . - lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( -key ). - lv_repo_name = lo_repo->get_name( ). - WRITE: / -method, lv_repo_name. + TRY. + lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( -key ). + lv_repo_name = lo_repo->get_name( ). + WRITE: / -method, lv_repo_name. - zcl_abapgit_login_manager=>set( - iv_uri = lo_repo->get_url( ) - iv_username = -username - iv_password = -password ). + zcl_abapgit_login_manager=>set( + iv_uri = lo_repo->get_url( ) + iv_username = -username + iv_password = -password ). - CREATE OBJECT li_log TYPE zcl_abapgit_log. - CREATE OBJECT li_background TYPE (-method). + CREATE OBJECT li_log TYPE zcl_abapgit_log. + CREATE OBJECT li_background TYPE (-method). - li_background->run( - io_repo = lo_repo - ii_log = li_log - it_settings = -settings ). + li_background->run( + io_repo = lo_repo + ii_log = li_log + it_settings = -settings ). + CATCH zcx_abapgit_exception INTO lx_error. + li_log->add_exception( lx_error ). + ENDTRY. zcl_abapgit_log_viewer=>write_log( li_log ). ENDLOOP.