mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 04:08:27 +08:00
SAPLink-artifacts added
This commit is contained in:
parent
35d80083cd
commit
0809b07eeb
104
zabapgit_saplink_bridge.prog.abap
Normal file
104
zabapgit_saplink_bridge.prog.abap
Normal file
|
@ -0,0 +1,104 @@
|
||||||
|
**********************************************************************
|
||||||
|
* provide an adapter adapting to the saplink-method-signatures
|
||||||
|
* requires ZSAPLINK to be modified: Provide an additional public method delete!
|
||||||
|
CLASS lcl_saplink_adapter DEFINITION INHERITING FROM lcl_objects_super ABSTRACT.
|
||||||
|
|
||||||
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
INTERFACES lif_object.
|
||||||
|
|
||||||
|
METHODS constructor
|
||||||
|
IMPORTING
|
||||||
|
iv_saplink_classname TYPE classname
|
||||||
|
is_item TYPE ty_item.
|
||||||
|
|
||||||
|
PRIVATE SECTION.
|
||||||
|
DATA mo_saplink TYPE REF TO zsaplink.
|
||||||
|
DATA mv_saplink_classname TYPE classname.
|
||||||
|
ENDCLASS.
|
||||||
|
|
||||||
|
CLASS lcl_saplink_adapter IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD constructor.
|
||||||
|
|
||||||
|
super->constructor( is_item = is_item ).
|
||||||
|
|
||||||
|
mv_saplink_classname = iv_saplink_classname.
|
||||||
|
|
||||||
|
TRY.
|
||||||
|
CREATE OBJECT mo_saplink TYPE (iv_saplink_classname)
|
||||||
|
EXPORTING
|
||||||
|
name = CONV string( ms_item-obj_name ).
|
||||||
|
CATCH cx_sy_create_object_error INTO DATA(lx_saplink_not_created).
|
||||||
|
"leave mo_saplink_wrapper initial => check this in future calls.
|
||||||
|
ENDTRY.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
DEFINE check_valid_saplink.
|
||||||
|
if mo_saplink is INITIAL.
|
||||||
|
raise EXCEPTION type lcx_exception
|
||||||
|
EXPORTING
|
||||||
|
iv_text = |No valid saplink-implementation found - class { mv_saplink_classname } cannot be instantiated|.
|
||||||
|
endif.
|
||||||
|
END-OF-DEFINITION.
|
||||||
|
|
||||||
|
METHOD lif_object~serialize.
|
||||||
|
|
||||||
|
check_valid_saplink.
|
||||||
|
|
||||||
|
TRY.
|
||||||
|
DATA(ixmldoc) = mo_saplink->createixmldocfromobject( ).
|
||||||
|
CATCH zcx_saplink INTO DATA(lx_saplink).
|
||||||
|
RAISE EXCEPTION TYPE lcx_exception EXPORTING iv_text = lx_saplink->get_text( ).
|
||||||
|
ENDTRY.
|
||||||
|
|
||||||
|
mo_files->add_xml( NEW lcl_xml( iv_xml = zsaplink=>convertixmldoctostring( ixmldoc ) ) ).
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD lif_object~delete.
|
||||||
|
|
||||||
|
check_valid_saplink.
|
||||||
|
|
||||||
|
TRY.
|
||||||
|
mo_saplink->delete( ).
|
||||||
|
CATCH zcx_saplink INTO DATA(lx_saplink).
|
||||||
|
RAISE EXCEPTION TYPE lcx_exception EXPORTING iv_text = lx_saplink->get_text( ).
|
||||||
|
ENDTRY.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD lif_object~deserialize.
|
||||||
|
|
||||||
|
check_valid_saplink.
|
||||||
|
|
||||||
|
DATA(ixmldoc) = zsaplink=>convertstringtoixmldoc( mo_files->read_xml( )->xml_render( ) ).
|
||||||
|
|
||||||
|
TRY.
|
||||||
|
mo_saplink->createobjectfromixmldoc(
|
||||||
|
EXPORTING
|
||||||
|
ixmldocument = ixmldoc " IF_IXML_DOCUMENT
|
||||||
|
devclass = iv_package
|
||||||
|
overwrite = abap_true "Always overwrite seems to be paradigm in ABAPGit
|
||||||
|
).
|
||||||
|
CATCH zcx_saplink INTO DATA(lx_saplink).
|
||||||
|
RAISE EXCEPTION TYPE lcx_exception EXPORTING iv_text = lx_saplink->get_text( ).
|
||||||
|
ENDTRY.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD lif_object~exists.
|
||||||
|
|
||||||
|
check_valid_saplink.
|
||||||
|
|
||||||
|
rv_bool = mo_saplink->checkexists( ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD lif_object~jump ##needed.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
ENDCLASS.
|
||||||
|
* End of SAPLink-Adapter
|
||||||
|
**********************************************************************
|
43
zabapgit_saplink_bridge.prog.xml
Normal file
43
zabapgit_saplink_bridge.prog.xml
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<abapGit version="v0.2-alpha">
|
||||||
|
<PROGDIR>
|
||||||
|
<NAME>ZABAPGIT_SAPLINK_BRIDGE</NAME>
|
||||||
|
<STATE>A</STATE>
|
||||||
|
<SQLX></SQLX>
|
||||||
|
<EDTX></EDTX>
|
||||||
|
<VARCL>X</VARCL>
|
||||||
|
<DBAPL>S</DBAPL>
|
||||||
|
<DBNA>D$</DBNA>
|
||||||
|
<CLAS></CLAS>
|
||||||
|
<TYPE></TYPE>
|
||||||
|
<OCCURS></OCCURS>
|
||||||
|
<SUBC>I</SUBC>
|
||||||
|
<APPL></APPL>
|
||||||
|
<SECU></SECU>
|
||||||
|
<CNAM></CNAM>
|
||||||
|
<CDAT>00000000</CDAT>
|
||||||
|
<UNAM></UNAM>
|
||||||
|
<UDAT>00000000</UDAT>
|
||||||
|
<VERN></VERN>
|
||||||
|
<LEVL></LEVL>
|
||||||
|
<RSTAT></RSTAT>
|
||||||
|
<RMAND></RMAND>
|
||||||
|
<RLOAD></RLOAD>
|
||||||
|
<FIXPT>X</FIXPT>
|
||||||
|
<SSET></SSET>
|
||||||
|
<SDATE>00000000</SDATE>
|
||||||
|
<STIME></STIME>
|
||||||
|
<IDATE>00000000</IDATE>
|
||||||
|
<ITIME></ITIME>
|
||||||
|
<LDBNAME>D$S</LDBNAME>
|
||||||
|
<UCCHECK>X</UCCHECK>
|
||||||
|
</PROGDIR>
|
||||||
|
<TEXTPOOL_TABLE>
|
||||||
|
<TEXTPOOL>
|
||||||
|
<ID>R</ID>
|
||||||
|
<KEY></KEY>
|
||||||
|
<ENTRY>Re-use SAPLINK-Plugins</ENTRY>
|
||||||
|
<LENGTH>22 </LENGTH>
|
||||||
|
</TEXTPOOL>
|
||||||
|
</TEXTPOOL_TABLE>
|
||||||
|
</abapGit>
|
Loading…
Reference in New Issue
Block a user