mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 12:20:51 +08:00
very basic data serialization, standalone (#4218)
* data, wip * scaffolding, factory and injector * update * upd * upd * update * rename fs * update * line break parameters * use shorthand hash
This commit is contained in:
parent
e7d7723bd5
commit
236ec45dcd
10
src/data/package.devc.xml
Normal file
10
src/data/package.devc.xml
Normal file
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DEVC" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<DEVC>
|
||||
<CTEXT>abapGit - Data</CTEXT>
|
||||
</DEVC>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
94
src/data/zcl_abapgit_data_config.clas.abap
Normal file
94
src/data/zcl_abapgit_data_config.clas.abap
Normal file
|
@ -0,0 +1,94 @@
|
|||
CLASS zcl_abapgit_data_config DEFINITION
|
||||
PUBLIC
|
||||
FINAL
|
||||
CREATE PUBLIC .
|
||||
|
||||
PUBLIC SECTION.
|
||||
|
||||
INTERFACES zif_abapgit_data_config .
|
||||
|
||||
METHODS constructor .
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
|
||||
DATA mv_path TYPE string .
|
||||
DATA mt_config TYPE zif_abapgit_data_config=>ty_config_tt .
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
||||
CLASS ZCL_ABAPGIT_DATA_CONFIG IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD constructor.
|
||||
|
||||
mv_path = zif_abapgit_data_config=>c_default_path.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_config~add_config.
|
||||
|
||||
ASSERT NOT is_config-type IS INITIAL.
|
||||
ASSERT NOT is_config-name IS INITIAL.
|
||||
|
||||
INSERT is_config INTO TABLE mt_config.
|
||||
IF sy-subrc <> 0.
|
||||
zcx_abapgit_exception=>raise( 'Already in table' ).
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_config~from_json.
|
||||
* todo
|
||||
ASSERT 0 = 1.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_config~get_configs.
|
||||
rt_configs = mt_config.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_config~get_path.
|
||||
|
||||
rv_path = mv_path.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_config~remove_config.
|
||||
|
||||
* todo, give exception if it does not exist
|
||||
|
||||
DELETE mt_config WHERE name = is_config-name AND type = is_config-type.
|
||||
IF sy-subrc <> 0.
|
||||
zcx_abapgit_exception=>raise( 'Not found' ).
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_config~set_path.
|
||||
|
||||
* todo, validate format
|
||||
|
||||
mv_path = iv_path.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_config~to_json.
|
||||
* todo
|
||||
ASSERT 0 = 1.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_config~update_config.
|
||||
|
||||
zif_abapgit_data_config~remove_config( is_config ).
|
||||
zif_abapgit_data_config~add_config( is_config ).
|
||||
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
16
src/data/zcl_abapgit_data_config.clas.xml
Normal file
16
src/data/zcl_abapgit_data_config.clas.xml
Normal file
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<VSEOCLASS>
|
||||
<CLSNAME>ZCL_ABAPGIT_DATA_CONFIG</CLSNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>abapGit - Data Config</DESCRIPT>
|
||||
<STATE>1</STATE>
|
||||
<CLSCCINCL>X</CLSCCINCL>
|
||||
<FIXPT>X</FIXPT>
|
||||
<UNICODE>X</UNICODE>
|
||||
</VSEOCLASS>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
22
src/data/zcl_abapgit_data_deserializer.clas.abap
Normal file
22
src/data/zcl_abapgit_data_deserializer.clas.abap
Normal file
|
@ -0,0 +1,22 @@
|
|||
CLASS zcl_abapgit_data_deserializer DEFINITION
|
||||
PUBLIC
|
||||
FINAL
|
||||
CREATE PUBLIC .
|
||||
|
||||
PUBLIC SECTION.
|
||||
|
||||
INTERFACES zif_abapgit_data_deserializer .
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
||||
CLASS ZCL_ABAPGIT_DATA_DESERIALIZER IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_deserializer~deserialize.
|
||||
* todo
|
||||
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
16
src/data/zcl_abapgit_data_deserializer.clas.xml
Normal file
16
src/data/zcl_abapgit_data_deserializer.clas.xml
Normal file
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<VSEOCLASS>
|
||||
<CLSNAME>ZCL_ABAPGIT_DATA_DESERIALIZER</CLSNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>abapGit - Data deserializer</DESCRIPT>
|
||||
<STATE>1</STATE>
|
||||
<CLSCCINCL>X</CLSCCINCL>
|
||||
<FIXPT>X</FIXPT>
|
||||
<UNICODE>X</UNICODE>
|
||||
</VSEOCLASS>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
46
src/data/zcl_abapgit_data_factory.clas.abap
Normal file
46
src/data/zcl_abapgit_data_factory.clas.abap
Normal file
|
@ -0,0 +1,46 @@
|
|||
CLASS zcl_abapgit_data_factory DEFINITION
|
||||
PUBLIC
|
||||
CREATE PUBLIC
|
||||
GLOBAL FRIENDS zcl_abapgit_data_injector .
|
||||
|
||||
PUBLIC SECTION.
|
||||
|
||||
METHODS get_serializer
|
||||
RETURNING
|
||||
VALUE(ri_serializer) TYPE REF TO zif_abapgit_data_serializer .
|
||||
METHODS get_deserializer
|
||||
RETURNING
|
||||
VALUE(ri_deserializer) TYPE REF TO zif_abapgit_data_deserializer .
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
|
||||
CLASS-DATA gi_serializer TYPE REF TO zif_abapgit_data_serializer .
|
||||
CLASS-DATA gi_deserializer TYPE REF TO zif_abapgit_data_deserializer .
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
||||
CLASS ZCL_ABAPGIT_DATA_FACTORY IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD get_deserializer.
|
||||
|
||||
IF gi_deserializer IS INITIAL.
|
||||
CREATE OBJECT gi_deserializer TYPE zcl_abapgit_data_deserializer.
|
||||
ENDIF.
|
||||
|
||||
ri_deserializer = gi_deserializer.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_serializer.
|
||||
|
||||
IF gi_serializer IS INITIAL.
|
||||
CREATE OBJECT gi_serializer TYPE zcl_abapgit_data_serializer.
|
||||
ENDIF.
|
||||
|
||||
ri_serializer = gi_serializer.
|
||||
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
16
src/data/zcl_abapgit_data_factory.clas.xml
Normal file
16
src/data/zcl_abapgit_data_factory.clas.xml
Normal file
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<VSEOCLASS>
|
||||
<CLSNAME>ZCL_ABAPGIT_DATA_FACTORY</CLSNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>abapGit - Data factory</DESCRIPT>
|
||||
<STATE>1</STATE>
|
||||
<CLSCCINCL>X</CLSCCINCL>
|
||||
<FIXPT>X</FIXPT>
|
||||
<UNICODE>X</UNICODE>
|
||||
</VSEOCLASS>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
30
src/data/zcl_abapgit_data_injector.clas.abap
Normal file
30
src/data/zcl_abapgit_data_injector.clas.abap
Normal file
|
@ -0,0 +1,30 @@
|
|||
CLASS zcl_abapgit_data_injector DEFINITION
|
||||
PUBLIC
|
||||
CREATE PUBLIC .
|
||||
|
||||
PUBLIC SECTION.
|
||||
|
||||
METHODS set_serializer
|
||||
IMPORTING
|
||||
!ii_serializer TYPE REF TO zif_abapgit_data_serializer .
|
||||
METHODS set_deserializer
|
||||
IMPORTING
|
||||
!ii_deserializer TYPE REF TO zif_abapgit_data_deserializer .
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
||||
CLASS ZCL_ABAPGIT_DATA_INJECTOR IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD set_deserializer.
|
||||
zcl_abapgit_data_factory=>gi_deserializer = ii_deserializer.
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD set_serializer.
|
||||
zcl_abapgit_data_factory=>gi_serializer = ii_serializer.
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
16
src/data/zcl_abapgit_data_injector.clas.xml
Normal file
16
src/data/zcl_abapgit_data_injector.clas.xml
Normal file
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<VSEOCLASS>
|
||||
<CLSNAME>ZCL_ABAPGIT_DATA_INJECTOR</CLSNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>abapGit - Data injector</DESCRIPT>
|
||||
<STATE>1</STATE>
|
||||
<CLSCCINCL>X</CLSCCINCL>
|
||||
<FIXPT>X</FIXPT>
|
||||
<UNICODE>X</UNICODE>
|
||||
</VSEOCLASS>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
119
src/data/zcl_abapgit_data_serializer.clas.abap
Normal file
119
src/data/zcl_abapgit_data_serializer.clas.abap
Normal file
|
@ -0,0 +1,119 @@
|
|||
CLASS zcl_abapgit_data_serializer DEFINITION
|
||||
PUBLIC
|
||||
FINAL
|
||||
CREATE PUBLIC .
|
||||
|
||||
PUBLIC SECTION.
|
||||
|
||||
INTERFACES zif_abapgit_data_serializer .
|
||||
PROTECTED SECTION.
|
||||
|
||||
METHODS dump_itab
|
||||
IMPORTING
|
||||
!ir_data TYPE REF TO data
|
||||
RETURNING
|
||||
VALUE(rv_data) TYPE xstring .
|
||||
METHODS build_table_itab
|
||||
IMPORTING
|
||||
!iv_name TYPE tadir-obj_name
|
||||
RETURNING
|
||||
VALUE(rr_data) TYPE REF TO data .
|
||||
METHODS read_database_table
|
||||
IMPORTING
|
||||
!iv_name TYPE tadir-obj_name
|
||||
!it_where TYPE string_table
|
||||
RETURNING
|
||||
VALUE(rr_data) TYPE REF TO data .
|
||||
PRIVATE SECTION.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
||||
CLASS ZCL_ABAPGIT_DATA_SERIALIZER IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD build_table_itab.
|
||||
|
||||
DATA lo_structure TYPE REF TO cl_abap_structdescr.
|
||||
DATA lo_table TYPE REF TO cl_abap_tabledescr.
|
||||
|
||||
lo_structure ?= cl_abap_structdescr=>describe_by_name( iv_name ).
|
||||
* todo, also add unique key corresponding to the db table, so duplicates cannot be returned
|
||||
lo_table = cl_abap_tabledescr=>create( lo_structure ).
|
||||
CREATE DATA rr_data TYPE HANDLE lo_table.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD dump_itab.
|
||||
|
||||
* quick and dirty, will be json instead
|
||||
|
||||
DATA lt_data TYPE string_table.
|
||||
DATA lv_str TYPE string.
|
||||
FIELD-SYMBOLS <lg_tab> TYPE ANY TABLE.
|
||||
FIELD-SYMBOLS <ls_row> TYPE any.
|
||||
|
||||
|
||||
ASSIGN ir_data->* TO <lg_tab>.
|
||||
LOOP AT <lg_tab> ASSIGNING <ls_row>.
|
||||
cl_abap_container_utilities=>fill_container_c(
|
||||
EXPORTING
|
||||
im_value = <ls_row>
|
||||
IMPORTING
|
||||
ex_container = lv_str ).
|
||||
APPEND lv_str TO lt_data.
|
||||
ENDLOOP.
|
||||
|
||||
rv_data = zcl_abapgit_convert=>string_to_xstring_utf8( concat_lines_of( table = lt_data
|
||||
sep = |\n| ) ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD read_database_table.
|
||||
|
||||
DATA lv_where LIKE LINE OF it_where.
|
||||
FIELD-SYMBOLS: <lg_tab> TYPE ANY TABLE.
|
||||
|
||||
rr_data = build_table_itab( iv_name ).
|
||||
ASSIGN rr_data->* TO <lg_tab>.
|
||||
|
||||
LOOP AT it_where INTO lv_where.
|
||||
SELECT * FROM (iv_name) INTO TABLE <lg_tab> WHERE (lv_where).
|
||||
ENDLOOP.
|
||||
IF lines( it_where ) = 0.
|
||||
SELECT * FROM (iv_name) INTO TABLE <lg_tab>.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_data_serializer~serialize.
|
||||
|
||||
DATA lt_configs TYPE zif_abapgit_data_config=>ty_config_tt.
|
||||
DATA ls_config LIKE LINE OF lt_configs.
|
||||
DATA ls_file LIKE LINE OF rt_files.
|
||||
DATA lr_data TYPE REF TO data.
|
||||
|
||||
|
||||
ls_file-path = ii_config->get_path( ).
|
||||
lt_configs = ii_config->get_configs( ).
|
||||
|
||||
LOOP AT lt_configs INTO ls_config.
|
||||
ASSERT ls_config-type = zif_abapgit_data_config=>c_data_type-tabu. " todo
|
||||
ASSERT NOT ls_config-name IS INITIAL.
|
||||
|
||||
lr_data = read_database_table(
|
||||
iv_name = ls_config-name
|
||||
it_where = ls_config-where ).
|
||||
|
||||
ls_file-filename = to_lower( |{ ls_config-name }.{ ls_config-type }.todo| ).
|
||||
ls_file-data = dump_itab( lr_data ).
|
||||
ls_file-sha1 = zcl_abapgit_hash=>sha1_blob( ls_file-data ).
|
||||
APPEND ls_file TO rt_files.
|
||||
|
||||
ENDLOOP.
|
||||
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
40
src/data/zcl_abapgit_data_serializer.clas.testclasses.abap
Normal file
40
src/data/zcl_abapgit_data_serializer.clas.testclasses.abap
Normal file
|
@ -0,0 +1,40 @@
|
|||
|
||||
CLASS ltcl_test DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HARMLESS FINAL.
|
||||
|
||||
PRIVATE SECTION.
|
||||
DATA mi_cut TYPE REF TO zif_abapgit_data_serializer.
|
||||
DATA mi_config TYPE REF TO zif_abapgit_data_config.
|
||||
|
||||
METHODS:
|
||||
setup,
|
||||
serialize FOR TESTING RAISING zcx_abapgit_exception.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS ltcl_test IMPLEMENTATION.
|
||||
|
||||
METHOD setup.
|
||||
CREATE OBJECT mi_cut TYPE zcl_abapgit_data_serializer.
|
||||
CREATE OBJECT mi_config TYPE zcl_abapgit_data_config.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD serialize.
|
||||
|
||||
DATA ls_config TYPE zif_abapgit_data_config=>ty_config.
|
||||
DATA lt_files TYPE zif_abapgit_definitions=>ty_files_tt.
|
||||
|
||||
ls_config-type = 'TABU'.
|
||||
ls_config-name = 'T000'.
|
||||
APPEND |MANDT = '{ sy-mandt }'| TO ls_config-where.
|
||||
|
||||
mi_config->add_config( ls_config ).
|
||||
|
||||
lt_files = mi_cut->serialize( mi_config ).
|
||||
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
act = lines( lt_files )
|
||||
exp = 1 ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
17
src/data/zcl_abapgit_data_serializer.clas.xml
Normal file
17
src/data/zcl_abapgit_data_serializer.clas.xml
Normal file
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<VSEOCLASS>
|
||||
<CLSNAME>ZCL_ABAPGIT_DATA_SERIALIZER</CLSNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>abapGit - Data Serializer</DESCRIPT>
|
||||
<STATE>1</STATE>
|
||||
<CLSCCINCL>X</CLSCCINCL>
|
||||
<FIXPT>X</FIXPT>
|
||||
<UNICODE>X</UNICODE>
|
||||
<WITH_UNIT_TESTS>X</WITH_UNIT_TESTS>
|
||||
</VSEOCLASS>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
59
src/data/zif_abapgit_data_config.intf.abap
Normal file
59
src/data/zif_abapgit_data_config.intf.abap
Normal file
|
@ -0,0 +1,59 @@
|
|||
INTERFACE zif_abapgit_data_config
|
||||
PUBLIC .
|
||||
|
||||
|
||||
TYPES:
|
||||
ty_data_type TYPE c LENGTH 4 .
|
||||
TYPES:
|
||||
BEGIN OF ty_config,
|
||||
type TYPE ty_data_type,
|
||||
name TYPE tadir-obj_name,
|
||||
where TYPE string_table,
|
||||
END OF ty_config .
|
||||
TYPES:
|
||||
ty_config_tt TYPE SORTED TABLE OF ty_config WITH UNIQUE KEY type name.
|
||||
|
||||
CONSTANTS c_default_path TYPE string VALUE '/data/' ##NO_TEXT.
|
||||
CONSTANTS:
|
||||
BEGIN OF c_data_type,
|
||||
tabu TYPE ty_data_type VALUE 'TABU',
|
||||
vdat TYPE ty_data_type VALUE 'VDAT',
|
||||
cdat TYPE ty_data_type VALUE 'CDAT',
|
||||
tdat TYPE ty_data_type VALUE 'TDAT',
|
||||
END OF c_data_type .
|
||||
|
||||
METHODS get_path
|
||||
RETURNING
|
||||
VALUE(rv_path) TYPE string .
|
||||
METHODS set_path
|
||||
IMPORTING
|
||||
!iv_path TYPE string
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS from_json
|
||||
IMPORTING
|
||||
!it_files TYPE zif_abapgit_definitions=>ty_files_tt
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS to_json
|
||||
RETURNING
|
||||
VALUE(rt_files) TYPE zif_abapgit_definitions=>ty_files_tt .
|
||||
METHODS add_config
|
||||
IMPORTING
|
||||
!is_config TYPE ty_config
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS update_config
|
||||
IMPORTING
|
||||
!is_config TYPE ty_config
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS remove_config
|
||||
IMPORTING
|
||||
!is_config TYPE ty_config
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
METHODS get_configs
|
||||
RETURNING
|
||||
VALUE(rt_configs) TYPE ty_config_tt .
|
||||
ENDINTERFACE.
|
15
src/data/zif_abapgit_data_config.intf.xml
Normal file
15
src/data/zif_abapgit_data_config.intf.xml
Normal file
|
@ -0,0 +1,15 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_INTF" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<VSEOINTERF>
|
||||
<CLSNAME>ZIF_ABAPGIT_DATA_CONFIG</CLSNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>abapGit - Data config</DESCRIPT>
|
||||
<EXPOSURE>2</EXPOSURE>
|
||||
<STATE>1</STATE>
|
||||
<UNICODE>X</UNICODE>
|
||||
</VSEOINTERF>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
9
src/data/zif_abapgit_data_deserializer.intf.abap
Normal file
9
src/data/zif_abapgit_data_deserializer.intf.abap
Normal file
|
@ -0,0 +1,9 @@
|
|||
INTERFACE zif_abapgit_data_deserializer
|
||||
PUBLIC .
|
||||
|
||||
METHODS deserialize
|
||||
IMPORTING
|
||||
ii_config TYPE REF TO zif_abapgit_data_config
|
||||
it_files TYPE zif_abapgit_definitions=>ty_files_tt.
|
||||
|
||||
ENDINTERFACE.
|
15
src/data/zif_abapgit_data_deserializer.intf.xml
Normal file
15
src/data/zif_abapgit_data_deserializer.intf.xml
Normal file
|
@ -0,0 +1,15 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_INTF" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<VSEOINTERF>
|
||||
<CLSNAME>ZIF_ABAPGIT_DATA_DESERIALIZER</CLSNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>abapGit - Data deserializer</DESCRIPT>
|
||||
<EXPOSURE>2</EXPOSURE>
|
||||
<STATE>1</STATE>
|
||||
<UNICODE>X</UNICODE>
|
||||
</VSEOINTERF>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
12
src/data/zif_abapgit_data_serializer.intf.abap
Normal file
12
src/data/zif_abapgit_data_serializer.intf.abap
Normal file
|
@ -0,0 +1,12 @@
|
|||
INTERFACE zif_abapgit_data_serializer
|
||||
PUBLIC .
|
||||
|
||||
|
||||
METHODS serialize
|
||||
IMPORTING
|
||||
!ii_config TYPE REF TO zif_abapgit_data_config
|
||||
RETURNING
|
||||
VALUE(rt_files) TYPE zif_abapgit_definitions=>ty_files_tt
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
ENDINTERFACE.
|
15
src/data/zif_abapgit_data_serializer.intf.xml
Normal file
15
src/data/zif_abapgit_data_serializer.intf.xml
Normal file
|
@ -0,0 +1,15 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<abapGit version="v1.0.0" serializer="LCL_OBJECT_INTF" serializer_version="v1.0.0">
|
||||
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||
<asx:values>
|
||||
<VSEOINTERF>
|
||||
<CLSNAME>ZIF_ABAPGIT_DATA_SERIALIZER</CLSNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>abapGit - Data serializer</DESCRIPT>
|
||||
<EXPOSURE>2</EXPOSURE>
|
||||
<STATE>1</STATE>
|
||||
<UNICODE>X</UNICODE>
|
||||
</VSEOINTERF>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
Loading…
Reference in New Issue
Block a user