mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +08:00
Code inspector for offline repositories
Before this commit it wasn't possible to run code inspection for offline repos. A dump occured. With this commit it is possible to run code inspections for offline repos, too.
This commit is contained in:
parent
e132c17205
commit
5d439e3699
|
@ -18,7 +18,7 @@ CLASS zcl_abapgit_gui_page_code_insp DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||||
|
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
DATA: mo_repo TYPE REF TO zcl_abapgit_repo_online.
|
DATA: mo_repo TYPE REF TO zcl_abapgit_repo.
|
||||||
|
|
||||||
METHODS:
|
METHODS:
|
||||||
render_content REDEFINITION.
|
render_content REDEFINITION.
|
||||||
|
@ -38,7 +38,9 @@ CLASS zcl_abapgit_gui_page_code_insp DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||||
METHODS:
|
METHODS:
|
||||||
build_menu
|
build_menu
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar,
|
VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar
|
||||||
|
RAISING
|
||||||
|
zcx_abapgit_exception,
|
||||||
|
|
||||||
run_code_inspector
|
run_code_inspector
|
||||||
RAISING
|
RAISING
|
||||||
|
@ -61,7 +63,7 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS ZCL_ABAPGIT_GUI_PAGE_CODE_INSP IMPLEMENTATION.
|
CLASS zcl_abapgit_gui_page_code_insp IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD build_menu.
|
METHOD build_menu.
|
||||||
|
@ -78,6 +80,10 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_CODE_INSP IMPLEMENTATION.
|
||||||
lv_opt = zif_abapgit_definitions=>gc_html_opt-crossout.
|
lv_opt = zif_abapgit_definitions=>gc_html_opt-crossout.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
IF mo_repo->is_offline( ) = abap_true.
|
||||||
|
RETURN.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
IF mo_stage IS BOUND.
|
IF mo_stage IS BOUND.
|
||||||
|
|
||||||
" Staging info already available, we can directly
|
" Staging info already available, we can directly
|
||||||
|
@ -233,11 +239,12 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_CODE_INSP IMPLEMENTATION.
|
||||||
DATA: lo_repo_online TYPE REF TO zcl_abapgit_repo_online,
|
DATA: lo_repo_online TYPE REF TO zcl_abapgit_repo_online,
|
||||||
ls_item TYPE zif_abapgit_definitions=>ty_item.
|
ls_item TYPE zif_abapgit_definitions=>ty_item.
|
||||||
|
|
||||||
lo_repo_online ?= mo_repo.
|
|
||||||
|
|
||||||
CASE iv_action.
|
CASE iv_action.
|
||||||
WHEN c_actions-stage.
|
WHEN c_actions-stage.
|
||||||
|
|
||||||
|
lo_repo_online ?= mo_repo.
|
||||||
|
|
||||||
IF is_stage_allowed( ) = abap_true.
|
IF is_stage_allowed( ) = abap_true.
|
||||||
" we need to refresh as the source might have changed
|
" we need to refresh as the source might have changed
|
||||||
lo_repo_online->refresh( ).
|
lo_repo_online->refresh( ).
|
||||||
|
@ -256,11 +263,13 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_CODE_INSP IMPLEMENTATION.
|
||||||
|
|
||||||
WHEN c_actions-commit.
|
WHEN c_actions-commit.
|
||||||
|
|
||||||
|
lo_repo_online ?= mo_repo.
|
||||||
|
|
||||||
IF is_stage_allowed( ) = abap_true.
|
IF is_stage_allowed( ) = abap_true.
|
||||||
|
|
||||||
CREATE OBJECT ei_page TYPE zcl_abapgit_gui_page_commit
|
CREATE OBJECT ei_page TYPE zcl_abapgit_gui_page_commit
|
||||||
EXPORTING
|
EXPORTING
|
||||||
io_repo = mo_repo
|
io_repo = lo_repo_online
|
||||||
io_stage = mo_stage.
|
io_stage = mo_stage.
|
||||||
ev_state = zif_abapgit_definitions=>gc_event_state-new_page.
|
ev_state = zif_abapgit_definitions=>gc_event_state-new_page.
|
||||||
|
|
||||||
|
|
|
@ -102,6 +102,11 @@ CLASS zcl_abapgit_repo DEFINITION
|
||||||
is_settings TYPE zif_abapgit_persistence=>ty_repo-local_settings
|
is_settings TYPE zif_abapgit_persistence=>ty_repo-local_settings
|
||||||
RAISING
|
RAISING
|
||||||
zcx_abapgit_exception .
|
zcx_abapgit_exception .
|
||||||
|
METHODS run_code_inspector
|
||||||
|
RETURNING
|
||||||
|
value(rt_list) TYPE scit_alvlist
|
||||||
|
RAISING
|
||||||
|
zcx_abapgit_exception .
|
||||||
|
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
@ -111,6 +116,7 @@ CLASS zcl_abapgit_repo DEFINITION
|
||||||
DATA mv_do_local_refresh TYPE abap_bool .
|
DATA mv_do_local_refresh TYPE abap_bool .
|
||||||
DATA mv_last_serialization TYPE timestamp .
|
DATA mv_last_serialization TYPE timestamp .
|
||||||
DATA ms_data TYPE zif_abapgit_persistence=>ty_repo .
|
DATA ms_data TYPE zif_abapgit_persistence=>ty_repo .
|
||||||
|
DATA mv_code_inspector_successful TYPE abap_bool .
|
||||||
|
|
||||||
METHODS set
|
METHODS set
|
||||||
IMPORTING
|
IMPORTING
|
||||||
|
@ -130,6 +136,32 @@ ENDCLASS.
|
||||||
|
|
||||||
CLASS zcl_abapgit_repo IMPLEMENTATION.
|
CLASS zcl_abapgit_repo IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD run_code_inspector.
|
||||||
|
|
||||||
|
DATA: li_code_inspector TYPE REF TO zif_abapgit_code_inspector,
|
||||||
|
lv_check_variant TYPE string.
|
||||||
|
|
||||||
|
lv_check_variant = get_local_settings( )-code_inspector_check_variant.
|
||||||
|
|
||||||
|
IF lv_check_variant IS INITIAL.
|
||||||
|
zcx_abapgit_exception=>raise( |No check variant maintained in repo settings.| ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
li_code_inspector = zcl_abapgit_factory=>get_code_inspector(
|
||||||
|
iv_package = get_package( )
|
||||||
|
iv_check_variant_name = |{ lv_check_variant }| ).
|
||||||
|
|
||||||
|
rt_list = li_code_inspector->run( ).
|
||||||
|
|
||||||
|
DELETE rt_list WHERE kind = 'N'.
|
||||||
|
|
||||||
|
READ TABLE rt_list TRANSPORTING NO FIELDS
|
||||||
|
WITH KEY kind = 'E'.
|
||||||
|
|
||||||
|
mv_code_inspector_successful = boolc( sy-subrc <> 0 ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
|
|
|
@ -73,11 +73,7 @@ CLASS zcl_abapgit_repo_online DEFINITION
|
||||||
VALUE(rt_unnecessary_local_objects) TYPE zif_abapgit_definitions=>ty_tadir_tt
|
VALUE(rt_unnecessary_local_objects) TYPE zif_abapgit_definitions=>ty_tadir_tt
|
||||||
RAISING
|
RAISING
|
||||||
zcx_abapgit_exception .
|
zcx_abapgit_exception .
|
||||||
METHODS run_code_inspector
|
|
||||||
RETURNING
|
|
||||||
VALUE(rt_list) TYPE scit_alvlist
|
|
||||||
RAISING
|
|
||||||
zcx_abapgit_exception .
|
|
||||||
METHODS deserialize
|
METHODS deserialize
|
||||||
REDEFINITION .
|
REDEFINITION .
|
||||||
METHODS get_files_remote
|
METHODS get_files_remote
|
||||||
|
@ -92,7 +88,6 @@ CLASS zcl_abapgit_repo_online DEFINITION
|
||||||
DATA mv_branch TYPE zif_abapgit_definitions=>ty_sha1 .
|
DATA mv_branch TYPE zif_abapgit_definitions=>ty_sha1 .
|
||||||
DATA mv_initialized TYPE abap_bool .
|
DATA mv_initialized TYPE abap_bool .
|
||||||
DATA mt_status TYPE zif_abapgit_definitions=>ty_results_tt .
|
DATA mt_status TYPE zif_abapgit_definitions=>ty_results_tt .
|
||||||
DATA mv_code_inspector_successful TYPE abap_bool .
|
|
||||||
|
|
||||||
METHODS handle_stage_ignore
|
METHODS handle_stage_ignore
|
||||||
IMPORTING
|
IMPORTING
|
||||||
|
@ -398,33 +393,6 @@ CLASS ZCL_ABAPGIT_REPO_ONLINE IMPLEMENTATION.
|
||||||
ENDMETHOD. " reset_status.
|
ENDMETHOD. " reset_status.
|
||||||
|
|
||||||
|
|
||||||
METHOD run_code_inspector.
|
|
||||||
|
|
||||||
DATA: li_code_inspector TYPE REF TO zif_abapgit_code_inspector,
|
|
||||||
lv_check_variant TYPE string.
|
|
||||||
|
|
||||||
lv_check_variant = get_local_settings( )-code_inspector_check_variant.
|
|
||||||
|
|
||||||
IF lv_check_variant IS INITIAL.
|
|
||||||
zcx_abapgit_exception=>raise( |No check variant maintained in repo settings.| ).
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
li_code_inspector = zcl_abapgit_factory=>get_code_inspector(
|
|
||||||
iv_package = get_package( )
|
|
||||||
iv_check_variant_name = |{ lv_check_variant }| ).
|
|
||||||
|
|
||||||
rt_list = li_code_inspector->run( ).
|
|
||||||
|
|
||||||
DELETE rt_list WHERE kind = 'N'.
|
|
||||||
|
|
||||||
READ TABLE rt_list TRANSPORTING NO FIELDS
|
|
||||||
WITH KEY kind = 'E'.
|
|
||||||
|
|
||||||
mv_code_inspector_successful = boolc( sy-subrc <> 0 ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
|
|
||||||
METHOD set_branch_name.
|
METHOD set_branch_name.
|
||||||
|
|
||||||
IF ms_data-local_settings-write_protected = abap_true.
|
IF ms_data-local_settings-write_protected = abap_true.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user