mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +08:00
Allow disabling of GUI (#6744)
This commit is contained in:
parent
978a8aa65c
commit
2b55eecaee
|
@ -105,57 +105,6 @@ CLASS ltcl_popups_mock IMPLEMENTATION.
|
|||
|
||||
ENDCLASS.
|
||||
|
||||
CLASS ltcl_sapgui_mock DEFINITION FINAL FOR TESTING
|
||||
DURATION SHORT
|
||||
RISK LEVEL HARMLESS.
|
||||
|
||||
PUBLIC SECTION.
|
||||
|
||||
INTERFACES:
|
||||
zif_abapgit_frontend_services.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
CLASS ltcl_sapgui_mock IMPLEMENTATION.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~clipboard_export.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~directory_browse.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~directory_create.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~directory_exist.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~execute.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~file_download.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~file_upload.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~get_file_separator.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~get_gui_version.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~get_system_directory.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~gui_is_available.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~is_sapgui_for_java.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~is_sapgui_for_windows.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~is_webgui.
|
||||
rv_is_webgui = abap_false.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~open_ie_devtools.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~show_file_open_dialog.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~show_file_save_dialog.
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
CLASS ltcl_test_form DEFINITION
|
||||
FOR TESTING
|
||||
RISK LEVEL HARMLESS
|
||||
|
@ -165,7 +114,7 @@ CLASS ltcl_test_form DEFINITION
|
|||
PRIVATE SECTION.
|
||||
DATA:
|
||||
mo_popups_mock TYPE REF TO ltcl_popups_mock,
|
||||
mo_sapgui_mock TYPE REF TO ltcl_sapgui_mock.
|
||||
mo_sapgui_mock TYPE REF TO zif_abapgit_frontend_services.
|
||||
|
||||
METHODS setup.
|
||||
METHODS validate1 FOR TESTING RAISING zcx_abapgit_exception.
|
||||
|
@ -186,8 +135,8 @@ CLASS ltcl_test_form IMPLEMENTATION.
|
|||
CREATE OBJECT mo_popups_mock TYPE ltcl_popups_mock.
|
||||
zcl_abapgit_ui_injector=>set_popups( mo_popups_mock ).
|
||||
|
||||
CREATE OBJECT mo_sapgui_mock TYPE ltcl_sapgui_mock.
|
||||
zcl_abapgit_ui_injector=>set_frontend_services( mo_sapgui_mock ).
|
||||
" Disable GUI
|
||||
mo_sapgui_mock = zcl_abapgit_ui_factory=>get_frontend_services( abap_true ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
|
|
@ -24,19 +24,6 @@ CLASS ltd_branch_list DEFINITION FINAL FOR TESTING INHERITING FROM zcl_abapgit_g
|
|||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS ltd_frontend_services DEFINITION FINAL FOR TESTING
|
||||
DURATION SHORT
|
||||
RISK LEVEL HARMLESS.
|
||||
|
||||
PUBLIC SECTION.
|
||||
|
||||
INTERFACES:
|
||||
zif_abapgit_frontend_services.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
||||
CLASS ltcl_validate_form DEFINITION FINAL FOR TESTING
|
||||
DURATION SHORT
|
||||
RISK LEVEL HARMLESS.
|
||||
|
@ -127,62 +114,6 @@ CLASS ltd_branch_list IMPLEMENTATION.
|
|||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS ltd_frontend_services IMPLEMENTATION.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~clipboard_export.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~directory_browse.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~directory_create.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~directory_exist.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~execute.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~file_download.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~file_upload.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~get_file_separator.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~get_gui_version.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~get_system_directory.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~gui_is_available.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~is_sapgui_for_java.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~is_sapgui_for_windows.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~is_webgui.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~open_ie_devtools.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~show_file_open_dialog.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~show_file_save_dialog.
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS ltcl_validate_form IMPLEMENTATION.
|
||||
|
||||
METHOD setup.
|
||||
|
@ -192,8 +123,8 @@ CLASS ltcl_validate_form IMPLEMENTATION.
|
|||
CREATE OBJECT mo_git_transport_mock TYPE ltd_git_transport.
|
||||
zcl_abapgit_git_injector=>set_git_transport( mo_git_transport_mock ).
|
||||
|
||||
CREATE OBJECT mo_frontend_services_mock TYPE ltd_frontend_services.
|
||||
zcl_abapgit_ui_injector=>set_frontend_services( mo_frontend_services_mock ).
|
||||
" Disable GUI
|
||||
mo_frontend_services_mock = zcl_abapgit_ui_factory=>get_frontend_services( abap_true ).
|
||||
|
||||
ls_data-key = 1.
|
||||
ls_data-branch_name = 'main'.
|
||||
|
|
89
src/ui/zcl_abapgit_frontend_no_gui.clas.abap
Normal file
89
src/ui/zcl_abapgit_frontend_no_gui.clas.abap
Normal file
|
@ -0,0 +1,89 @@
|
|||
CLASS zcl_abapgit_frontend_no_gui DEFINITION
|
||||
PUBLIC
|
||||
CREATE PRIVATE
|
||||
GLOBAL FRIENDS zcl_abapgit_ui_factory.
|
||||
|
||||
PUBLIC SECTION.
|
||||
|
||||
INTERFACES zif_abapgit_frontend_services.
|
||||
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
||||
CLASS zcl_abapgit_frontend_no_gui IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~clipboard_export.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~directory_browse.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~directory_create.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~directory_exist.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~execute.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~file_download.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~file_upload.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~get_file_separator.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~get_gui_version.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~get_system_directory.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~gui_is_available.
|
||||
rv_gui_is_available = abap_false.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~is_sapgui_for_java.
|
||||
rv_result = abap_false.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~is_sapgui_for_windows.
|
||||
rv_result = abap_false.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~is_webgui.
|
||||
rv_is_webgui = abap_false.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~open_ie_devtools.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~show_file_open_dialog.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_frontend_services~show_file_save_dialog.
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
16
src/ui/zcl_abapgit_frontend_no_gui.clas.xml
Normal file
16
src/ui/zcl_abapgit_frontend_no_gui.clas.xml
Normal file
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<VSEOCLASS>
|
||||
<CLSNAME>ZCL_ABAPGIT_FRONTEND_NO_GUI</CLSNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>abapGit - Frontend without GUI</DESCRIPT>
|
||||
<STATE>1</STATE>
|
||||
<CLSCCINCL>X</CLSCCINCL>
|
||||
<FIXPT>X</FIXPT>
|
||||
<UNICODE>X</UNICODE>
|
||||
</VSEOCLASS>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
|
@ -24,6 +24,8 @@ CLASS zcl_abapgit_ui_factory DEFINITION
|
|||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
CLASS-METHODS get_frontend_services
|
||||
IMPORTING
|
||||
!iv_disable_gui TYPE abap_bool DEFAULT abap_false
|
||||
RETURNING
|
||||
VALUE(ri_fe_serv) TYPE REF TO zif_abapgit_frontend_services .
|
||||
CLASS-METHODS get_html_viewer
|
||||
|
@ -116,7 +118,11 @@ CLASS zcl_abapgit_ui_factory IMPLEMENTATION.
|
|||
METHOD get_frontend_services.
|
||||
|
||||
IF gi_fe_services IS INITIAL.
|
||||
CREATE OBJECT gi_fe_services TYPE zcl_abapgit_frontend_services.
|
||||
IF iv_disable_gui IS INITIAL.
|
||||
CREATE OBJECT gi_fe_services TYPE zcl_abapgit_frontend_services.
|
||||
ELSE.
|
||||
CREATE OBJECT gi_fe_services TYPE zcl_abapgit_frontend_no_gui.
|
||||
ENDIF.
|
||||
ENDIF.
|
||||
|
||||
ri_fe_serv = gi_fe_services.
|
||||
|
|
Loading…
Reference in New Issue
Block a user