abapGit/test/src/zcl_abapgit_object_zag1.clas.abap
Lars Hvam 5dd4d83f3f
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
testing: transpiled abapGit running on web via express js (#7008)
2024-08-02 08:06:32 +02:00

115 lines
2.5 KiB
ABAP

CLASS zcl_abapgit_object_zag1 DEFINITION PUBLIC INHERITING FROM zcl_abapgit_objects_super FINAL.
PUBLIC SECTION.
INTERFACES zif_abapgit_object.
CLASS-METHODS upsert
IMPORTING
iv_name TYPE zag1-name
iv_value TYPE zag1-value
iv_package TYPE tadir-devclass.
PROTECTED SECTION.
PRIVATE SECTION.
CONSTANTS c_type TYPE tadir-object VALUE 'ZAG1'.
ENDCLASS.
CLASS zcl_abapgit_object_zag1 IMPLEMENTATION.
METHOD upsert.
DATA ls_data TYPE zag1.
DATA ls_tadir TYPE tadir.
ASSERT sy-sysid = 'ABC'.
ls_data-name = iv_name.
ls_data-value = iv_value.
MODIFY zag1 FROM ls_data.
ASSERT sy-subrc = 0.
ls_tadir-pgmid = 'R3TR'.
ls_tadir-object = c_type.
ls_tadir-obj_name = condense( to_upper( iv_name ) ).
ls_tadir-devclass = iv_package.
MODIFY tadir FROM ls_tadir.
ASSERT sy-subrc = 0.
ENDMETHOD.
METHOD zif_abapgit_object~serialize.
DATA ls_data TYPE zag1.
SELECT SINGLE * FROM zag1 INTO ls_data WHERE name = ms_item-obj_name.
ASSERT sy-subrc = 0.
io_xml->add( iv_name = 'DATA'
ig_data = ls_data ).
ENDMETHOD.
METHOD zif_abapgit_object~deserialize.
DATA ls_data TYPE zag1.
io_xml->read( EXPORTING iv_name = 'DATA'
CHANGING cg_data = ls_data ).
upsert(
iv_name = ls_data-name
iv_value = ls_data-value
iv_package = iv_package ).
ENDMETHOD.
METHOD zif_abapgit_object~delete.
DELETE FROM zag1 WHERE name = ms_item-obj_name.
DELETE FROM tadir WHERE pgmid = 'R3TR' AND object = c_type AND name = ms_item-obj_name.
ENDMETHOD.
METHOD zif_abapgit_object~exists.
DATA lv_name TYPE zag1-name.
SELECT SINGLE name FROM zag1 INTO lv_name WHERE name = ms_item-obj_name.
rv_bool = boolc( sy-subrc = 0 ).
ENDMETHOD.
METHOD zif_abapgit_object~is_locked.
rv_is_locked = abap_false.
ENDMETHOD.
METHOD zif_abapgit_object~is_active.
rv_active = abap_true.
ENDMETHOD.
METHOD zif_abapgit_object~changed_by.
rv_user = sy-uname.
ENDMETHOD.
METHOD zif_abapgit_object~jump.
RETURN.
ENDMETHOD.
METHOD zif_abapgit_object~get_metadata.
RETURN.
ENDMETHOD.
METHOD zif_abapgit_object~get_comparator.
RETURN.
ENDMETHOD.
METHOD zif_abapgit_object~get_deserialize_steps.
RETURN.
ENDMETHOD.
METHOD zif_abapgit_object~get_deserialize_order.
RETURN.
ENDMETHOD.
METHOD zif_abapgit_object~map_filename_to_object.
RETURN.
ENDMETHOD.
METHOD zif_abapgit_object~map_object_to_filename.
RETURN.
ENDMETHOD.
ENDCLASS.