From df459edd83b0bbea2dc5c388957caff4f3d74e50 Mon Sep 17 00:00:00 2001 From: oblomov-dev <102328295+oblomov-dev@users.noreply.github.com> Date: Wed, 29 Jan 2025 14:59:56 +0100 Subject: [PATCH] fix (#1718) --- src/00/02/z2ui5_cl_srtti_aunit.clas.abap | 61 ----- src/00/02/z2ui5_cl_srtti_aunit.clas.xml | 17 -- src/00/02/z2ui5_cl_srtti_classdescr.clas.abap | 26 -- src/00/02/z2ui5_cl_srtti_classdescr.clas.xml | 16 -- .../02/z2ui5_cl_srtti_complexdescr.clas.abap | 15 -- .../02/z2ui5_cl_srtti_complexdescr.clas.xml | 16 -- src/00/02/z2ui5_cl_srtti_datadescr.clas.abap | 15 -- src/00/02/z2ui5_cl_srtti_datadescr.clas.xml | 16 -- src/00/02/z2ui5_cl_srtti_elemdescr.clas.abap | 95 -------- ...5_cl_srtti_elemdescr.clas.testclasses.abap | 98 -------- src/00/02/z2ui5_cl_srtti_elemdescr.clas.xml | 17 -- src/00/02/z2ui5_cl_srtti_intfdescr.clas.abap | 24 -- src/00/02/z2ui5_cl_srtti_intfdescr.clas.xml | 16 -- .../02/z2ui5_cl_srtti_objectdescr.clas.abap | 41 ---- src/00/02/z2ui5_cl_srtti_objectdescr.clas.xml | 16 -- src/00/02/z2ui5_cl_srtti_refdescr.clas.abap | 42 ---- src/00/02/z2ui5_cl_srtti_refdescr.clas.xml | 16 -- .../02/z2ui5_cl_srtti_structdescr.clas.abap | 84 ------- src/00/02/z2ui5_cl_srtti_structdescr.clas.xml | 16 -- src/00/02/z2ui5_cl_srtti_tabledescr.clas.abap | 70 ------ ..._cl_srtti_tabledescr.clas.testclasses.abap | 117 --------- src/00/02/z2ui5_cl_srtti_tabledescr.clas.xml | 17 -- src/00/02/z2ui5_cl_srtti_typedescr.clas.abap | 117 --------- ...5_cl_srtti_typedescr.clas.testclasses.abap | 229 ------------------ src/00/02/z2ui5_cl_srtti_typedescr.clas.xml | 17 -- src/00/02/z2ui5_cx_srtti.clas.abap | 35 --- src/00/02/z2ui5_cx_srtti.clas.xml | 17 -- 27 files changed, 1266 deletions(-) delete mode 100644 src/00/02/z2ui5_cl_srtti_aunit.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_aunit.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_classdescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_classdescr.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_complexdescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_complexdescr.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_datadescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_datadescr.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_elemdescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_elemdescr.clas.testclasses.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_elemdescr.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_intfdescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_intfdescr.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_objectdescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_objectdescr.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_refdescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_refdescr.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_structdescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_structdescr.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_tabledescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_tabledescr.clas.testclasses.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_tabledescr.clas.xml delete mode 100644 src/00/02/z2ui5_cl_srtti_typedescr.clas.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_typedescr.clas.testclasses.abap delete mode 100644 src/00/02/z2ui5_cl_srtti_typedescr.clas.xml delete mode 100644 src/00/02/z2ui5_cx_srtti.clas.abap delete mode 100644 src/00/02/z2ui5_cx_srtti.clas.xml diff --git a/src/00/02/z2ui5_cl_srtti_aunit.clas.abap b/src/00/02/z2ui5_cl_srtti_aunit.clas.abap deleted file mode 100644 index 137cf38a..00000000 --- a/src/00/02/z2ui5_cl_srtti_aunit.clas.abap +++ /dev/null @@ -1,61 +0,0 @@ -CLASS z2ui5_cl_srtti_aunit DEFINITION - PUBLIC - FOR TESTING - FINAL - CREATE PUBLIC . - - PUBLIC SECTION. - CLASS-METHODS serialize_deserialize IMPORTING variable TYPE any. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - - -CLASS z2ui5_cl_srtti_aunit IMPLEMENTATION. - - METHOD serialize_deserialize. - " Serialize: both type and value at the same time. - FIELD-SYMBOLS TYPE any. - DATA rtti1 TYPE REF TO cl_abap_typedescr. - DATA srtti1 TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA xstring TYPE xstring. - DATA srtti2 TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA temp1 TYPE REF TO cl_abap_datadescr. - DATA rtti2 LIKE temp1. - DATA ref_variable2 TYPE REF TO data. - FIELD-SYMBOLS TYPE any. - ASSIGN variable TO . - - rtti1 = cl_abap_typedescr=>describe_by_data( ). - - srtti1 = z2ui5_cl_srtti_typedescr=>create_by_data_object( ). - - CALL TRANSFORMATION id - SOURCE srtti = srtti1 - dobj = - RESULT XML xstring - OPTIONS data_refs = 'heap-or-create'. - - " Deserialize: (1) the type, to create the variable (2) then the value. - - CALL TRANSFORMATION id - SOURCE XML xstring - RESULT srtti = srtti2. - - temp1 ?= srtti2->get_rtti( ). - - rtti2 = temp1. - - CREATE DATA ref_variable2 TYPE HANDLE rtti2. - - ASSIGN ref_variable2->* TO . - CALL TRANSFORMATION id - SOURCE XML xstring - RESULT dobj = . - - cl_abap_unit_assert=>assert_equals( exp = rtti1 act = rtti2 ). - cl_abap_unit_assert=>assert_equals( exp = act = ). - ENDMETHOD. - -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_aunit.clas.xml b/src/00/02/z2ui5_cl_srtti_aunit.clas.xml deleted file mode 100644 index 5043d6bf..00000000 --- a/src/00/02/z2ui5_cl_srtti_aunit.clas.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_AUNIT - E - Test class - 05 - 1 - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_classdescr.clas.abap b/src/00/02/z2ui5_cl_srtti_classdescr.clas.abap deleted file mode 100644 index 3ea99d1c..00000000 --- a/src/00/02/z2ui5_cl_srtti_classdescr.clas.abap +++ /dev/null @@ -1,26 +0,0 @@ -"!

Serializable RTTI class

-CLASS z2ui5_cl_srtti_classdescr DEFINITION - PUBLIC - INHERITING FROM z2ui5_cl_srtti_objectdescr - CREATE PUBLIC. - - PUBLIC SECTION. - - DATA class_kind LIKE cl_abap_classdescr=>class_kind. - DATA create_visibility LIKE cl_abap_classdescr=>create_visibility. - - METHODS constructor - IMPORTING - !rtti TYPE REF TO cl_abap_classdescr. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - -CLASS z2ui5_cl_srtti_classdescr IMPLEMENTATION. - METHOD constructor. - super->constructor( rtti ). - class_kind = rtti->class_kind. - create_visibility = rtti->create_visibility. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_classdescr.clas.xml b/src/00/02/z2ui5_cl_srtti_classdescr.clas.xml deleted file mode 100644 index a2c7b2da..00000000 --- a/src/00/02/z2ui5_cl_srtti_classdescr.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_CLASSDESCR - E - Serializable RTTI class - 1 - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_complexdescr.clas.abap b/src/00/02/z2ui5_cl_srtti_complexdescr.clas.abap deleted file mode 100644 index 303479c8..00000000 --- a/src/00/02/z2ui5_cl_srtti_complexdescr.clas.abap +++ /dev/null @@ -1,15 +0,0 @@ -"!

Serializable RTTI complex type

-CLASS z2ui5_cl_srtti_complexdescr DEFINITION - PUBLIC - INHERITING FROM z2ui5_cl_srtti_datadescr - CREATE PUBLIC . - - PUBLIC SECTION. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - - -CLASS z2ui5_cl_srtti_complexdescr IMPLEMENTATION. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_complexdescr.clas.xml b/src/00/02/z2ui5_cl_srtti_complexdescr.clas.xml deleted file mode 100644 index ccde27c8..00000000 --- a/src/00/02/z2ui5_cl_srtti_complexdescr.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_COMPLEXDESCR - E - Serializable RTTI complex type - 1 - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_datadescr.clas.abap b/src/00/02/z2ui5_cl_srtti_datadescr.clas.abap deleted file mode 100644 index 7ad29a31..00000000 --- a/src/00/02/z2ui5_cl_srtti_datadescr.clas.abap +++ /dev/null @@ -1,15 +0,0 @@ -"!

Serializable RTTI data object

-CLASS z2ui5_cl_srtti_datadescr DEFINITION - PUBLIC - INHERITING FROM z2ui5_cl_srtti_typedescr - CREATE PUBLIC . - - PUBLIC SECTION. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - - -CLASS z2ui5_cl_srtti_datadescr IMPLEMENTATION. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_datadescr.clas.xml b/src/00/02/z2ui5_cl_srtti_datadescr.clas.xml deleted file mode 100644 index f7c55390..00000000 --- a/src/00/02/z2ui5_cl_srtti_datadescr.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_DATADESCR - E - Serializable RTTI data object - 1 - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_elemdescr.clas.abap b/src/00/02/z2ui5_cl_srtti_elemdescr.clas.abap deleted file mode 100644 index 05f3ea45..00000000 --- a/src/00/02/z2ui5_cl_srtti_elemdescr.clas.abap +++ /dev/null @@ -1,95 +0,0 @@ -"!

Serializable RTTI elementary type

-CLASS z2ui5_cl_srtti_elemdescr DEFINITION - PUBLIC - INHERITING FROM z2ui5_cl_srtti_datadescr - CREATE PUBLIC. - - PUBLIC SECTION. - - DATA edit_mask LIKE cl_abap_elemdescr=>edit_mask. - DATA help_id LIKE cl_abap_elemdescr=>help_id. - DATA output_length LIKE cl_abap_elemdescr=>output_length. - - METHODS constructor - IMPORTING - !rtti TYPE REF TO cl_abap_elemdescr. - - METHODS get_rtti - REDEFINITION. - PROTECTED SECTION. - METHODS get_rtti_by_type_kind - IMPORTING - i_type_kind LIKE cl_abap_typedescr=>type_kind - RETURNING - VALUE(rtti) TYPE REF TO cl_abap_typedescr. - PRIVATE SECTION. -ENDCLASS. - - - -CLASS z2ui5_cl_srtti_elemdescr IMPLEMENTATION. - - - METHOD constructor. - super->constructor( rtti ). - - edit_mask = rtti->edit_mask. - help_id = rtti->help_id. - output_length = rtti->output_length. - ENDMETHOD. - - - METHOD get_rtti. - rtti = super->get_rtti( ). - IF rtti IS BOUND. - RETURN. - ENDIF. - - IF is_ddic_type = abap_true - AND technical_type = abap_false. - " If XML transformations are used, they may be based on - " the data element, for instance XSDBOOLEAN will convert "true" - " into "X" during deserialization. - rtti = cl_abap_typedescr=>describe_by_name( absolute_name ). - ELSE. - rtti = get_rtti_by_type_kind( type_kind ). - ENDIF. - ENDMETHOD. - - - METHOD get_rtti_by_type_kind. - DATA l_length TYPE i. - - CASE i_type_kind. - WHEN cl_abap_typedescr=>typekind_num. - l_length = length / cl_abap_char_utilities=>charsize. - rtti = cl_abap_elemdescr=>get_n( l_length ). - WHEN cl_abap_typedescr=>typekind_char. - l_length = length / cl_abap_char_utilities=>charsize. - rtti = cl_abap_elemdescr=>get_c( l_length ). - WHEN cl_abap_typedescr=>typekind_string. - rtti = cl_abap_elemdescr=>get_string( ). - WHEN cl_abap_typedescr=>typekind_xstring. - rtti = cl_abap_elemdescr=>get_xstring( ). - WHEN cl_abap_typedescr=>typekind_int. - rtti = cl_abap_elemdescr=>get_i( ). - WHEN cl_abap_typedescr=>typekind_float. - rtti = cl_abap_elemdescr=>get_f( ). - WHEN cl_abap_typedescr=>typekind_date. - rtti = cl_abap_elemdescr=>get_d( ). - WHEN cl_abap_typedescr=>typekind_time. - rtti = cl_abap_elemdescr=>get_t( ). - WHEN cl_abap_typedescr=>typekind_hex. - rtti = cl_abap_elemdescr=>get_x( length ). - WHEN cl_abap_typedescr=>typekind_packed. - rtti = cl_abap_elemdescr=>get_p( p_length = length - p_decimals = decimals ). - WHEN cl_abap_typedescr=>typekind_decfloat16. - rtti = cl_abap_elemdescr=>get_decfloat16( ). - WHEN cl_abap_typedescr=>typekind_decfloat34. - rtti = cl_abap_elemdescr=>get_decfloat34( ). - WHEN OTHERS. - RAISE EXCEPTION TYPE z2ui5_cx_srtti. - ENDCASE. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_elemdescr.clas.testclasses.abap b/src/00/02/z2ui5_cl_srtti_elemdescr.clas.testclasses.abap deleted file mode 100644 index 7b241323..00000000 --- a/src/00/02/z2ui5_cl_srtti_elemdescr.clas.testclasses.abap +++ /dev/null @@ -1,98 +0,0 @@ -*"* use this source file for your ABAP unit test classes - -CLASS ltc_subclass DEFINITION INHERITING FROM z2ui5_cl_srtti_elemdescr. - PUBLIC SECTION. - METHODS get_rtti_by_type_kind_2 - IMPORTING - i_type_kind LIKE cl_abap_typedescr=>type_kind - RETURNING - VALUE(rtti) TYPE REF TO cl_abap_typedescr. -ENDCLASS. - - -CLASS ltc_subclass IMPLEMENTATION. - METHOD get_rtti_by_type_kind_2. - rtti = get_rtti_by_type_kind( i_type_kind ). - ENDMETHOD. -ENDCLASS. - - -CLASS ltc_main DEFINITION - FOR TESTING - DURATION SHORT - RISK LEVEL HARMLESS. - - PRIVATE SECTION. - - METHODS serialize_deserialize FOR TESTING. - METHODS get_rtti_by_type_kind FOR TESTING. - - METHODS get_rtti_by_type_kind_assert - IMPORTING - variable TYPE simple. -ENDCLASS. - - -CLASS ltc_main IMPLEMENTATION. - METHOD serialize_deserialize. - DATA variable TYPE c LENGTH 20. - - variable = 'Hello World'. - z2ui5_cl_srtti_aunit=>serialize_deserialize( variable ). - ENDMETHOD. - - METHOD get_rtti_by_type_kind_assert. - DATA rtti TYPE REF TO cl_abap_elemdescr. - DATA lo_subclass TYPE REF TO ltc_subclass. - DATA rtti2 TYPE REF TO cl_abap_typedescr. - - rtti ?= cl_abap_typedescr=>describe_by_data( variable ). - - CREATE OBJECT lo_subclass - EXPORTING rtti = rtti. - - rtti2 = lo_subclass->get_rtti_by_type_kind_2( i_type_kind = rtti->type_kind ). - - cl_abap_unit_assert=>assert_equals( msg = 'decimals' - exp = rtti->decimals - act = rtti2->decimals ). - cl_abap_unit_assert=>assert_equals( msg = 'type_kind' - exp = rtti->type_kind - act = rtti2->type_kind ). - cl_abap_unit_assert=>assert_equals( msg = 'length' - exp = rtti->length - act = rtti2->length ). - ENDMETHOD. - - METHOD get_rtti_by_type_kind. - DATA n TYPE n LENGTH 20. - DATA c TYPE c LENGTH 20. - DATA string TYPE string. - DATA xstring TYPE xstring. - DATA i TYPE i. - DATA f TYPE f. - DATA d TYPE d. - DATA t TYPE t. - DATA x TYPE x LENGTH 20. - DATA p TYPE p LENGTH 10 DECIMALS 3. - DATA int1 TYPE int1. - DATA int2 TYPE int2. - DATA decfloat16 TYPE decfloat16. - DATA decfloat34 TYPE decfloat34. - - get_rtti_by_type_kind_assert( n ). - get_rtti_by_type_kind_assert( c ). - get_rtti_by_type_kind_assert( string ). - get_rtti_by_type_kind_assert( xstring ). - get_rtti_by_type_kind_assert( i ). - get_rtti_by_type_kind_assert( f ). - get_rtti_by_type_kind_assert( d ). - get_rtti_by_type_kind_assert( t ). - get_rtti_by_type_kind_assert( x ). - get_rtti_by_type_kind_assert( p ). - get_rtti_by_type_kind_assert( int1 ). - get_rtti_by_type_kind_assert( int2 ). - get_rtti_by_type_kind_assert( decfloat16 ). - get_rtti_by_type_kind_assert( decfloat34 ). - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_elemdescr.clas.xml b/src/00/02/z2ui5_cl_srtti_elemdescr.clas.xml deleted file mode 100644 index 49ec15be..00000000 --- a/src/00/02/z2ui5_cl_srtti_elemdescr.clas.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_ELEMDESCR - E - Serializable RTTI elementary type - 1 - X - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_intfdescr.clas.abap b/src/00/02/z2ui5_cl_srtti_intfdescr.clas.abap deleted file mode 100644 index 9c4cfab8..00000000 --- a/src/00/02/z2ui5_cl_srtti_intfdescr.clas.abap +++ /dev/null @@ -1,24 +0,0 @@ -"!

Serializable RTTI interface

-CLASS z2ui5_cl_srtti_intfdescr DEFINITION - PUBLIC - INHERITING FROM z2ui5_cl_srtti_objectdescr - CREATE PUBLIC. - - PUBLIC SECTION. - - DATA intf_kind LIKE cl_abap_intfdescr=>intf_kind. - - METHODS constructor - IMPORTING - !rtti TYPE REF TO cl_abap_intfdescr. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - -CLASS z2ui5_cl_srtti_intfdescr IMPLEMENTATION. - METHOD constructor. - super->constructor( rtti ). - intf_kind = rtti->intf_kind. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_intfdescr.clas.xml b/src/00/02/z2ui5_cl_srtti_intfdescr.clas.xml deleted file mode 100644 index 8f34a72b..00000000 --- a/src/00/02/z2ui5_cl_srtti_intfdescr.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_INTFDESCR - E - Serializable RTTI interface - 1 - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_objectdescr.clas.abap b/src/00/02/z2ui5_cl_srtti_objectdescr.clas.abap deleted file mode 100644 index 1d3ee3e7..00000000 --- a/src/00/02/z2ui5_cl_srtti_objectdescr.clas.abap +++ /dev/null @@ -1,41 +0,0 @@ -"!

Serializable RTTI object type

-class z2ui5_cl_srtti_objectdescr definition - public - inheriting from z2ui5_cl_srtti_typedescr - create public . - -public section. - - data INTERFACES like CL_ABAP_OBJECTDESCR=>INTERFACES . - data TYPES like CL_ABAP_OBJECTDESCR=>TYPES . - data ATTRIBUTES like CL_ABAP_OBJECTDESCR=>ATTRIBUTES . - data METHODS like CL_ABAP_OBJECTDESCR=>METHODS . - data EVENTS like CL_ABAP_OBJECTDESCR=>EVENTS . - - methods CONSTRUCTOR - importing - !RTTI type ref to CL_ABAP_OBJECTDESCR . - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - - -CLASS z2ui5_cl_srtti_objectdescr IMPLEMENTATION. - - - METHOD constructor. - super->constructor( rtti ). - - interfaces = rtti->interfaces. - types = rtti->types. - attributes = rtti->attributes. - methods = rtti->methods. - events = rtti->events. - - READ TABLE interfaces WITH KEY name = 'IF_SERIALIZABLE_OBJECT' TRANSPORTING NO FIELDS. - IF sy-subrc <> 0. - not_serializable = abap_true. - ENDIF. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_objectdescr.clas.xml b/src/00/02/z2ui5_cl_srtti_objectdescr.clas.xml deleted file mode 100644 index e8740851..00000000 --- a/src/00/02/z2ui5_cl_srtti_objectdescr.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_OBJECTDESCR - E - Serializable RTTI object type - 1 - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_refdescr.clas.abap b/src/00/02/z2ui5_cl_srtti_refdescr.clas.abap deleted file mode 100644 index e3004e4b..00000000 --- a/src/00/02/z2ui5_cl_srtti_refdescr.clas.abap +++ /dev/null @@ -1,42 +0,0 @@ -"!

Serializable RTTI reference

-CLASS z2ui5_cl_srtti_refdescr DEFINITION - PUBLIC - INHERITING FROM z2ui5_cl_srtti_datadescr - CREATE PUBLIC. - - PUBLIC SECTION. - - DATA referenced_type TYPE REF TO z2ui5_cl_srtti_typedescr. - - METHODS constructor - IMPORTING - !rtti TYPE REF TO cl_abap_refdescr. - - METHODS get_rtti - REDEFINITION. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - -CLASS z2ui5_cl_srtti_refdescr IMPLEMENTATION. - METHOD constructor. - super->constructor( rtti ). - CREATE OBJECT referenced_type TYPE z2ui5_cl_srtti_typedescr - EXPORTING rtti = rtti->get_referenced_type( ). - IF referenced_type->not_serializable = abap_true. - not_serializable = abap_true. - ENDIF. - ENDMETHOD. - - METHOD get_rtti. - IF referenced_type->type_kind = cl_abap_typedescr=>typekind_data. - rtti = cl_abap_refdescr=>get_ref_to_data( ). - ELSEIF referenced_type->absolute_name = '\CLASS=OBJECT'. - rtti = cl_abap_refdescr=>get_ref_to_object( ). - ELSE. - rtti = referenced_type->get_rtti( ). - ENDIF. - rtti = cl_abap_refdescr=>create( rtti ). - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_refdescr.clas.xml b/src/00/02/z2ui5_cl_srtti_refdescr.clas.xml deleted file mode 100644 index 857409c0..00000000 --- a/src/00/02/z2ui5_cl_srtti_refdescr.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_REFDESCR - E - Serializable RTTI reference - 1 - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_structdescr.clas.abap b/src/00/02/z2ui5_cl_srtti_structdescr.clas.abap deleted file mode 100644 index 186ce172..00000000 --- a/src/00/02/z2ui5_cl_srtti_structdescr.clas.abap +++ /dev/null @@ -1,84 +0,0 @@ -"!

Serializable RTTI structure

-CLASS z2ui5_cl_srtti_structdescr DEFINITION - PUBLIC - INHERITING FROM z2ui5_cl_srtti_complexdescr - CREATE PUBLIC. - - PUBLIC SECTION. - - TYPES: - BEGIN OF sabap_componentdescr, - name TYPE string, - type TYPE REF TO z2ui5_cl_srtti_datadescr, - as_include TYPE abap_bool, - suffix TYPE string, - END OF sabap_componentdescr. - TYPES sabap_component_tab TYPE STANDARD TABLE OF sabap_componentdescr WITH DEFAULT KEY. - - DATA struct_kind LIKE cl_abap_structdescr=>struct_kind READ-ONLY. - DATA components TYPE sabap_component_tab READ-ONLY. - DATA has_include LIKE cl_abap_structdescr=>has_include READ-ONLY. - - METHODS constructor - IMPORTING - !rtti TYPE REF TO cl_abap_structdescr. - - METHODS get_rtti - REDEFINITION. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - -CLASS z2ui5_cl_srtti_structdescr IMPLEMENTATION. - METHOD constructor. - DATA components_rtti TYPE abap_component_tab. - DATA scomponent TYPE sabap_componentdescr. - DATA scomponent_rtti TYPE REF TO z2ui5_cl_srtti_datadescr. - - FIELD-SYMBOLS TYPE abap_componentdescr. - - super->constructor( rtti ). - - struct_kind = rtti->struct_kind. - has_include = rtti->has_include. - - components_rtti = rtti->get_components( ). - - LOOP AT components_rtti ASSIGNING . - - CLEAR scomponent. - scomponent-name = -name. - - scomponent_rtti ?= z2ui5_cl_srtti_datadescr=>create_by_rtti( -type ). - scomponent-type = scomponent_rtti. - scomponent-as_include = -as_include. - scomponent-suffix = -suffix. - - APPEND scomponent TO components. - IF scomponent-type->not_serializable = abap_true. - not_serializable = abap_true. - ENDIF. - ENDLOOP. - ENDMETHOD. - - METHOD get_rtti. - DATA components_rtti TYPE cl_abap_structdescr=>component_table. - DATA component_rtti TYPE abap_componentdescr. - - FIELD-SYMBOLS TYPE sabap_componentdescr. - - CLEAR components_rtti. - LOOP AT components ASSIGNING . - - CLEAR component_rtti. - component_rtti-name = -name. - component_rtti-type ?= -type->get_rtti( ). - component_rtti-as_include = -as_include. - component_rtti-suffix = -suffix. - - APPEND component_rtti TO components_rtti. - ENDLOOP. - rtti = cl_abap_structdescr=>create( components_rtti ). - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_structdescr.clas.xml b/src/00/02/z2ui5_cl_srtti_structdescr.clas.xml deleted file mode 100644 index 51a745a3..00000000 --- a/src/00/02/z2ui5_cl_srtti_structdescr.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_STRUCTDESCR - E - Serializable RTTI structure - 1 - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_tabledescr.clas.abap b/src/00/02/z2ui5_cl_srtti_tabledescr.clas.abap deleted file mode 100644 index d74c5517..00000000 --- a/src/00/02/z2ui5_cl_srtti_tabledescr.clas.abap +++ /dev/null @@ -1,70 +0,0 @@ -"!

Serializable RTTI table

-CLASS z2ui5_cl_srtti_tabledescr DEFINITION - PUBLIC - INHERITING FROM z2ui5_cl_srtti_complexdescr - CREATE PUBLIC. - - PUBLIC SECTION. - - DATA key LIKE cl_abap_tabledescr=>key. - DATA initial_size LIKE cl_abap_tabledescr=>initial_size. - DATA key_defkind LIKE cl_abap_tabledescr=>key_defkind. - DATA has_unique_key LIKE cl_abap_tabledescr=>has_unique_key. - DATA table_kind LIKE cl_abap_tabledescr=>table_kind. - DATA line_type TYPE REF TO z2ui5_cl_srtti_datadescr. - - METHODS constructor - IMPORTING - !rtti TYPE REF TO cl_abap_tabledescr. - - METHODS get_rtti - REDEFINITION. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - -CLASS z2ui5_cl_srtti_tabledescr IMPLEMENTATION. - METHOD constructor. - super->constructor( rtti ). - key = rtti->key. - initial_size = rtti->initial_size. - key_defkind = rtti->key_defkind. - has_unique_key = rtti->has_unique_key. - table_kind = rtti->table_kind. - - line_type ?= z2ui5_cl_srtti_typedescr=>create_by_rtti( rtti->get_table_line_type( ) ). - IF line_type->not_serializable = abap_true. - not_serializable = abap_true. - ENDIF. - ENDMETHOD. - - METHOD get_rtti. - DATA lt_empty_key TYPE abap_keydescr_tab. - DATA lo_data_rtti TYPE REF TO cl_abap_datadescr. - DATA lo_error TYPE REF TO cx_sy_table_creation. - - FIELD-SYMBOLS TYPE abap_keydescr_tab. - - CLEAR lt_empty_key. - CASE key_defkind. - WHEN cl_abap_tabledescr=>keydefkind_user. - ASSIGN key TO . - WHEN OTHERS. - ASSIGN lt_empty_key TO . - ENDCASE. - TRY. - - lo_data_rtti ?= line_type->get_rtti( ). - rtti = cl_abap_tabledescr=>create( p_line_type = lo_data_rtti - p_table_kind = table_kind - p_unique = has_unique_key - p_key = - p_key_kind = key_defkind ). - - CATCH cx_sy_table_creation INTO lo_error. - RAISE EXCEPTION TYPE z2ui5_cx_srtti - EXPORTING previous = lo_error. - ENDTRY. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_tabledescr.clas.testclasses.abap b/src/00/02/z2ui5_cl_srtti_tabledescr.clas.testclasses.abap deleted file mode 100644 index 9f69918f..00000000 --- a/src/00/02/z2ui5_cl_srtti_tabledescr.clas.testclasses.abap +++ /dev/null @@ -1,117 +0,0 @@ -*"* use this source file for your ABAP unit test classes -CLASS ltc_main DEFINITION - FOR TESTING - DURATION SHORT - RISK LEVEL HARMLESS. - PRIVATE SECTION. - TYPES: BEGIN OF ty_line_with_components, - very__very_long_component_name TYPE i, - END OF ty_line_with_components. - TYPES ty_std_table_comps_default_key TYPE STANDARD TABLE OF ty_line_with_components WITH DEFAULT KEY. - - METHODS check_instantiated_classes FOR TESTING. - METHODS bound_line_type FOR TESTING. - - METHODS assert_copy_equals_original - IMPORTING - srtti TYPE REF TO z2ui5_cl_srtti_typedescr - original TYPE ty_std_table_comps_default_key. -ENDCLASS. - - -CLASS ltc_main IMPLEMENTATION. - METHOD assert_copy_equals_original. - DATA rtti TYPE REF TO cl_abap_tabledescr. - DATA dref TYPE REF TO data. - - FIELD-SYMBOLS TYPE any. - - rtti ?= srtti->get_rtti( ). - CREATE DATA dref TYPE HANDLE rtti. - ASSIGN dref->* TO . - = original. - cl_abap_unit_assert=>assert_equals( act = - exp = original ). - ENDMETHOD. - - METHOD bound_line_type. - DATA line_with_components TYPE ty_line_with_components. - DATA std_table_comps_default_key TYPE ty_std_table_comps_default_key. - DATA component TYPE abap_componentdescr. - DATA components TYPE abap_component_tab. - DATA rtti TYPE REF TO cl_abap_tabledescr. - DATA dref TYPE REF TO data. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - - FIELD-SYMBOLS TYPE ANY TABLE. - FIELD-SYMBOLS TYPE any. - FIELD-SYMBOLS TYPE ty_line_with_components. - - line_with_components-very__very_long_component_name = 25. - INSERT line_with_components INTO TABLE std_table_comps_default_key. - line_with_components-very__very_long_component_name = 37. - INSERT line_with_components INTO TABLE std_table_comps_default_key. - - component-name = 'VERY__VERY_LONG_COMPONENT_NAME'. - component-type = cl_abap_elemdescr=>get_i( ). - INSERT component INTO TABLE components. - - rtti = cl_abap_tabledescr=>create( p_line_type = cl_abap_structdescr=>create( p_components = components ) ). - - CREATE DATA dref TYPE HANDLE rtti. - ASSIGN dref->* TO . - CREATE DATA dref LIKE LINE OF . - ASSIGN dref->* TO . - - LOOP AT std_table_comps_default_key ASSIGNING . - MOVE-CORRESPONDING TO . - INSERT INTO TABLE . - ENDLOOP. - - srtti = z2ui5_cl_srtti_typedescr=>create_by_data_object( ). - - assert_copy_equals_original( srtti = srtti - original = ). - ENDMETHOD. - - METHOD check_instantiated_classes. - DATA comp_row TYPE LINE OF abap_component_tab. - DATA comp_tab TYPE abap_component_tab. - DATA struct_rtti TYPE REF TO cl_abap_structdescr. - DATA table_rtti TYPE REF TO cl_abap_tabledescr. - DATA dref TYPE REF TO data. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA test TYPE REF TO z2ui5_cl_srtti_tabledescr. - DATA srtti_tab TYPE REF TO z2ui5_cl_srtti_tabledescr. - DATA srtti2 TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA test2 TYPE REF TO z2ui5_cl_srtti_structdescr. - - FIELD-SYMBOLS TYPE any. - - comp_row-name = 'VERY__VERY_LONG_COMPONENT_NAME'. - comp_row-type = cl_abap_elemdescr=>get_i( ). - INSERT comp_row INTO TABLE comp_tab. - - struct_rtti = cl_abap_structdescr=>create( p_components = comp_tab ). - table_rtti = cl_abap_tabledescr=>create( p_line_type = struct_rtti ). - CREATE DATA dref TYPE HANDLE table_rtti. - ASSIGN dref->* TO . - - srtti = z2ui5_cl_srtti_typedescr=>create_by_data_object( ). - - TRY. - test ?= srtti. - CATCH cx_sy_move_cast_error. - cl_abap_unit_assert=>fail( ). - ENDTRY. - - srtti_tab ?= srtti. - srtti2 = srtti_tab->line_type. - - TRY. - test2 ?= srtti2. - CATCH cx_sy_move_cast_error. - cl_abap_unit_assert=>fail( ). - ENDTRY. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_tabledescr.clas.xml b/src/00/02/z2ui5_cl_srtti_tabledescr.clas.xml deleted file mode 100644 index 2a852da7..00000000 --- a/src/00/02/z2ui5_cl_srtti_tabledescr.clas.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_TABLEDESCR - E - Serializable RTTI table - 1 - X - X - X - X - - - - diff --git a/src/00/02/z2ui5_cl_srtti_typedescr.clas.abap b/src/00/02/z2ui5_cl_srtti_typedescr.clas.abap deleted file mode 100644 index 5740a20b..00000000 --- a/src/00/02/z2ui5_cl_srtti_typedescr.clas.abap +++ /dev/null @@ -1,117 +0,0 @@ -"!

Serializable RTTI any type

-CLASS z2ui5_cl_srtti_typedescr DEFINITION - PUBLIC - CREATE PUBLIC. - - PUBLIC SECTION. - - INTERFACES if_serializable_object. - - DATA absolute_name LIKE cl_abap_typedescr=>absolute_name READ-ONLY. - DATA type_kind LIKE cl_abap_typedescr=>type_kind READ-ONLY. - DATA length LIKE cl_abap_typedescr=>length READ-ONLY. - DATA decimals LIKE cl_abap_typedescr=>decimals READ-ONLY. - DATA kind LIKE cl_abap_typedescr=>kind READ-ONLY. - "! True if it's an object type which doesn't implement the interface IF_SERIALIZABLE_OBJECT - DATA not_serializable TYPE abap_bool READ-ONLY. - DATA is_ddic_type TYPE abap_bool READ-ONLY. - "! True if the absolute name is %_T... - DATA technical_type TYPE abap_bool READ-ONLY. - - METHODS constructor - IMPORTING - !rtti TYPE REF TO cl_abap_typedescr. - METHODS get_rtti - RETURNING - VALUE(rtti) TYPE REF TO cl_abap_typedescr. - CLASS-METHODS create_by_rtti - IMPORTING - !rtti TYPE REF TO cl_abap_typedescr - RETURNING - VALUE(srtti) TYPE REF TO z2ui5_cl_srtti_typedescr. - CLASS-METHODS create_by_data_object - IMPORTING - !data_object TYPE any - RETURNING - VALUE(srtti) TYPE REF TO z2ui5_cl_srtti_typedescr. - PROTECTED SECTION. - PRIVATE SECTION. - -ENDCLASS. - - -CLASS z2ui5_cl_srtti_typedescr IMPLEMENTATION. - METHOD constructor. - absolute_name = rtti->absolute_name. - type_kind = rtti->type_kind. - length = rtti->length. - decimals = rtti->decimals. - kind = rtti->kind. - is_ddic_type = rtti->is_ddic_type( ). - IF rtti->absolute_name CP '\TYPE=%_T*'. - technical_type = abap_true. - ENDIF. - ENDMETHOD. - - METHOD create_by_data_object. - srtti = create_by_rtti( cl_abap_typedescr=>describe_by_data( data_object ) ). - ENDMETHOD. - - METHOD create_by_rtti. - DATA elem_rtti TYPE REF TO cl_abap_elemdescr. - DATA struct_rtti TYPE REF TO cl_abap_structdescr. - DATA table_rtti TYPE REF TO cl_abap_tabledescr. - DATA ref_rtti TYPE REF TO cl_abap_refdescr. - DATA class_rtti TYPE REF TO cl_abap_classdescr. - DATA intf_rtti TYPE REF TO cl_abap_intfdescr. - - CASE rtti->kind. - WHEN cl_abap_typedescr=>kind_elem. - - elem_rtti ?= rtti. - CREATE OBJECT srtti TYPE z2ui5_cl_srtti_elemdescr - EXPORTING rtti = elem_rtti. - - WHEN cl_abap_typedescr=>kind_struct. - - struct_rtti ?= rtti. - CREATE OBJECT srtti TYPE z2ui5_cl_srtti_structdescr - EXPORTING rtti = struct_rtti. - - WHEN cl_abap_typedescr=>kind_table. - - table_rtti ?= rtti. - CREATE OBJECT srtti TYPE z2ui5_cl_srtti_tabledescr - EXPORTING rtti = table_rtti. - - WHEN cl_abap_typedescr=>kind_ref. - - ref_rtti ?= rtti. - CREATE OBJECT srtti TYPE z2ui5_cl_srtti_refdescr - EXPORTING rtti = ref_rtti. - - WHEN cl_abap_typedescr=>kind_class. - - class_rtti ?= rtti. - CREATE OBJECT srtti TYPE z2ui5_cl_srtti_classdescr - EXPORTING rtti = class_rtti. - - WHEN cl_abap_typedescr=>kind_intf. - - intf_rtti ?= rtti. - CREATE OBJECT srtti TYPE z2ui5_cl_srtti_intfdescr - EXPORTING rtti = intf_rtti. - - WHEN OTHERS. - " Unsupported (new ABAP features in the future) - RAISE EXCEPTION TYPE z2ui5_cx_srtti. - ENDCASE. - ENDMETHOD. - - METHOD get_rtti. - " default behavior - IF technical_type = abap_false. - rtti = cl_abap_typedescr=>describe_by_name( absolute_name ). - ENDIF. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_typedescr.clas.testclasses.abap b/src/00/02/z2ui5_cl_srtti_typedescr.clas.testclasses.abap deleted file mode 100644 index f635e17c..00000000 --- a/src/00/02/z2ui5_cl_srtti_typedescr.clas.testclasses.abap +++ /dev/null @@ -1,229 +0,0 @@ -*"* use this source file for your ABAP unit test classes - -INTERFACE lif_any. -ENDINTERFACE. - - -CLASS lcl_any DEFINITION. - PUBLIC SECTION. - INTERFACES lif_any. -ENDCLASS. - - -CLASS ltc_main DEFINITION - FOR TESTING - DURATION SHORT - RISK LEVEL HARMLESS. - - PRIVATE SECTION. - - METHODS technical_type FOR TESTING. - METHODS create_by_rtti_elem FOR TESTING RAISING cx_static_check. - METHODS create_by_rtti_struct FOR TESTING RAISING cx_static_check. - METHODS create_by_rtti_table FOR TESTING RAISING cx_static_check. - METHODS create_by_rtti_ref FOR TESTING RAISING cx_static_check. - METHODS create_by_rtti_class FOR TESTING RAISING cx_static_check. - METHODS create_by_rtti_intf FOR TESTING RAISING cx_static_check. - -ENDCLASS. - - -CLASS ltc_serialize_deserialize DEFINITION - FOR TESTING - DURATION SHORT - RISK LEVEL HARMLESS. - - PRIVATE SECTION. - - METHODS class FOR TESTING. - METHODS elem FOR TESTING. - METHODS intf FOR TESTING. - METHODS ref FOR TESTING. - METHODS structure FOR TESTING. - METHODS table FOR TESTING. - - TYPES ty_char_10 TYPE c LENGTH 10. - DATA: BEGIN OF variables, - char_10 TYPE ty_char_10, - ref_to_class TYPE REF TO lcl_any, - ref_to_intf TYPE REF TO lif_any, - BEGIN OF structure, - comp1 TYPE i, - END OF structure, - table TYPE STANDARD TABLE OF i WITH DEFAULT KEY, - dref TYPE REF TO ty_char_10, - END OF variables. - DATA rtti_before TYPE REF TO cl_abap_typedescr. - - METHODS assert_equal_serializ_deserial. -ENDCLASS. - - -CLASS ltc_main IMPLEMENTATION. - METHOD create_by_rtti_class. - DATA variable TYPE REF TO lcl_any. - DATA typedescr TYPE REF TO cl_abap_typedescr. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA test TYPE REF TO z2ui5_cl_srtti_classdescr. - - CREATE OBJECT variable TYPE lcl_any. - typedescr ?= cl_abap_typedescr=>describe_by_object_ref( variable ). - srtti = z2ui5_cl_srtti_typedescr=>create_by_rtti( typedescr ). - - TRY. - test ?= srtti. - CATCH cx_sy_move_cast_error. - cl_abap_unit_assert=>fail( 'is instance of zcl_srtti_classdescr' ). - ENDTRY. - ENDMETHOD. - - METHOD create_by_rtti_elem. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA variable TYPE c LENGTH 20. - DATA test TYPE REF TO z2ui5_cl_srtti_elemdescr. - - srtti = z2ui5_cl_srtti_typedescr=>create_by_data_object( variable ). - - TRY. - test ?= srtti. - CATCH cx_sy_move_cast_error. - cl_abap_unit_assert=>fail( 'is instance of zcl_srtti_elemdescr' ). - ENDTRY. - ENDMETHOD. - - METHOD create_by_rtti_intf. - DATA variable TYPE REF TO lcl_any. - DATA rtti_classdescr TYPE REF TO cl_abap_classdescr. - DATA rtti_intf TYPE REF TO cl_abap_intfdescr. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA test TYPE REF TO z2ui5_cl_srtti_intfdescr. - - CREATE OBJECT variable TYPE lcl_any. - rtti_classdescr ?= cl_abap_typedescr=>describe_by_object_ref( variable ). - rtti_intf = rtti_classdescr->get_interface_type( 'LIF_ANY' ). - srtti = z2ui5_cl_srtti_typedescr=>create_by_rtti( rtti_intf ). - - TRY. - test ?= srtti. - CATCH cx_sy_move_cast_error. - cl_abap_unit_assert=>fail( 'is instance of zcl_srtti_intfdescr' ). - ENDTRY. - ENDMETHOD. - - METHOD create_by_rtti_struct. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA test TYPE REF TO z2ui5_cl_srtti_structdescr. - DATA: - BEGIN OF variable, - comp1 TYPE c LENGTH 20, - END OF variable. - - srtti = z2ui5_cl_srtti_typedescr=>create_by_data_object( variable ). - - TRY. - test ?= srtti. - CATCH cx_sy_move_cast_error. - cl_abap_unit_assert=>fail( 'is instance of zcl_srtti_structdescr' ). - ENDTRY. - ENDMETHOD. - - METHOD create_by_rtti_table. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA test TYPE REF TO z2ui5_cl_srtti_structdescr. - DATA: - BEGIN OF variable, - comp1 TYPE c LENGTH 20, - END OF variable. - - srtti = z2ui5_cl_srtti_typedescr=>create_by_data_object( variable ). - - TRY. - test ?= srtti. - CATCH cx_sy_move_cast_error. - cl_abap_unit_assert=>fail( 'is instance of zcl_srtti_structdescr' ). - ENDTRY. - ENDMETHOD. - - METHOD create_by_rtti_ref. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA variable TYPE REF TO flag. - DATA test TYPE REF TO z2ui5_cl_srtti_refdescr. - - srtti = z2ui5_cl_srtti_typedescr=>create_by_data_object( variable ). - - TRY. - test ?= srtti. - CATCH cx_sy_move_cast_error. - cl_abap_unit_assert=>fail( 'is instance of zcl_srtti_refdescr' ). - ENDTRY. - ENDMETHOD. - - METHOD technical_type. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA dobj_with_bound_data_type TYPE c LENGTH 20. - - srtti = z2ui5_cl_srtti_typedescr=>create_by_data_object( dobj_with_bound_data_type ). - cl_abap_unit_assert=>assert_true( msg = 'technical_type' - act = srtti->technical_type ). - ENDMETHOD. -ENDCLASS. - - -CLASS ltc_serialize_deserialize IMPLEMENTATION. - METHOD assert_equal_serializ_deserial. - DATA srtti TYPE REF TO z2ui5_cl_srtti_typedescr. - DATA rtti_after TYPE REF TO cl_abap_typedescr. - - srtti = z2ui5_cl_srtti_typedescr=>create_by_rtti( rtti = rtti_before ). - - rtti_after = srtti->get_rtti( ). - - cl_abap_unit_assert=>assert_bound( msg = 'result bound' - act = rtti_after ). - cl_abap_unit_assert=>assert_equals( msg = 'Type kind' - exp = rtti_before->type_kind - act = rtti_after->type_kind ). - cl_abap_unit_assert=>assert_equals( msg = 'length' - exp = rtti_before->length - act = rtti_after->length ). - cl_abap_unit_assert=>assert_equals( msg = 'decimals' - exp = rtti_before->decimals - act = rtti_after->decimals ). - cl_abap_unit_assert=>assert_equals( msg = 'Kind' - exp = rtti_before->kind - act = rtti_after->kind ). - cl_abap_unit_assert=>assert_equals( msg = 'is_ddic_type' - exp = rtti_before->is_ddic_type( ) - act = rtti_after->is_ddic_type( ) ). - ENDMETHOD. - - METHOD class. - rtti_before = cl_abap_typedescr=>describe_by_data( variables-ref_to_class ). - assert_equal_serializ_deserial( ). - ENDMETHOD. - - METHOD elem. - rtti_before = cl_abap_typedescr=>describe_by_data( variables-char_10 ). - assert_equal_serializ_deserial( ). - ENDMETHOD. - - METHOD intf. - rtti_before = cl_abap_typedescr=>describe_by_data( variables-ref_to_intf ). - assert_equal_serializ_deserial( ). - ENDMETHOD. - - METHOD ref. - rtti_before = cl_abap_typedescr=>describe_by_data( variables-dref ). - assert_equal_serializ_deserial( ). - ENDMETHOD. - - METHOD structure. - rtti_before = cl_abap_typedescr=>describe_by_data( variables-structure ). - assert_equal_serializ_deserial( ). - ENDMETHOD. - - METHOD table. - rtti_before = cl_abap_typedescr=>describe_by_data( variables-table ). - assert_equal_serializ_deserial( ). - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cl_srtti_typedescr.clas.xml b/src/00/02/z2ui5_cl_srtti_typedescr.clas.xml deleted file mode 100644 index 09f6f564..00000000 --- a/src/00/02/z2ui5_cl_srtti_typedescr.clas.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - Z2UI5_CL_SRTTI_TYPEDESCR - E - Serializable RTTI any type - 1 - X - X - X - X - - - - diff --git a/src/00/02/z2ui5_cx_srtti.clas.abap b/src/00/02/z2ui5_cx_srtti.clas.abap deleted file mode 100644 index 2193e565..00000000 --- a/src/00/02/z2ui5_cx_srtti.clas.abap +++ /dev/null @@ -1,35 +0,0 @@ -class z2ui5_cx_srtti definition - public - inheriting from CX_NO_CHECK - final - create public . - -public section. - - interfaces IF_T100_MESSAGE . - - methods CONSTRUCTOR - importing - !TEXTID like IF_T100_MESSAGE=>T100KEY optional - !PREVIOUS like PREVIOUS optional . - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - - -CLASS z2ui5_cx_srtti IMPLEMENTATION. - - - METHOD constructor ##ADT_SUPPRESS_GENERATION. - CALL METHOD super->constructor - EXPORTING - previous = previous. - CLEAR me->textid. - IF textid IS INITIAL. - if_t100_message~t100key = if_t100_message=>default_textid. - ELSE. - if_t100_message~t100key = textid. - ENDIF. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/02/z2ui5_cx_srtti.clas.xml b/src/00/02/z2ui5_cx_srtti.clas.xml deleted file mode 100644 index 84020bf1..00000000 --- a/src/00/02/z2ui5_cx_srtti.clas.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - Z2UI5_CX_SRTTI - E - General exception - 40 - 1 - X - X - X - - - -