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,
|
description TYPE c LENGTH 255,
|
||||||
END OF ty_pragma.
|
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.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS lcl_object_prag IMPLEMENTATION.
|
CLASS lcl_object_prag IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD lif_object~has_changed_since.
|
||||||
|
|
||||||
|
rv_changed = abap_true.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_object~changed_by.
|
METHOD lif_object~changed_by.
|
||||||
|
|
||||||
rv_user = sy-uname.
|
rv_user = sy-uname.
|
||||||
|
|
||||||
ENDMETHOD.
|
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.
|
METHOD lif_object~get_metadata.
|
||||||
|
|
||||||
rs_metadata = get_metadata( ).
|
rs_metadata = get_metadata( ).
|
||||||
|
@ -97,9 +51,87 @@ CLASS lcl_object_prag IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
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.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -117,24 +149,27 @@ CLASS lcl_object_prag IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_object~serialize.
|
METHOD lif_object~compare_to_remote_version.
|
||||||
|
|
||||||
TRY.
|
CREATE OBJECT ro_comparison_result TYPE lcl_comparison_null.
|
||||||
DATA(lo_pragma) = cl_abap_pragma=>get_ref( ms_item-obj_name ).
|
|
||||||
|
|
||||||
DATA(pragma) = VALUE ty_pragma( pragma = lo_pragma->pragma
|
ENDMETHOD.
|
||||||
extension = lo_pragma->extension
|
|
||||||
signature = lo_pragma->signature
|
|
||||||
description = lo_pragma->description ).
|
|
||||||
|
|
||||||
io_xml->add(
|
METHOD _raise_pragma_enqueue.
|
||||||
EXPORTING
|
|
||||||
iv_name = 'PRAG'
|
|
||||||
ig_data = pragma ).
|
|
||||||
|
|
||||||
CATCH cx_abap_pragma_not_exists.
|
lcx_exception=>raise( |Pragma { ms_item-obj_name } enqueue error| ).
|
||||||
RETURN.
|
|
||||||
ENDTRY.
|
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.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user