mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 12:20:51 +08:00
PRAG refactoring
This commit is contained in:
parent
77922db475
commit
d7b872a8eb
|
@ -15,81 +15,35 @@ CLASS lcl_object_prag DEFINITION INHERITING FROM lcl_objects_super FINAL.
|
|||
description TYPE c LENGTH 255,
|
||||
END OF ty_pragma.
|
||||
|
||||
METHODS:
|
||||
_raise_pragma_not_exists
|
||||
RAISING
|
||||
lcx_exception,
|
||||
|
||||
_raise_pragma_exists
|
||||
RAISING
|
||||
lcx_exception,
|
||||
|
||||
_raise_pragma_enqueue
|
||||
RAISING
|
||||
lcx_exception.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
CLASS lcl_object_prag IMPLEMENTATION.
|
||||
|
||||
METHOD lif_object~has_changed_since.
|
||||
|
||||
rv_changed = abap_true.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~changed_by.
|
||||
|
||||
rv_user = sy-uname.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~compare_to_remote_version.
|
||||
|
||||
CREATE OBJECT ro_comparison_result TYPE lcl_comparison_null.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~delete.
|
||||
|
||||
TRY.
|
||||
DATA(lo_pragma) = cl_abap_pragma=>get_ref( ms_item-obj_name ).
|
||||
|
||||
lo_pragma->delete( ).
|
||||
|
||||
CATCH cx_abap_pragma_not_exists
|
||||
cx_abap_pragma_enqueue.
|
||||
|
||||
lcx_exception=>raise( 'PRAG error' ).
|
||||
|
||||
ENDTRY.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~deserialize.
|
||||
|
||||
DATA: pragma TYPE ty_pragma.
|
||||
|
||||
TRY.
|
||||
io_xml->read(
|
||||
EXPORTING
|
||||
iv_name = 'PRAG'
|
||||
CHANGING
|
||||
cg_data = pragma ).
|
||||
|
||||
DATA(lo_pragma) = cl_abap_pragma=>create( p_pragma = ms_item-obj_name
|
||||
p_package = iv_package ).
|
||||
|
||||
lo_pragma->set_info( p_description = pragma-description
|
||||
p_signature = pragma-signature
|
||||
p_extension = pragma-extension ).
|
||||
|
||||
lo_pragma->save( ).
|
||||
|
||||
CATCH cx_abap_pragma_not_exists
|
||||
cx_abap_pragma_exists
|
||||
cx_abap_pragma_enqueue.
|
||||
|
||||
lcx_exception=>raise( 'PRAG error' ).
|
||||
|
||||
ENDTRY.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~exists.
|
||||
|
||||
TRY.
|
||||
cl_abap_pragma=>get_ref( ms_item-obj_name ).
|
||||
CATCH cx_abap_pragma_not_exists.
|
||||
rv_bool = abap_false.
|
||||
RETURN.
|
||||
ENDTRY.
|
||||
|
||||
rv_bool = abap_true.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~get_metadata.
|
||||
|
||||
rs_metadata = get_metadata( ).
|
||||
|
@ -97,9 +51,87 @@ CLASS lcl_object_prag IMPLEMENTATION.
|
|||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~has_changed_since.
|
||||
METHOD lif_object~exists.
|
||||
|
||||
rv_changed = abap_true.
|
||||
TRY.
|
||||
cl_abap_pragma=>get_ref( ms_item-obj_name ).
|
||||
|
||||
CATCH cx_abap_pragma_not_exists.
|
||||
rv_bool = abap_false.
|
||||
RETURN.
|
||||
ENDTRY.
|
||||
|
||||
rv_bool = abap_true.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~serialize.
|
||||
|
||||
DATA: lo_pragma TYPE REF TO cl_abap_pragma,
|
||||
pragma TYPE lcl_object_prag=>ty_pragma.
|
||||
|
||||
TRY.
|
||||
lo_pragma = cl_abap_pragma=>get_ref( ms_item-obj_name ).
|
||||
|
||||
pragma-pragma = lo_pragma->pragma.
|
||||
pragma-extension = lo_pragma->extension.
|
||||
pragma-signature = lo_pragma->signature.
|
||||
pragma-description = lo_pragma->description.
|
||||
|
||||
io_xml->add( iv_name = 'PRAG'
|
||||
ig_data = pragma ).
|
||||
|
||||
CATCH cx_abap_pragma_not_exists.
|
||||
_raise_pragma_not_exists( ).
|
||||
ENDTRY.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~deserialize.
|
||||
|
||||
DATA: pragma TYPE ty_pragma,
|
||||
lo_pragma TYPE REF TO cl_abap_pragma.
|
||||
|
||||
TRY.
|
||||
io_xml->read(
|
||||
EXPORTING
|
||||
iv_name = 'PRAG'
|
||||
CHANGING
|
||||
cg_data = pragma ).
|
||||
|
||||
lo_pragma = cl_abap_pragma=>create( p_pragma = ms_item-obj_name
|
||||
p_package = iv_package ).
|
||||
|
||||
lo_pragma->set_info( p_description = pragma-description
|
||||
p_signature = pragma-signature
|
||||
p_extension = pragma-extension ).
|
||||
|
||||
lo_pragma->save( ).
|
||||
|
||||
CATCH cx_abap_pragma_not_exists.
|
||||
_raise_pragma_not_exists( ).
|
||||
CATCH cx_abap_pragma_exists.
|
||||
_raise_pragma_exists( ).
|
||||
CATCH cx_abap_pragma_enqueue.
|
||||
_raise_pragma_enqueue( ).
|
||||
ENDTRY.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~delete.
|
||||
|
||||
DATA: lo_pragma TYPE REF TO cl_abap_pragma.
|
||||
|
||||
TRY.
|
||||
lo_pragma = cl_abap_pragma=>get_ref( ms_item-obj_name ).
|
||||
|
||||
lo_pragma->delete( ).
|
||||
|
||||
CATCH cx_abap_pragma_not_exists.
|
||||
_raise_pragma_not_exists( ).
|
||||
CATCH cx_abap_pragma_enqueue.
|
||||
_raise_pragma_enqueue( ).
|
||||
ENDTRY.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
@ -117,24 +149,27 @@ CLASS lcl_object_prag IMPLEMENTATION.
|
|||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lif_object~serialize.
|
||||
METHOD lif_object~compare_to_remote_version.
|
||||
|
||||
TRY.
|
||||
DATA(lo_pragma) = cl_abap_pragma=>get_ref( ms_item-obj_name ).
|
||||
CREATE OBJECT ro_comparison_result TYPE lcl_comparison_null.
|
||||
|
||||
DATA(pragma) = VALUE ty_pragma( pragma = lo_pragma->pragma
|
||||
extension = lo_pragma->extension
|
||||
signature = lo_pragma->signature
|
||||
description = lo_pragma->description ).
|
||||
ENDMETHOD.
|
||||
|
||||
io_xml->add(
|
||||
EXPORTING
|
||||
iv_name = 'PRAG'
|
||||
ig_data = pragma ).
|
||||
METHOD _raise_pragma_enqueue.
|
||||
|
||||
CATCH cx_abap_pragma_not_exists.
|
||||
RETURN.
|
||||
ENDTRY.
|
||||
lcx_exception=>raise( |Pragma { ms_item-obj_name } enqueue error| ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD _raise_pragma_exists.
|
||||
|
||||
lcx_exception=>raise( |Pragma { ms_item-obj_name } exists| ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD _raise_pragma_not_exists.
|
||||
|
||||
lcx_exception=>raise( |Pragma { ms_item-obj_name } doesn't exist| ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user