anchor.diff:    PUBLIC SECTION.
       INTERFACES lif_object.
   
  +  PRIVATE SECTION.
  +    TYPES:
  +      ty_id TYPE c LENGTH 30.
  +
  +    METHODS:
  +      get_persistence
  +        IMPORTING
  +          iv_id                 TYPE ty_id
  +        RETURNING
  +          VALUE(ro_persistence) TYPE REF TO object.
  +
   ENDCLASS.
   
   CLASS lcl_object_ucsa IMPLEMENTATION.
  
positive.code: 
    METHOD lif_object~deserialize.
  
      DATA: lv_id   TYPE uconservid,
            lx_root TYPE REF TO cx_root,
            lv_text TYPE string,
            sa      TYPE uconservascomplete.
  
      io_xml->read(
        EXPORTING
          iv_name = 'UCSA'
        CHANGING
          cg_data = sa ).
  
      lv_id = ms_item-obj_name.
  
      TRY.
          DATA(lo_persistence) = cl_ucon_sa_db_persist=>if_ucon_sa_persist~get_instance( lv_id ).
  
          lo_persistence->create( ).
  
          lo_persistence->save( sa      = sa
                                version = 'A' ).
  
          tadir_insert( iv_package ).
  
        CATCH cx_ucon_base INTO lx_root.
          lv_text = lx_root->get_text( ).
          zcx_abapgit_exception=>raise( lv_text ).
      ENDTRY.
  
negative.code: 
    ENDMETHOD.
  
    METHOD get_persistence.
  
      CALL METHOD ('CL_UCON_SA_DB_PERSIST')=>('IF_UCON_SA_PERSIST~GET_INSTANCE')
        EXPORTING
          id       = iv_id
        RECEIVING
          instance = ro_persistence.
  
    ENDMETHOD.
  
  ENDCLASS.
  