mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +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