diff --git a/src/objects/zif_abapgit_object.intf.abap b/src/objects/zif_abapgit_object.intf.abap index 1117888f2..86ec19d89 100644 --- a/src/objects/zif_abapgit_object.intf.abap +++ b/src/objects/zif_abapgit_object.intf.abap @@ -16,6 +16,8 @@ INTERFACE zif_abapgit_object late TYPE zif_abapgit_object=>ty_deserialization_step VALUE `LATE`, END OF gc_step_id. + CONSTANTS c_abap_version_sap_cp TYPE progdir-uccheck VALUE '5' ##NO_TEXT. + CONSTANTS c_abap_version_default TYPE progdir-uccheck VALUE 'X' ##NO_TEXT. METHODS serialize IMPORTING diff --git a/src/zcl_abapgit_environment.clas.abap b/src/zcl_abapgit_environment.clas.abap new file mode 100644 index 000000000..e23e6b4f0 --- /dev/null +++ b/src/zcl_abapgit_environment.clas.abap @@ -0,0 +1,36 @@ +CLASS zcl_abapgit_environment DEFINITION + PUBLIC + CREATE PUBLIC . + + PUBLIC SECTION. + + CLASS-METHODS is_cloud + RETURNING + VALUE(rv_cloud) TYPE abap_bool . + PROTECTED SECTION. + + CLASS-DATA gv_cloud TYPE abap_bool VALUE abap_undefined ##NO_TEXT. + PRIVATE SECTION. +ENDCLASS. + + + +CLASS ZCL_ABAPGIT_ENVIRONMENT IMPLEMENTATION. + + + METHOD is_cloud. + + IF gv_cloud = abap_undefined. + TRY. + CALL METHOD ('CL_COS_UTILITIES')=>('IS_SAP_CLOUD_PLATFORM') + RECEIVING + rv_is_sap_cloud_platform = gv_cloud. + CATCH cx_sy_dyn_call_illegal_method. + gv_cloud = abap_false. + ENDTRY. + ENDIF. + + rv_cloud = gv_cloud. + + ENDMETHOD. +ENDCLASS. diff --git a/src/zcl_abapgit_environment.clas.testclasses.abap b/src/zcl_abapgit_environment.clas.testclasses.abap new file mode 100644 index 000000000..faa444b9a --- /dev/null +++ b/src/zcl_abapgit_environment.clas.testclasses.abap @@ -0,0 +1,31 @@ + +CLASS ltcl_test DEFINITION FOR TESTING + DURATION SHORT + RISK LEVEL HARMLESS FINAL. + + PRIVATE SECTION. + DATA: + mo_cut TYPE REF TO zcl_abapgit_environment. + + METHODS: + setup, + is_cloud FOR TESTING. +ENDCLASS. + + +CLASS ltcl_test IMPLEMENTATION. + + METHOD setup. + + CREATE OBJECT mo_cut. + + ENDMETHOD. + + METHOD is_cloud. + + mo_cut->is_cloud( ). +* no assertions, just make sure the dynamic code runs + + ENDMETHOD. + +ENDCLASS. diff --git a/src/zcl_abapgit_environment.clas.xml b/src/zcl_abapgit_environment.clas.xml new file mode 100644 index 000000000..40a27f71b --- /dev/null +++ b/src/zcl_abapgit_environment.clas.xml @@ -0,0 +1,18 @@ + + + + + + ZCL_ABAPGIT_ENVIRONMENT + 1 + E + abapGit - Environment information + 1 + X + X + X + X + + + +