diff --git a/src/ui/zcl_abapgit_gui_page.clas.abap b/src/ui/zcl_abapgit_gui_page.clas.abap index 1a62e2f22..382ef0ee0 100644 --- a/src/ui/zcl_abapgit_gui_page.clas.abap +++ b/src/ui/zcl_abapgit_gui_page.clas.abap @@ -79,14 +79,11 @@ CLASS zcl_abapgit_gui_page DEFINITION PUBLIC ABSTRACT RAISING zcx_abapgit_exception. - METHODS test_changed_by - RAISING zcx_abapgit_exception. - ENDCLASS. -CLASS zcl_abapgit_gui_page IMPLEMENTATION. +CLASS ZCL_ABAPGIT_GUI_PAGE IMPLEMENTATION. METHOD constructor. @@ -307,22 +304,6 @@ CLASS zcl_abapgit_gui_page IMPLEMENTATION. ENDIF. ev_state = zcl_abapgit_gui=>c_event_state-no_more_act. - WHEN zif_abapgit_definitions=>c_action-changed_by. - test_changed_by( ). - ev_state = zcl_abapgit_gui=>c_event_state-no_more_act. - - WHEN zif_abapgit_definitions=>c_action-documentation. - zcl_abapgit_services_abapgit=>open_abapgit_wikipage( ). - ev_state = zcl_abapgit_gui=>c_event_state-no_more_act. - - WHEN zif_abapgit_definitions=>c_action-go_explore. - zcl_abapgit_services_abapgit=>open_dotabap_homepage( ). - ev_state = zcl_abapgit_gui=>c_event_state-no_more_act. - - WHEN zif_abapgit_definitions=>c_action-changelog. - zcl_abapgit_services_abapgit=>open_abapgit_changelog( ). - ev_state = zcl_abapgit_gui=>c_event_state-no_more_act. - ENDCASE. ENDMETHOD. @@ -367,25 +348,4 @@ CLASS zcl_abapgit_gui_page IMPLEMENTATION. ri_html->add( '' ). "#EC NOTEXT ENDMETHOD. - - METHOD test_changed_by. - - DATA: ls_tadir TYPE zif_abapgit_definitions=>ty_tadir, - lv_user TYPE xubname, - ls_item TYPE zif_abapgit_definitions=>ty_item. - - - ls_tadir = zcl_abapgit_ui_factory=>get_popups( )->popup_object( ). - IF ls_tadir IS INITIAL. - RETURN. - ENDIF. - - ls_item-obj_type = ls_tadir-object. - ls_item-obj_name = ls_tadir-obj_name. - - lv_user = zcl_abapgit_objects=>changed_by( ls_item ). - - MESSAGE lv_user TYPE 'S'. - - ENDMETHOD. ENDCLASS. diff --git a/src/ui/zcl_abapgit_gui_router.clas.abap b/src/ui/zcl_abapgit_gui_router.clas.abap index 83fbf9109..3caaa57e1 100644 --- a/src/ui/zcl_abapgit_gui_router.clas.abap +++ b/src/ui/zcl_abapgit_gui_router.clas.abap @@ -72,6 +72,14 @@ CLASS zcl_abapgit_gui_router DEFINITION !ev_state TYPE i RAISING zcx_abapgit_exception. + METHODS other_utilities + IMPORTING + !is_event_data TYPE ty_event_data + EXPORTING + !ei_page TYPE REF TO zif_abapgit_gui_renderable + !ev_state TYPE i + RAISING + zcx_abapgit_exception. METHODS zip_services IMPORTING !is_event_data TYPE ty_event_data @@ -133,7 +141,7 @@ ENDCLASS. -CLASS zcl_abapgit_gui_router IMPLEMENTATION. +CLASS ZCL_ABAPGIT_GUI_ROUTER IMPLEMENTATION. METHOD abapgit_services_actions. @@ -152,6 +160,30 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION. ENDMETHOD. + METHOD call_browser. + + cl_gui_frontend_services=>execute( + EXPORTING + document = |{ iv_url }| + EXCEPTIONS + cntl_error = 1 + error_no_gui = 2 + bad_parameter = 3 + file_not_found = 4 + path_not_found = 5 + file_extension_unknown = 6 + error_execute_failed = 7 + synchronous_failed = 8 + not_supported_by_gui = 9 + OTHERS = 10 ). + + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise_t100( ). + ENDIF. + + ENDMETHOD. + + METHOD db_actions. CASE is_event_data-action. @@ -256,6 +288,16 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION. WHEN zif_abapgit_definitions=>c_action-go_tutorial. " Go to tutorial CREATE OBJECT ei_page TYPE zcl_abapgit_gui_page_tutorial. ev_state = zcl_abapgit_gui=>c_event_state-new_page. + WHEN zif_abapgit_definitions=>c_action-documentation. " abapGit docs + zcl_abapgit_services_abapgit=>open_abapgit_wikipage( ). + ev_state = zcl_abapgit_gui=>c_event_state-no_more_act. + WHEN zif_abapgit_definitions=>c_action-go_explore. " dotabap + zcl_abapgit_services_abapgit=>open_dotabap_homepage( ). + ev_state = zcl_abapgit_gui=>c_event_state-no_more_act. + WHEN zif_abapgit_definitions=>c_action-changelog. " abapGit full changelog + zcl_abapgit_services_abapgit=>open_abapgit_changelog( ). + ev_state = zcl_abapgit_gui=>c_event_state-no_more_act. + ENDCASE. ENDMETHOD. @@ -444,6 +486,19 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION. ENDMETHOD. + METHOD other_utilities. + + CASE is_event_data-action. + WHEN zif_abapgit_definitions=>c_action-changed_by. + zcl_abapgit_services_basis=>test_changed_by( ). + ev_state = zcl_abapgit_gui=>c_event_state-no_more_act. + WHEN OTHERS. + " To pass abaplint, keep the place for future commands + ENDCASE. + + ENDMETHOD. + + METHOD remote_origin_manipulations. DATA: lv_key TYPE zif_abapgit_persistence=>ty_repo-key. @@ -624,6 +679,13 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION. ei_page = ei_page ev_state = ev_state ). + other_utilities( + EXPORTING + is_event_data = ls_event_data + IMPORTING + ei_page = ei_page + ev_state = ev_state ). + IF ev_state IS INITIAL. ev_state = zcl_abapgit_gui=>c_event_state-not_handled. ENDIF. @@ -676,30 +738,4 @@ CLASS zcl_abapgit_gui_router IMPLEMENTATION. ENDCASE. ENDMETHOD. - - - METHOD call_browser. - - cl_gui_frontend_services=>execute( - EXPORTING - document = |{ iv_url }| - EXCEPTIONS - cntl_error = 1 - error_no_gui = 2 - bad_parameter = 3 - file_not_found = 4 - path_not_found = 5 - file_extension_unknown = 6 - error_execute_failed = 7 - synchronous_failed = 8 - not_supported_by_gui = 9 - OTHERS = 10 ). - - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise_t100( ). - ENDIF. - - ENDMETHOD. - - ENDCLASS. diff --git a/src/ui/zcl_abapgit_services_basis.clas.abap b/src/ui/zcl_abapgit_services_basis.clas.abap index 6f5be4b69..1f53cdfe7 100644 --- a/src/ui/zcl_abapgit_services_basis.clas.abap +++ b/src/ui/zcl_abapgit_services_basis.clas.abap @@ -11,6 +11,9 @@ CLASS zcl_abapgit_services_basis DEFINITION VALUE(rv_package) TYPE devclass RAISING zcx_abapgit_exception. + CLASS-METHODS test_changed_by + RAISING + zcx_abapgit_exception. PROTECTED SECTION. PRIVATE SECTION. @@ -40,4 +43,25 @@ CLASS ZCL_ABAPGIT_SERVICES_BASIS IMPLEMENTATION. ENDIF. ENDMETHOD. + + + METHOD test_changed_by. + + DATA ls_tadir TYPE zif_abapgit_definitions=>ty_tadir. + DATA ls_item TYPE zif_abapgit_definitions=>ty_item. + DATA lv_user TYPE xubname. + + ls_tadir = zcl_abapgit_ui_factory=>get_popups( )->popup_object( ). + IF ls_tadir IS INITIAL. + RETURN. + ENDIF. + + ls_item-obj_type = ls_tadir-object. + ls_item-obj_name = ls_tadir-obj_name. + + lv_user = zcl_abapgit_objects=>changed_by( ls_item ). + + MESSAGE lv_user TYPE 'S'. + + ENDMETHOD. ENDCLASS.