From 79c799dffbec8a1cd78995152a66ca0e00a49a03 Mon Sep 17 00:00:00 2001 From: larshp Date: Sat, 24 Nov 2018 10:45:36 +0000 Subject: [PATCH] SUCU support via generic serializer --- src/objects/zcl_abapgit_object_sucu.clas.abap | 114 ++++++++++++++++++ src/objects/zcl_abapgit_object_sucu.clas.xml | 18 +++ 2 files changed, 132 insertions(+) create mode 100644 src/objects/zcl_abapgit_object_sucu.clas.abap create mode 100644 src/objects/zcl_abapgit_object_sucu.clas.xml diff --git a/src/objects/zcl_abapgit_object_sucu.clas.abap b/src/objects/zcl_abapgit_object_sucu.clas.abap new file mode 100644 index 000000000..d1cd8b2ac --- /dev/null +++ b/src/objects/zcl_abapgit_object_sucu.clas.abap @@ -0,0 +1,114 @@ +CLASS zcl_abapgit_object_sucu DEFINITION + PUBLIC + INHERITING FROM zcl_abapgit_objects_super + CREATE PUBLIC . + + PUBLIC SECTION. + + INTERFACES zif_abapgit_object . + PROTECTED SECTION. + PRIVATE SECTION. +ENDCLASS. + + + +CLASS ZCL_ABAPGIT_OBJECT_SUCU IMPLEMENTATION. + + + METHOD zif_abapgit_object~changed_by. + rv_user = zcl_abapgit_objects_super=>c_user_unknown. + ENDMETHOD. + + + METHOD zif_abapgit_object~compare_to_remote_version. + CREATE OBJECT ro_comparison_result TYPE zcl_abapgit_comparison_null. + ENDMETHOD. + + + METHOD zif_abapgit_object~delete. + + DATA: lo_generic TYPE REF TO zcl_abapgit_objects_generic. + + CREATE OBJECT lo_generic + EXPORTING + is_item = ms_item. + + lo_generic->delete( ). + + ENDMETHOD. + + + METHOD zif_abapgit_object~deserialize. + + DATA: lo_generic TYPE REF TO zcl_abapgit_objects_generic. + + CREATE OBJECT lo_generic + EXPORTING + is_item = ms_item. + + lo_generic->deserialize( + iv_package = iv_package + io_xml = io_xml ). + + ENDMETHOD. + + + METHOD zif_abapgit_object~exists. + + DATA: lo_generic TYPE REF TO zcl_abapgit_objects_generic. + + CREATE OBJECT lo_generic + EXPORTING + is_item = ms_item. + + rv_bool = lo_generic->exists( ). + + ENDMETHOD. + + + METHOD zif_abapgit_object~get_metadata. + + rs_metadata = get_metadata( ). + rs_metadata-delete_tadir = abap_true. + + ENDMETHOD. + + + METHOD zif_abapgit_object~has_changed_since. + + rv_changed = abap_true. + + ENDMETHOD. + + + METHOD zif_abapgit_object~is_active. + rv_active = is_active( ). + ENDMETHOD. + + + METHOD zif_abapgit_object~is_locked. + + rv_is_locked = abap_false. + + ENDMETHOD. + + + METHOD zif_abapgit_object~jump. + + zcx_abapgit_exception=>raise( |TODO: Jump| ). + + ENDMETHOD. + + + METHOD zif_abapgit_object~serialize. + + DATA: lo_generic TYPE REF TO zcl_abapgit_objects_generic. + + CREATE OBJECT lo_generic + EXPORTING + is_item = ms_item. + + lo_generic->serialize( io_xml ). + + ENDMETHOD. +ENDCLASS. diff --git a/src/objects/zcl_abapgit_object_sucu.clas.xml b/src/objects/zcl_abapgit_object_sucu.clas.xml new file mode 100644 index 000000000..2aa36193f --- /dev/null +++ b/src/objects/zcl_abapgit_object_sucu.clas.xml @@ -0,0 +1,18 @@ + + + + + + ZCL_ABAPGIT_OBJECT_SUCU + 1 + E + ASFC + 2 + 1 + X + X + X + + + +