diff --git a/src/xml/zcl_abapgit_xml_input.clas.abap b/src/xml/zcl_abapgit_xml_input.clas.abap
index 36de6c10b..b40125ee9 100644
--- a/src/xml/zcl_abapgit_xml_input.clas.abap
+++ b/src/xml/zcl_abapgit_xml_input.clas.abap
@@ -5,26 +5,19 @@ CLASS zcl_abapgit_xml_input DEFINITION
PUBLIC SECTION.
+ INTERFACES zif_abapgit_xml_input.
+
+ ALIASES:
+ read FOR zif_abapgit_xml_input~read,
+ get_raw FOR zif_abapgit_xml_input~get_raw,
+ get_metadata FOR zif_abapgit_xml_input~get_metadata.
+
METHODS constructor
IMPORTING
!iv_xml TYPE clike
!iv_filename TYPE string OPTIONAL
RAISING
zcx_abapgit_exception .
- METHODS read
- IMPORTING
- !iv_name TYPE clike
- CHANGING
- !cg_data TYPE any
- RAISING
- zcx_abapgit_exception .
- METHODS get_raw
- RETURNING
- VALUE(ri_raw) TYPE REF TO if_ixml_document .
-* todo, add read_xml to match add_xml in lcl_xml_output
- METHODS get_metadata
- RETURNING
- VALUE(rs_metadata) TYPE zif_abapgit_definitions=>ty_metadata .
PRIVATE SECTION.
METHODS: fix_xml.
@@ -33,7 +26,7 @@ ENDCLASS.
-CLASS ZCL_ABAPGIT_XML_INPUT IMPLEMENTATION.
+CLASS zcl_abapgit_xml_input IMPLEMENTATION.
METHOD constructor.
diff --git a/src/xml/zcl_abapgit_xml_output.clas.abap b/src/xml/zcl_abapgit_xml_output.clas.abap
index dfad60162..64a2a9b16 100644
--- a/src/xml/zcl_abapgit_xml_output.clas.abap
+++ b/src/xml/zcl_abapgit_xml_output.clas.abap
@@ -5,41 +5,20 @@ CLASS zcl_abapgit_xml_output DEFINITION
PUBLIC SECTION.
- TYPES:
- BEGIN OF ty_i18n_params,
- serialize_master_lang_only TYPE abap_bool,
- END OF ty_i18n_params.
+ INTERFACES zif_abapgit_xml_output.
- METHODS add
- IMPORTING
- !iv_name TYPE clike
- !ig_data TYPE any
- RAISING
- zcx_abapgit_exception .
- METHODS set_raw
- IMPORTING
- !ii_raw TYPE REF TO if_ixml_element .
- METHODS add_xml
- IMPORTING
- !iv_name TYPE clike
- !ii_xml TYPE REF TO if_ixml_element .
- METHODS render
- IMPORTING
- !iv_normalize TYPE abap_bool DEFAULT abap_true
- !is_metadata TYPE zif_abapgit_definitions=>ty_metadata OPTIONAL
- RETURNING
- VALUE(rv_xml) TYPE string .
- METHODS i18n_params
- IMPORTING
- iv_serialize_master_lang_only TYPE ty_i18n_params-serialize_master_lang_only OPTIONAL
- RETURNING
- VALUE(rs_params) TYPE ty_i18n_params.
+ ALIASES:
+ add FOR zif_abapgit_xml_output~add,
+ set_raw FOR zif_abapgit_xml_output~set_raw,
+ add_xml FOR zif_abapgit_xml_output~add_xml,
+ render FOR zif_abapgit_xml_output~render,
+ i18n_params FOR zif_abapgit_xml_output~i18n_params.
PROTECTED SECTION.
PRIVATE SECTION.
DATA mi_raw TYPE REF TO if_ixml_element .
- DATA ms_i18n_params TYPE ty_i18n_params .
+ DATA ms_i18n_params TYPE zif_abapgit_xml_output~ty_i18n_params .
METHODS build_asx_node
RETURNING
@@ -48,7 +27,7 @@ ENDCLASS.
-CLASS ZCL_ABAPGIT_XML_OUTPUT IMPLEMENTATION.
+CLASS zcl_abapgit_xml_output IMPLEMENTATION.
METHOD add.
diff --git a/src/xml/zif_abapgit_xml_input.intf.abap b/src/xml/zif_abapgit_xml_input.intf.abap
new file mode 100644
index 000000000..f3aa0cdb6
--- /dev/null
+++ b/src/xml/zif_abapgit_xml_input.intf.abap
@@ -0,0 +1,17 @@
+INTERFACE zif_abapgit_xml_input
+ PUBLIC .
+ METHODS read
+ IMPORTING
+ !iv_name TYPE clike
+ CHANGING
+ !cg_data TYPE any
+ RAISING
+ zcx_abapgit_exception .
+ METHODS get_raw
+ RETURNING
+ VALUE(ri_raw) TYPE REF TO if_ixml_document .
+* todo, add read_xml to match add_xml in lcl_xml_output
+ METHODS get_metadata
+ RETURNING
+ VALUE(rs_metadata) TYPE zif_abapgit_definitions=>ty_metadata .
+ENDINTERFACE.
diff --git a/src/xml/zif_abapgit_xml_input.intf.xml b/src/xml/zif_abapgit_xml_input.intf.xml
new file mode 100644
index 000000000..e761e57ae
--- /dev/null
+++ b/src/xml/zif_abapgit_xml_input.intf.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+ ZIF_ABAPGIT_XML_INPUT
+ E
+ Interface for XML INPUT
+ 2
+ 1
+ X
+
+
+
+
diff --git a/src/xml/zif_abapgit_xml_output.intf.abap b/src/xml/zif_abapgit_xml_output.intf.abap
new file mode 100644
index 000000000..19984a952
--- /dev/null
+++ b/src/xml/zif_abapgit_xml_output.intf.abap
@@ -0,0 +1,32 @@
+INTERFACE zif_abapgit_xml_output
+ PUBLIC .
+ TYPES:
+ BEGIN OF ty_i18n_params,
+ serialize_master_lang_only TYPE abap_bool,
+ END OF ty_i18n_params.
+
+ METHODS add
+ IMPORTING
+ !iv_name TYPE clike
+ !ig_data TYPE any
+ RAISING
+ zcx_abapgit_exception .
+ METHODS set_raw
+ IMPORTING
+ !ii_raw TYPE REF TO if_ixml_element .
+ METHODS add_xml
+ IMPORTING
+ !iv_name TYPE clike
+ !ii_xml TYPE REF TO if_ixml_element .
+ METHODS render
+ IMPORTING
+ !iv_normalize TYPE sap_bool DEFAULT abap_true
+ !is_metadata TYPE zif_abapgit_definitions=>ty_metadata OPTIONAL
+ RETURNING
+ VALUE(rv_xml) TYPE string .
+ METHODS i18n_params
+ IMPORTING
+ iv_serialize_master_lang_only TYPE ty_i18n_params-serialize_master_lang_only OPTIONAL
+ RETURNING
+ VALUE(rs_params) TYPE ty_i18n_params.
+ENDINTERFACE.
diff --git a/src/xml/zif_abapgit_xml_output.intf.xml b/src/xml/zif_abapgit_xml_output.intf.xml
new file mode 100644
index 000000000..db24d7bb3
--- /dev/null
+++ b/src/xml/zif_abapgit_xml_output.intf.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+ ZIF_ABAPGIT_XML_OUTPUT
+ E
+ Interface for XML OUTPUT
+ 2
+ 1
+ X
+
+
+
+