mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 03:36:32 +08:00

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com> Co-authored-by: Lars Hvam <larshp@hotmail.com>
149 lines
3.1 KiB
ABAP
149 lines
3.1 KiB
ABAP
CLASS zcl_abapgit_gui_page_syntax DEFINITION
|
|
PUBLIC
|
|
INHERITING FROM zcl_abapgit_gui_page_codi_base
|
|
FINAL
|
|
CREATE PRIVATE.
|
|
|
|
PUBLIC SECTION.
|
|
|
|
INTERFACES:
|
|
zif_abapgit_gui_page_title,
|
|
zif_abapgit_gui_event_handler,
|
|
zif_abapgit_gui_hotkeys,
|
|
zif_abapgit_gui_menu_provider,
|
|
zif_abapgit_gui_renderable.
|
|
|
|
CLASS-METHODS create
|
|
IMPORTING
|
|
ii_repo TYPE REF TO zif_abapgit_repo
|
|
RETURNING
|
|
VALUE(ri_page) TYPE REF TO zif_abapgit_gui_renderable
|
|
RAISING
|
|
zcx_abapgit_exception.
|
|
|
|
METHODS constructor
|
|
IMPORTING
|
|
ii_repo TYPE REF TO zif_abapgit_repo
|
|
RAISING
|
|
zcx_abapgit_exception.
|
|
|
|
PROTECTED SECTION.
|
|
|
|
CONSTANTS c_variant TYPE c LENGTH 30 VALUE 'SYNTAX_CHECK'.
|
|
|
|
PRIVATE SECTION.
|
|
|
|
METHODS run_syntax_check
|
|
RAISING
|
|
zcx_abapgit_exception.
|
|
|
|
ENDCLASS.
|
|
|
|
|
|
|
|
CLASS zcl_abapgit_gui_page_syntax IMPLEMENTATION.
|
|
|
|
|
|
METHOD constructor.
|
|
super->constructor( ).
|
|
mi_repo = ii_repo.
|
|
run_syntax_check( ).
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD create.
|
|
|
|
DATA lo_component TYPE REF TO zcl_abapgit_gui_page_syntax.
|
|
|
|
CREATE OBJECT lo_component
|
|
EXPORTING
|
|
ii_repo = ii_repo.
|
|
|
|
ri_page = zcl_abapgit_gui_page_hoc=>create( lo_component ).
|
|
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD run_syntax_check.
|
|
|
|
DATA: li_syntax_check TYPE REF TO zif_abapgit_code_inspector.
|
|
|
|
li_syntax_check = zcl_abapgit_code_inspector=>get_code_inspector( mi_repo->get_package( ) ).
|
|
|
|
TRY.
|
|
mt_result = li_syntax_check->run( c_variant ).
|
|
CATCH zcx_abapgit_exception.
|
|
" Variant SYNTAX_CHECK does not exist in 702
|
|
mt_result = li_syntax_check->run( 'VERI_' && c_variant ).
|
|
ENDTRY.
|
|
|
|
mv_summary = li_syntax_check->get_summary( ).
|
|
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD zif_abapgit_gui_event_handler~on_event.
|
|
|
|
CASE ii_event->mv_action.
|
|
WHEN c_actions-rerun.
|
|
|
|
run_syntax_check( ).
|
|
rs_handled-state = zcl_abapgit_gui=>c_event_state-re_render.
|
|
|
|
WHEN OTHERS.
|
|
rs_handled = on_event( ii_event ).
|
|
ENDCASE.
|
|
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD zif_abapgit_gui_hotkeys~get_hotkey_actions.
|
|
|
|
DATA: ls_hotkey_action LIKE LINE OF rt_hotkey_actions.
|
|
|
|
ls_hotkey_action-ui_component = 'Syntax Check'.
|
|
|
|
ls_hotkey_action-description = |Re-Run|.
|
|
ls_hotkey_action-action = c_actions-rerun.
|
|
ls_hotkey_action-hotkey = |r|.
|
|
INSERT ls_hotkey_action INTO TABLE rt_hotkey_actions.
|
|
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD zif_abapgit_gui_menu_provider~get_menu.
|
|
|
|
ro_toolbar = build_base_menu( ).
|
|
|
|
ro_toolbar->add(
|
|
iv_txt = 'Back'
|
|
iv_act = zif_abapgit_definitions=>c_action-go_back ).
|
|
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD zif_abapgit_gui_page_title~get_page_title.
|
|
rv_title = 'Syntax Check'.
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD zif_abapgit_gui_renderable~render.
|
|
|
|
register_handlers( ).
|
|
|
|
CREATE OBJECT ri_html TYPE zcl_abapgit_html.
|
|
|
|
ri_html->div(
|
|
iv_class = 'repo'
|
|
ii_content = zcl_abapgit_gui_chunk_lib=>render_repo_top(
|
|
ii_repo = mi_repo
|
|
iv_show_commit = abap_false ) ).
|
|
|
|
render_ci_report(
|
|
ii_html = ri_html
|
|
iv_variant = c_variant
|
|
iv_success_msg = 'No syntax errors' ).
|
|
|
|
ENDMETHOD.
|
|
ENDCLASS.
|