From d78e6a4e6bead1c58d5b65d8475c2ce14266e798 Mon Sep 17 00:00:00 2001 From: larshp Date: Sun, 6 Mar 2016 17:58:46 +0000 Subject: [PATCH] add get_metadata method --- zabapgit.prog.abap | 152 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 151 insertions(+), 1 deletion(-) diff --git a/zabapgit.prog.abap b/zabapgit.prog.abap index 0581c0752..6375a6225 100644 --- a/zabapgit.prog.abap +++ b/zabapgit.prog.abap @@ -2117,6 +2117,11 @@ ENDCLASS. INTERFACE lif_object. + TYPES: BEGIN OF ty_metadata, + class TYPE string, + version TYPE string, + END OF ty_metadata. + METHODS: serialize RAISING lcx_exception, @@ -2129,7 +2134,9 @@ INTERFACE lif_object. RETURNING VALUE(rv_bool) TYPE abap_bool RAISING lcx_exception, jump - RAISING lcx_exception. + RAISING lcx_exception, + get_metadata + RETURNING VALUE(rs_metadata) TYPE ty_metadata. DATA: mo_files TYPE REF TO lcl_objects_files. @@ -2334,6 +2341,8 @@ CLASS lcl_objects_super DEFINITION ABSTRACT. DATA: ms_item TYPE ty_item. METHODS: + get_metadata + RETURNING VALUE(rs_metadata) TYPE lif_object=>ty_metadata, corr_insert IMPORTING iv_package TYPE devclass RAISING lcx_exception, @@ -2375,6 +2384,14 @@ ENDCLASS. CLASS lcl_objects_bridge IMPLEMENTATION. + METHOD lif_object~get_metadata. + + CALL METHOD mo_plugin->('ZIF_ABAPGIT_PLUGIN~GET_METADATA') + RECEIVING + rs_metadata = rs_metadata. + + ENDMETHOD. + METHOD constructor. DATA ls_objtype_map LIKE LINE OF gt_objtype_map. @@ -2975,6 +2992,11 @@ CLASS lcl_objects_super IMPLEMENTATION. ENDMETHOD. "jump_se11 + METHOD get_metadata. + rs_metadata-class = cl_abap_classdescr=>describe_by_object_ref( me )->absolute_name. + rs_metadata-version = 'v1.0.0'. + ENDMETHOD. + METHOD corr_insert. DATA: ls_object TYPE ddenqs. @@ -3020,6 +3042,10 @@ ENDCLASS. CLASS lcl_object_acid IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD create_object. DATA: lv_name TYPE aab_id_name. @@ -3139,6 +3165,10 @@ ENDCLASS. CLASS lcl_object_auth IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~serialize. DATA: lo_xml TYPE REF TO lcl_xml_output, @@ -3250,6 +3280,10 @@ ENDCLASS. "lcl_object_doma DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_doma IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_domname TYPE dd01l-domname. @@ -3415,6 +3449,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_iarp IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD read. DATA: li_resource TYPE REF TO if_w3_api_resource, @@ -3598,6 +3636,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_iasp IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD read. DATA: li_service TYPE REF TO if_w3_api_service, @@ -3781,6 +3823,10 @@ ENDCLASS. *----------------------------------------------------------------------* CLASS lcl_object_iatu IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD read. DATA: li_template TYPE REF TO if_w3_api_template, @@ -3969,6 +4015,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_dtel IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_rollname TYPE dd04l-rollname. @@ -4163,6 +4213,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_clas IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: ls_clskey TYPE seoclskey. @@ -4817,6 +4871,10 @@ ENDCLASS. "lcl_object_smim DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_smim IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. TRY. @@ -5137,6 +5195,10 @@ ENDCLASS. "lcl_object_sicf DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_sicf IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: ls_icfservice TYPE icfservice. @@ -5493,6 +5555,10 @@ ENDCLASS. "lcl_object_ssst DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_ssst IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_stylename TYPE stxsadm-stylename. @@ -5738,6 +5804,10 @@ ENDCLASS. "lcl_object_wdyn DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_wdyn IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_component_name TYPE wdy_component-component_name. @@ -6350,6 +6420,10 @@ ENDCLASS. "lcl_object_wdca DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_wdca IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD constructor. super->constructor( is_item = is_item ). RAISE EXCEPTION TYPE cx_sy_create_object_error. @@ -6550,6 +6624,10 @@ ENDCLASS. "lcl_object_wdya DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_wdya IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_name TYPE wdy_application_name. @@ -6743,6 +6821,10 @@ ENDCLASS. "lcl_object_susc DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_suso IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_objct TYPE tobj-objct. @@ -6893,6 +6975,10 @@ ENDCLASS. "lcl_object_suso IMPLEMENTATION *----------------------------------------------------------------------* CLASS lcl_object_susc IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_oclss TYPE tobc-oclss. @@ -7021,6 +7107,10 @@ ENDCLASS. "lcl_object_type DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_type IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. TRY. @@ -7202,6 +7292,10 @@ ENDCLASS. "lcl_object_para DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_para IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_paramid TYPE tpara-paramid. @@ -7331,6 +7425,10 @@ ENDCLASS. CLASS lcl_object_splo IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~serialize. DATA: lo_xml TYPE REF TO lcl_xml_output, @@ -7452,6 +7550,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_ssfo IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_formname TYPE stxfadm-formname. @@ -7678,6 +7780,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_tabl IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_tabname TYPE dd02l-tabname. @@ -7967,6 +8073,10 @@ ENDCLASS. "lcl_object_enho DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_enho IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: ls_tadir TYPE tadir. @@ -8276,6 +8386,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_enqu IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_viewname TYPE dd25l-viewname. @@ -8432,6 +8546,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_shlp IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_shlpname TYPE dd30l-shlpname. @@ -8595,6 +8713,10 @@ ENDCLASS. "lcl_object_TRAN DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_tran IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_tcode TYPE tstc-tcode. @@ -8809,6 +8931,10 @@ ENDCLASS. "lcl_object_tobj DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_tobj IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_objectname TYPE objh-objectname. @@ -8978,6 +9104,10 @@ ENDCLASS. "lcl_object_msag DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_msag IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_arbgb TYPE t100a-arbgb. @@ -9176,6 +9306,10 @@ CLASS lcl_object_fugr IMPLEMENTATION. * function group SIFP * function group SUNI + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_pool TYPE tlibg-area. @@ -9755,6 +9889,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_view IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_viewname TYPE dd25l-viewname. @@ -9941,6 +10079,10 @@ ENDCLASS. "lcl_object_nrob DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_nrob IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_object TYPE tnro-object. @@ -10096,6 +10238,10 @@ ENDCLASS. "lcl_object_dtel DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_ttyp IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_typename TYPE dd40l-typename. @@ -10264,6 +10410,10 @@ ENDCLASS. "lcl_object_prog DEFINITION *----------------------------------------------------------------------* CLASS lcl_object_prog IMPLEMENTATION. + METHOD lif_object~get_metadata. + rs_metadata = get_metadata( ). + ENDMETHOD. + METHOD lif_object~exists. DATA: lv_progname TYPE reposrc-progname.