mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 12:20:51 +08:00

* abapOpenChecks config file
* Ignore SCI config folder
* checks revision
* Revert "checks revision"
This reverts commit 56a12289df
.
* Renaming non-constants
Pending:
* Remove SCI configuration
Co-authored-by: Lars Hvam <larshp@hotmail.com>
90 lines
2.5 KiB
ABAP
90 lines
2.5 KiB
ABAP
CLASS zcl_abapgit_environment DEFINITION
|
|
PUBLIC
|
|
FINAL
|
|
CREATE PRIVATE
|
|
GLOBAL FRIENDS zcl_abapgit_factory .
|
|
|
|
PUBLIC SECTION.
|
|
|
|
INTERFACES zif_abapgit_environment .
|
|
PROTECTED SECTION.
|
|
PRIVATE SECTION.
|
|
DATA mv_cloud TYPE abap_bool VALUE abap_undefined ##NO_TEXT.
|
|
DATA mv_is_merged TYPE abap_bool VALUE abap_undefined ##NO_TEXT.
|
|
DATA mv_client_modifiable TYPE abap_bool VALUE abap_undefined ##NO_TEXT.
|
|
ENDCLASS.
|
|
|
|
|
|
|
|
CLASS ZCL_ABAPGIT_ENVIRONMENT IMPLEMENTATION.
|
|
|
|
|
|
METHOD zif_abapgit_environment~compare_with_inactive.
|
|
rv_result = zif_abapgit_environment~is_sap_cloud_platform( ).
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD zif_abapgit_environment~is_merged.
|
|
DATA lr_marker TYPE REF TO data ##NEEDED.
|
|
|
|
IF mv_is_merged = abap_undefined.
|
|
TRY.
|
|
CREATE DATA lr_marker TYPE REF TO ('LIF_ABAPMERGE_MARKER') ##no_text.
|
|
"No exception --> marker found
|
|
mv_is_merged = abap_true.
|
|
|
|
CATCH cx_sy_create_data_error.
|
|
mv_is_merged = abap_false.
|
|
ENDTRY.
|
|
ENDIF.
|
|
rv_result = mv_is_merged.
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD zif_abapgit_environment~is_repo_object_changes_allowed.
|
|
DATA lv_ind TYPE t000-ccnocliind.
|
|
|
|
IF mv_client_modifiable = abap_undefined.
|
|
SELECT SINGLE ccnocliind FROM t000 INTO lv_ind
|
|
WHERE mandt = sy-mandt.
|
|
IF sy-subrc = 0
|
|
AND ( lv_ind = ' ' OR lv_ind = '1' ). "check changes allowed
|
|
mv_client_modifiable = abap_true.
|
|
ELSE.
|
|
mv_client_modifiable = abap_false.
|
|
ENDIF.
|
|
ENDIF.
|
|
rv_result = mv_client_modifiable.
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD zif_abapgit_environment~is_restart_required.
|
|
" This method will be used in the context of SAP Cloud Platform:
|
|
" Pull/Push operations are executed in background jobs.
|
|
" In case of the respective application server needs to be restarted,
|
|
" it is required to terminae the background job and reschedule again.
|
|
rv_result = abap_false.
|
|
TRY.
|
|
CALL METHOD ('CL_APJ_SCP_TOOLS')=>('IS_RESTART_REQUIRED')
|
|
RECEIVING
|
|
restart_required = rv_result.
|
|
CATCH cx_sy_dyn_call_illegal_method cx_sy_dyn_call_illegal_class.
|
|
rv_result = abap_false.
|
|
ENDTRY.
|
|
ENDMETHOD.
|
|
|
|
|
|
METHOD zif_abapgit_environment~is_sap_cloud_platform.
|
|
IF mv_cloud = abap_undefined.
|
|
TRY.
|
|
CALL METHOD ('CL_COS_UTILITIES')=>('IS_SAP_CLOUD_PLATFORM')
|
|
RECEIVING
|
|
rv_is_sap_cloud_platform = mv_cloud.
|
|
CATCH cx_sy_dyn_call_illegal_method.
|
|
mv_cloud = abap_false.
|
|
ENDTRY.
|
|
ENDIF.
|
|
rv_result = mv_cloud.
|
|
ENDMETHOD.
|
|
ENDCLASS.
|