dont use I18_A_LANGISO2, its not released (#5822)

* dont use I18_A_LANGISO2, its not released

* use LAISO

* use LAISO
This commit is contained in:
Lars Hvam 2022-10-14 21:17:44 +02:00 committed by GitHub
parent 22214428d7
commit 188c9ed903
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 199 additions and 195 deletions

View File

@ -129,6 +129,7 @@
"^cl_srvd_wb_object_data$", "^cx_aff_", "^cl_aff_", "^if_aff_",
"^cl_wb_object_operator_factory$",
"^cl_aunit_assert$",
"^I18_A_LANGISO2$",
"^if_adt_lock_handle$",
"^cx_wb_object_operation_error$",
"^if_srvd_types$", "^xubname$",

View File

@ -88,7 +88,7 @@ ENDCLASS.
CLASS zcl_abapgit_json_handler IMPLEMENTATION.
CLASS ZCL_ABAPGIT_JSON_HANDLER IMPLEMENTATION.
METHOD deserialize.
@ -117,6 +117,122 @@ CLASS zcl_abapgit_json_handler IMPLEMENTATION.
ENDMETHOD.
METHOD map2abap_abap_language_version.
DATA:
lv_enum_abap TYPE string,
lv_enum_json TYPE string.
lv_enum_json = co_ajson->get_string( '/header/abapLanguageVersion' ).
IF lv_enum_json = 'standard'.
lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard.
ELSEIF lv_enum_json = 'cloudDevelopment'.
lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-cloud_development.
ELSEIF lv_enum_json = 'keyUser'.
lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-key_user.
ENDIF.
co_ajson->set_string( iv_path = '/header/abapLanguageVersion'
iv_val = lv_enum_abap ).
ENDMETHOD.
METHOD map2abap_custom_enum.
DATA:
lv_enum_json TYPE string,
ls_enum_mapping TYPE ty_enum_mapping,
ls_mapping TYPE ty_json_abap_mapping.
LOOP AT it_enum_mappings INTO ls_enum_mapping.
lv_enum_json = co_ajson->get_string( ls_enum_mapping-path ).
READ TABLE ls_enum_mapping-mappings WITH KEY json = lv_enum_json INTO ls_mapping.
IF sy-subrc = 0.
co_ajson->set_string( iv_path = ls_enum_mapping-path
iv_val = ls_mapping-abap ).
ENDIF.
ENDLOOP.
ENDMETHOD.
METHOD map2abap_original_language.
DATA:
lv_iso_language TYPE laiso,
lv_original_language TYPE sy-langu.
lv_iso_language = co_ajson->get_string( '/header/originalLanguage' ).
CALL FUNCTION 'CONVERSION_EXIT_ISOLA_INPUT'
EXPORTING
input = lv_iso_language
IMPORTING
output = lv_original_language.
co_ajson->set_string( iv_path = '/header/originalLanguage'
iv_val = lv_original_language ).
ENDMETHOD.
METHOD map2json_abap_language_version.
DATA:
lv_enum_abap TYPE string,
lv_enum_json TYPE string.
lv_enum_abap = co_ajson->get_string( '/header/abapLanguageVersion' ).
IF lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard
OR lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-standard.
lv_enum_json = 'standard'.
ELSEIF lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-cloud_development.
lv_enum_json = 'cloudDevelopment'.
ELSEIF lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-key_user.
lv_enum_json = 'keyUser'.
ENDIF.
co_ajson->set_string( iv_path = '/header/abapLanguageVersion'
iv_val = lv_enum_json ).
ENDMETHOD.
METHOD map2json_custom_enum.
DATA:
lv_enum_abap TYPE string,
ls_enum_mapping TYPE ty_enum_mapping,
ls_mapping TYPE ty_json_abap_mapping.
LOOP AT it_enum_mappings INTO ls_enum_mapping.
lv_enum_abap = co_ajson->get_string( ls_enum_mapping-path ).
READ TABLE ls_enum_mapping-mappings WITH KEY abap = lv_enum_abap INTO ls_mapping.
IF sy-subrc = 0.
co_ajson->set_string( iv_path = ls_enum_mapping-path
iv_val = ls_mapping-json ).
ENDIF.
ENDLOOP.
ENDMETHOD.
METHOD map2json_original_language.
DATA:
lv_iso_language TYPE laiso,
lv_original_language TYPE sy-langu.
lv_original_language = co_ajson->get_string( '/header/originalLanguage' ).
CALL FUNCTION 'CONVERSION_EXIT_ISOLA_OUTPUT'
EXPORTING
input = lv_original_language
IMPORTING
output = lv_iso_language.
TRANSLATE lv_iso_language TO LOWER CASE.
co_ajson->set_string( iv_path = '/header/originalLanguage'
iv_val = lv_iso_language ).
ENDMETHOD.
METHOD serialize.
DATA: lt_st_source TYPE abap_trans_srcbind_tab,
lo_mapping TYPE REF TO zif_abapgit_ajson_mapping,
@ -160,99 +276,6 @@ CLASS zcl_abapgit_json_handler IMPLEMENTATION.
rv_result = zcl_abapgit_convert=>string_to_xstring_utf8( lv_json ).
ENDMETHOD.
METHOD map2json_original_language.
DATA:
lv_iso_language TYPE i18_a_langiso2,
lv_original_language TYPE sy-langu.
lv_original_language = co_ajson->get_string( '/header/originalLanguage' ).
CALL FUNCTION 'CONVERSION_EXIT_ISOLA_OUTPUT'
EXPORTING
input = lv_original_language
IMPORTING
output = lv_iso_language.
TRANSLATE lv_iso_language TO LOWER CASE.
co_ajson->set_string( iv_path = '/header/originalLanguage'
iv_val = lv_iso_language ).
ENDMETHOD.
METHOD map2json_abap_language_version.
DATA:
lv_enum_abap TYPE string,
lv_enum_json TYPE string.
lv_enum_abap = co_ajson->get_string( '/header/abapLanguageVersion' ).
IF lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard
OR lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-standard.
lv_enum_json = 'standard'.
ELSEIF lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-cloud_development.
lv_enum_json = 'cloudDevelopment'.
ELSEIF lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-key_user.
lv_enum_json = 'keyUser'.
ENDIF.
co_ajson->set_string( iv_path = '/header/abapLanguageVersion'
iv_val = lv_enum_json ).
ENDMETHOD.
METHOD map2abap_abap_language_version.
DATA:
lv_enum_abap TYPE string,
lv_enum_json TYPE string.
lv_enum_json = co_ajson->get_string( '/header/abapLanguageVersion' ).
IF lv_enum_json = 'standard'.
lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard.
ELSEIF lv_enum_json = 'cloudDevelopment'.
lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-cloud_development.
ELSEIF lv_enum_json = 'keyUser'.
lv_enum_abap = zif_abapgit_aff_types_v1=>co_abap_language_version-key_user.
ENDIF.
co_ajson->set_string( iv_path = '/header/abapLanguageVersion'
iv_val = lv_enum_abap ).
ENDMETHOD.
METHOD map2json_custom_enum.
DATA:
lv_enum_abap TYPE string,
ls_enum_mapping TYPE ty_enum_mapping,
ls_mapping TYPE ty_json_abap_mapping.
LOOP AT it_enum_mappings INTO ls_enum_mapping.
lv_enum_abap = co_ajson->get_string( ls_enum_mapping-path ).
READ TABLE ls_enum_mapping-mappings WITH KEY abap = lv_enum_abap INTO ls_mapping.
IF sy-subrc = 0.
co_ajson->set_string( iv_path = ls_enum_mapping-path
iv_val = ls_mapping-json ).
ENDIF.
ENDLOOP.
ENDMETHOD.
METHOD map2abap_custom_enum.
DATA:
lv_enum_json TYPE string,
ls_enum_mapping TYPE ty_enum_mapping,
ls_mapping TYPE ty_json_abap_mapping.
LOOP AT it_enum_mappings INTO ls_enum_mapping.
lv_enum_json = co_ajson->get_string( ls_enum_mapping-path ).
READ TABLE ls_enum_mapping-mappings WITH KEY json = lv_enum_json INTO ls_mapping.
IF sy-subrc = 0.
co_ajson->set_string( iv_path = ls_enum_mapping-path
iv_val = ls_mapping-abap ).
ENDIF.
ENDLOOP.
ENDMETHOD.
METHOD set_defaults.
DATA:
@ -268,23 +291,4 @@ CLASS zcl_abapgit_json_handler IMPLEMENTATION.
ENDIF.
ENDLOOP.
ENDMETHOD.
METHOD map2abap_original_language.
DATA:
lv_iso_language TYPE i18_a_langiso2,
lv_original_language TYPE sy-langu.
lv_iso_language = co_ajson->get_string( '/header/originalLanguage' ).
CALL FUNCTION 'CONVERSION_EXIT_ISOLA_INPUT'
EXPORTING
input = lv_iso_language
IMPORTING
output = lv_original_language.
co_ajson->set_string( iv_path = '/header/originalLanguage'
iv_val = lv_original_language ).
ENDMETHOD.
ENDCLASS.

View File

@ -108,7 +108,7 @@ ENDCLASS.
CLASS zcl_abapgit_lxe_texts IMPLEMENTATION.
CLASS ZCL_ABAPGIT_LXE_TEXTS IMPLEMENTATION.
METHOD check_langs_versus_installed.
@ -247,7 +247,7 @@ CLASS zcl_abapgit_lxe_texts IMPLEMENTATION.
METHOD get_lang_iso4.
DATA lv_lang_iso639 TYPE i18_a_langiso2.
DATA lv_lang_iso639 TYPE laiso.
DATA lv_country TYPE land1.
cl_i18n_languages=>sap2_to_iso639_1(
@ -339,6 +339,84 @@ CLASS zcl_abapgit_lxe_texts IMPLEMENTATION.
ENDMETHOD.
METHOD read_lxe_object_text_pair.
DATA:
lv_error TYPE lxestring.
TRY.
CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_READ'
EXPORTING
s_lang = iv_s_lang
t_lang = iv_t_lang
custmnr = iv_custmnr
objtype = iv_objtype
objname = iv_objname
read_only = iv_read_only
IMPORTING
err_msg = lv_error " doesn't exist in NW <= 750
TABLES
lt_pcx_s1 = rt_text_pairs_tmp.
IF lv_error IS NOT INITIAL.
zcx_abapgit_exception=>raise( lv_error ).
ENDIF.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_READ'
EXPORTING
s_lang = iv_s_lang
t_lang = iv_t_lang
custmnr = iv_custmnr
objtype = iv_objtype
objname = iv_objname
read_only = iv_read_only
TABLES
lt_pcx_s1 = rt_text_pairs_tmp.
ENDTRY.
ENDMETHOD.
METHOD write_lxe_object_text_pair.
DATA:
lv_error TYPE lxestring.
TRY.
CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_WRITE'
EXPORTING
s_lang = iv_s_lang
t_lang = iv_t_lang
custmnr = iv_custmnr
objtype = iv_objtype
objname = iv_objname
IMPORTING
err_msg = lv_error " doesn't exist in NW <= 750
TABLES
lt_pcx_s1 = it_pcx_s1.
IF lv_error IS NOT INITIAL.
zcx_abapgit_exception=>raise( lv_error ).
ENDIF.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_WRITE'
EXPORTING
s_lang = iv_s_lang
t_lang = iv_t_lang
custmnr = iv_custmnr
objtype = iv_objtype
objname = iv_objname
TABLES
lt_pcx_s1 = it_pcx_s1.
ENDTRY.
ENDMETHOD.
METHOD zif_abapgit_lxe_texts~deserialize.
DATA:
@ -429,83 +507,4 @@ CLASS zcl_abapgit_lxe_texts IMPLEMENTATION.
ig_data = lt_lxe_texts ).
ENDMETHOD.
METHOD read_lxe_object_text_pair.
DATA:
lv_error TYPE lxestring.
TRY.
CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_READ'
EXPORTING
s_lang = iv_s_lang
t_lang = iv_t_lang
custmnr = iv_custmnr
objtype = iv_objtype
objname = iv_objname
read_only = iv_read_only
IMPORTING
err_msg = lv_error " doesn't exist in NW <= 750
TABLES
lt_pcx_s1 = rt_text_pairs_tmp.
IF lv_error IS NOT INITIAL.
zcx_abapgit_exception=>raise( lv_error ).
ENDIF.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_READ'
EXPORTING
s_lang = iv_s_lang
t_lang = iv_t_lang
custmnr = iv_custmnr
objtype = iv_objtype
objname = iv_objname
read_only = iv_read_only
TABLES
lt_pcx_s1 = rt_text_pairs_tmp.
ENDTRY.
ENDMETHOD.
METHOD write_lxe_object_text_pair.
DATA:
lv_error TYPE lxestring.
TRY.
CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_WRITE'
EXPORTING
s_lang = iv_s_lang
t_lang = iv_t_lang
custmnr = iv_custmnr
objtype = iv_objtype
objname = iv_objname
IMPORTING
err_msg = lv_error " doesn't exist in NW <= 750
TABLES
lt_pcx_s1 = it_pcx_s1.
IF lv_error IS NOT INITIAL.
zcx_abapgit_exception=>raise( lv_error ).
ENDIF.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_WRITE'
EXPORTING
s_lang = iv_s_lang
t_lang = iv_t_lang
custmnr = iv_custmnr
objtype = iv_objtype
objname = iv_objname
TABLES
lt_pcx_s1 = it_pcx_s1.
ENDTRY.
ENDMETHOD.
ENDCLASS.