diff --git a/src/apack/zcl_abapgit_apack_migration.clas.abap b/src/apack/zcl_abapgit_apack_migration.clas.abap index 28d2436d8..01575a8ca 100644 --- a/src/apack/zcl_abapgit_apack_migration.clas.abap +++ b/src/apack/zcl_abapgit_apack_migration.clas.abap @@ -23,35 +23,7 @@ ENDCLASS. -CLASS zcl_abapgit_apack_migration IMPLEMENTATION. - - - METHOD add_interface_source_classic. - DATA: lo_source TYPE REF TO cl_oo_source, - lt_source_code TYPE zif_abapgit_definitions=>ty_string_tt. - - CREATE OBJECT lo_source - EXPORTING - clskey = is_clskey - EXCEPTIONS - class_not_existing = 1 - OTHERS = 2. - IF sy-subrc <> 0. - zcx_abapgit_exception=>raise( 'error from CL_OO_SOURCE' ) ##NO_TEXT. - ENDIF. - - TRY. - lo_source->access_permission( seok_access_modify ). - lt_source_code = get_interface_source( ). - lo_source->set_source( lt_source_code ). - lo_source->save( ). - lo_source->access_permission( seok_access_free ). - CATCH cx_oo_access_permission. - zcx_abapgit_exception=>raise( 'permission error' ) ##NO_TEXT. - CATCH cx_oo_source_save_failure. - zcx_abapgit_exception=>raise( 'save failure' ) ##NO_TEXT. - ENDTRY. - ENDMETHOD. +CLASS ZCL_ABAPGIT_APACK_MIGRATION IMPLEMENTATION. METHOD add_interface_source. @@ -94,19 +66,37 @@ CLASS zcl_abapgit_apack_migration IMPLEMENTATION. CALL METHOD lo_source->('IF_OO_CLIF_SOURCE~UNLOCK'). CATCH cx_sy_dyn_call_error. - add_interface_source_classic( is_clskey = is_clskey ). + add_interface_source_classic( is_clskey ). ENDTRY. ENDMETHOD. - METHOD run. + METHOD add_interface_source_classic. + DATA: lo_source TYPE REF TO cl_oo_source, + lt_source_code TYPE zif_abapgit_definitions=>ty_string_tt. - DATA: lo_apack_migration TYPE REF TO zcl_abapgit_apack_migration. - - CREATE OBJECT lo_apack_migration. - lo_apack_migration->perform_migration( ). + CREATE OBJECT lo_source + EXPORTING + clskey = is_clskey + EXCEPTIONS + class_not_existing = 1 + OTHERS = 2. + IF sy-subrc <> 0. + zcx_abapgit_exception=>raise( 'error from CL_OO_SOURCE' ) ##NO_TEXT. + ENDIF. + TRY. + lo_source->access_permission( seok_access_modify ). + lt_source_code = get_interface_source( ). + lo_source->set_source( lt_source_code ). + lo_source->save( ). + lo_source->access_permission( seok_access_free ). + CATCH cx_oo_access_permission. + zcx_abapgit_exception=>raise( 'permission error' ) ##NO_TEXT. + CATCH cx_oo_source_save_failure. + zcx_abapgit_exception=>raise( 'save failure' ) ##NO_TEXT. + ENDTRY. ENDMETHOD. @@ -144,7 +134,7 @@ CLASS zcl_abapgit_apack_migration IMPLEMENTATION. ls_clskey-clsname = c_interface_name. - add_interface_source( is_clskey = ls_clskey ). + add_interface_source( ls_clskey ). ls_inactive_object-object = 'INTF'. ls_inactive_object-obj_name = c_interface_name. @@ -214,4 +204,14 @@ CLASS zcl_abapgit_apack_migration IMPLEMENTATION. ENDIF. ENDMETHOD. + + + METHOD run. + + DATA: lo_apack_migration TYPE REF TO zcl_abapgit_apack_migration. + + CREATE OBJECT lo_apack_migration. + lo_apack_migration->perform_migration( ). + + ENDMETHOD. ENDCLASS. diff --git a/src/apack/zcl_abapgit_apack_reader.clas.testclasses.abap b/src/apack/zcl_abapgit_apack_reader.clas.testclasses.abap index 96f862ae8..745348782 100644 --- a/src/apack/zcl_abapgit_apack_reader.clas.testclasses.abap +++ b/src/apack/zcl_abapgit_apack_reader.clas.testclasses.abap @@ -23,8 +23,8 @@ CLASS ltcl_apack_manifest_reader IMPLEMENTATION. ls_apack_manifest_descriptor-version = '1.42'. ls_apack_manifest_descriptor-git_url = 'https://github.com/larshp/abapGit.git'. - me->mo_manifest_reader = zcl_abapgit_apack_reader=>create_instance( iv_package_name = '$TMP' ). - me->mo_manifest_reader->set_manifest_descriptor( is_manifest_descriptor = ls_apack_manifest_descriptor ). + me->mo_manifest_reader = zcl_abapgit_apack_reader=>create_instance( '$TMP' ). + me->mo_manifest_reader->set_manifest_descriptor( ls_apack_manifest_descriptor ). ENDMETHOD. diff --git a/src/apack/zcl_abapgit_apack_writer.clas.testclasses.abap b/src/apack/zcl_abapgit_apack_writer.clas.testclasses.abap index a0804fd74..391ad41b6 100644 --- a/src/apack/zcl_abapgit_apack_writer.clas.testclasses.abap +++ b/src/apack/zcl_abapgit_apack_writer.clas.testclasses.abap @@ -17,8 +17,7 @@ CLASS ltcl_apack_manifest_writer IMPLEMENTATION. ls_apack_manifest_descriptor-version = '1.8'. ls_apack_manifest_descriptor-git_url = 'https://github.com/larshp/abapGit.git'. - lo_manifest_writer = zcl_abapgit_apack_writer=>create_instance( - is_apack_manifest_descriptor = ls_apack_manifest_descriptor ). + lo_manifest_writer = zcl_abapgit_apack_writer=>create_instance( ls_apack_manifest_descriptor ). lv_actual_xml = lo_manifest_writer->serialize( ). cl_abap_unit_assert=>assert_not_initial( lv_actual_xml ). cl_abap_unit_assert=>assert_true( boolc( contains( val = lv_actual_xml diff --git a/src/objects/ecatt/zcl_abapgit_ecatt_script_downl.clas.abap b/src/objects/ecatt/zcl_abapgit_ecatt_script_downl.clas.abap index 3b137fb47..935300e7c 100644 --- a/src/objects/ecatt/zcl_abapgit_ecatt_script_downl.clas.abap +++ b/src/objects/ecatt/zcl_abapgit_ecatt_script_downl.clas.abap @@ -155,7 +155,7 @@ CLASS ZCL_ABAPGIT_ECATT_SCRIPT_DOWNL IMPLEMENTATION. WHILE li_elem IS NOT INITIAL. li_list = li_elem->get_children( ). - li_textit = li_list->create_rev_iterator_filtered( li_filter ). + li_textit = li_list->create_rev_iterator_filtered( li_filter ). li_text ?= li_textit->get_next( ). IF li_text IS NOT INITIAL. lv_value = li_text->get_data( ). @@ -174,13 +174,6 @@ CLASS ZCL_ABAPGIT_ECATT_SCRIPT_DOWNL IMPLEMENTATION. ENDMETHOD. - METHOD zif_abapgit_ecatt_download~get_xml_stream. - - rv_xml_stream = mv_xml_stream. - - ENDMETHOD. - - METHOD set_artmp_to_template. " Downport @@ -455,4 +448,11 @@ CLASS ZCL_ABAPGIT_ECATT_SCRIPT_DOWNL IMPLEMENTATION. ENDIF. ENDMETHOD. + + + METHOD zif_abapgit_ecatt_download~get_xml_stream. + + rv_xml_stream = mv_xml_stream. + + ENDMETHOD. ENDCLASS. diff --git a/src/objects/zcl_abapgit_object_sots.clas.abap b/src/objects/zcl_abapgit_object_sots.clas.abap index dba613011..04f224b24 100644 --- a/src/objects/zcl_abapgit_object_sots.clas.abap +++ b/src/objects/zcl_abapgit_object_sots.clas.abap @@ -207,8 +207,7 @@ CLASS ZCL_ABAPGIT_OBJECT_SOTS IMPLEMENTATION. DATA: lt_sots TYPE tty_sots, lt_objects TYPE sotr_objects, - lv_object LIKE LINE OF lt_objects, - lx_error TYPE REF TO zcx_abapgit_exception. + lv_object LIKE LINE OF lt_objects. FIELD-SYMBOLS: TYPE ty_sots, LIKE LINE OF -entries. @@ -247,7 +246,7 @@ CLASS ZCL_ABAPGIT_OBJECT_SOTS IMPLEMENTATION. -text = mo_files->read_string( iv_extra = get_raw_text_filename( ) iv_ext = 'txt' ). - CATCH zcx_abapgit_exception INTO lx_error. + CATCH zcx_abapgit_exception. " Most probably file not found -> ignore CONTINUE. ENDTRY. diff --git a/src/objects/zcl_abapgit_object_tabl.clas.abap b/src/objects/zcl_abapgit_object_tabl.clas.abap index 577dd0947..7787bb2c5 100644 --- a/src/objects/zcl_abapgit_object_tabl.clas.abap +++ b/src/objects/zcl_abapgit_object_tabl.clas.abap @@ -32,21 +32,30 @@ CLASS zcl_abapgit_object_tabl DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje METHODS delete_idoc_segment RETURNING VALUE(rv_deleted) TYPE abap_bool RAISING zcx_abapgit_exception. PRIVATE SECTION. - CONSTANTS c_extension_xml TYPE string VALUE 'xml' ##NO_TEXT. + + TYPES: + ty_dd03p_tt TYPE STANDARD TABLE OF dd03p . + CONSTANTS c_longtext_id_tabl TYPE dokil-id VALUE 'TB' ##NO_TEXT. - CONSTANTS: BEGIN OF c_s_dataname, - segment_definition TYPE string VALUE 'SEGMENT_DEFINITION' ##NO_TEXT, - END OF c_s_dataname. - TYPES: ty_dd03p_tt TYPE STANDARD TABLE OF dd03p. + CONSTANTS: + BEGIN OF c_s_dataname, + segment_definition TYPE string VALUE 'SEGMENT_DEFINITION' ##NO_TEXT, + END OF c_s_dataname . METHODS clear_dd03p_fields - CHANGING ct_dd03p TYPE ty_dd03p_tt. + CHANGING + !ct_dd03p TYPE ty_dd03p_tt . "! Check if structure is an IDoc segment "! @raising zcx_abapgit_exception | It's not an IDoc segment - METHODS check_is_idoc_segment RAISING zcx_abapgit_exception. - METHODS clear_dd03p_fields_common CHANGING cs_dd03p TYPE dd03p. - METHODS clear_dd03p_fields_dataelement CHANGING cs_dd03p TYPE dd03p. - + METHODS check_is_idoc_segment + RAISING + zcx_abapgit_exception . + METHODS clear_dd03p_fields_common + CHANGING + !cs_dd03p TYPE dd03p . + METHODS clear_dd03p_fields_dataelement + CHANGING + !cs_dd03p TYPE dd03p . ENDCLASS. diff --git a/src/objects/zcl_abapgit_object_ttyp.clas.abap b/src/objects/zcl_abapgit_object_ttyp.clas.abap index 651c816da..384a2b078 100644 --- a/src/objects/zcl_abapgit_object_ttyp.clas.abap +++ b/src/objects/zcl_abapgit_object_ttyp.clas.abap @@ -103,7 +103,7 @@ CLASS ZCL_ABAPGIT_OBJECT_TTYP IMPLEMENTATION. WHEN OTHERS. ENDCASE. - zcx_abapgit_exception=>raise( iv_text = lv_msg ). + zcx_abapgit_exception=>raise( lv_msg ). ENDIF. zcl_abapgit_objects_activation=>add_item( ms_item ). diff --git a/src/objects/zcl_abapgit_object_udmo.clas.abap b/src/objects/zcl_abapgit_object_udmo.clas.abap index 9b1c87f4b..b5fe7ee35 100644 --- a/src/objects/zcl_abapgit_object_udmo.clas.abap +++ b/src/objects/zcl_abapgit_object_udmo.clas.abap @@ -243,10 +243,6 @@ CLASS ZCL_ABAPGIT_OBJECT_UDMO IMPLEMENTATION. METHOD deserialize_long_texts. - TYPES BEGIN OF language_type. - TYPES language TYPE dm40t-sprache. - TYPES END OF language_type. - DATA BEGIN OF ls_udmo_long_text. DATA language TYPE dm40t-sprache. DATA header TYPE thead. @@ -774,7 +770,7 @@ CLASS ZCL_ABAPGIT_OBJECT_UDMO IMPLEMENTATION. ENDIF. serialize_model( io_xml ). - me->serialize_entities( io_xml ). + me->serialize_entities( io_xml ). me->serialize_short_texts( io_xml ). me->serialize_long_texts( io_xml ). diff --git a/src/persist/zcl_abapgit_persist_migrate.clas.abap b/src/persist/zcl_abapgit_persist_migrate.clas.abap index c5d3d702b..f6f16036a 100644 --- a/src/persist/zcl_abapgit_persist_migrate.clas.abap +++ b/src/persist/zcl_abapgit_persist_migrate.clas.abap @@ -217,7 +217,7 @@ CLASS ZCL_ABAPGIT_PERSIST_MIGRATE IMPLEMENTATION. DATA: li_element TYPE REF TO if_ixml_element, ls_setting_to_migrate LIKE LINE OF ct_settings_to_migrate. - li_element = ci_document->find_from_name( iv_name ). + li_element = ci_document->find_from_name( iv_name ). IF li_element IS BOUND. " The element is present in the global config. diff --git a/src/ui/zcl_abapgit_gui_page.clas.abap b/src/ui/zcl_abapgit_gui_page.clas.abap index eba694bd0..d60d38784 100644 --- a/src/ui/zcl_abapgit_gui_page.clas.abap +++ b/src/ui/zcl_abapgit_gui_page.clas.abap @@ -174,8 +174,6 @@ CLASS ZCL_ABAPGIT_GUI_PAGE IMPLEMENTATION. METHOD html_head. - DATA lv_font TYPE string. - CREATE OBJECT ro_html. ro_html->add( '' ). "#EC NOTEXT diff --git a/src/ui/zcl_abapgit_gui_page_code_insp.clas.abap b/src/ui/zcl_abapgit_gui_page_code_insp.clas.abap index 5b400a90a..6a6fae4c4 100644 --- a/src/ui/zcl_abapgit_gui_page_code_insp.clas.abap +++ b/src/ui/zcl_abapgit_gui_page_code_insp.clas.abap @@ -147,7 +147,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_CODE_INSP IMPLEMENTATION. METHOD constructor. super->constructor( ). - mo_repo ?= io_repo. + mo_repo = io_repo. mo_stage = io_stage. ms_control-page_title = 'Code Inspector'. determine_check_variant( ). diff --git a/src/ui/zcl_abapgit_gui_page_codi_base.clas.abap b/src/ui/zcl_abapgit_gui_page_codi_base.clas.abap index 9f1dfabe6..8c20e50e9 100644 --- a/src/ui/zcl_abapgit_gui_page_codi_base.clas.abap +++ b/src/ui/zcl_abapgit_gui_page_codi_base.clas.abap @@ -31,18 +31,18 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_CODI_BASE IMPLEMENTATION. METHOD jump. + DATA: lo_test TYPE REF TO cl_ci_test_root, ls_info TYPE scir_rest, lo_result TYPE REF TO cl_ci_result_root, - lv_check_variant_name TYPE sci_chkv, - lv_package TYPE devclass. - DATA: lv_adt_jump_enabled TYPE abap_bool. - DATA: lv_line_number TYPE i. - DATA: ls_item TYPE zif_abapgit_definitions=>ty_item. - DATA: ls_sub_item TYPE zif_abapgit_definitions=>ty_item. + lv_adt_jump_enabled TYPE abap_bool, + lv_line_number TYPE i, + ls_item TYPE zif_abapgit_definitions=>ty_item, + ls_sub_item TYPE zif_abapgit_definitions=>ty_item. FIELD-SYMBOLS: TYPE scir_alvlist. + IF is_sub_item IS NOT INITIAL. READ TABLE mt_result WITH KEY objtype = is_item-obj_type objname = is_item-obj_name @@ -63,9 +63,6 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_CODI_BASE IMPLEMENTATION. ls_sub_item-obj_name = -sobjname. ls_sub_item-obj_type = -sobjtype. - lv_package = mo_repo->get_package( ). - lv_check_variant_name = mo_repo->get_local_settings( )-code_inspector_check_variant. - " see SCI_LCL_DYNP_530 / HANDLE_DOUBLE_CLICK lv_adt_jump_enabled = zcl_abapgit_persist_settings=>get_instance( )->read( )->get_adt_jump_enabled( ). @@ -87,8 +84,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_CODI_BASE IMPLEMENTATION. ENDTRY. TRY. - lo_test ?= cl_ci_tests=>get_test_ref( -test ). - + lo_test = cl_ci_tests=>get_test_ref( -test ). CATCH cx_root. zcx_abapgit_exception=>raise( |Jump to object not supported in your NW release| ). ENDTRY. diff --git a/src/ui/zcl_abapgit_gui_router.clas.abap b/src/ui/zcl_abapgit_gui_router.clas.abap index b69970a37..c42cc1b83 100644 --- a/src/ui/zcl_abapgit_gui_router.clas.abap +++ b/src/ui/zcl_abapgit_gui_router.clas.abap @@ -635,7 +635,7 @@ CLASS ZCL_ABAPGIT_GUI_ROUTER IMPLEMENTATION. CASE is_event_data-action. " ZIP services actions WHEN zif_abapgit_definitions=>c_action-zip_import. " Import repo from ZIP - lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ). + lo_repo = zcl_abapgit_repo_srv=>get_instance( )->get( lv_key ). lv_path = zcl_abapgit_ui_factory=>get_frontend_services( )->show_file_open_dialog( iv_title = 'Import ZIP' iv_default_filename = '*.zip' ). diff --git a/src/ui/zcl_abapgit_services_abapgit.clas.abap b/src/ui/zcl_abapgit_services_abapgit.clas.abap index 47a15bd51..b38566c48 100644 --- a/src/ui/zcl_abapgit_services_abapgit.clas.abap +++ b/src/ui/zcl_abapgit_services_abapgit.clas.abap @@ -106,7 +106,7 @@ CLASS ZCL_ABAPGIT_SERVICES_ABAPGIT IMPLEMENTATION. ls_item-obj_type = 'CLAS'. ls_item-obj_name = 'CL_ADT_GUI_INTEGRATION_CONTEXT'. - IF zcl_abapgit_objects=>exists( ls_item ) = abap_false. + IF zcl_abapgit_objects=>exists( ls_item ) = abap_false. " ADT is not supported in this NW release RETURN. ENDIF. diff --git a/src/ui/zcl_abapgit_services_git.clas.abap b/src/ui/zcl_abapgit_services_git.clas.abap index 9928e993a..bf9033dde 100644 --- a/src/ui/zcl_abapgit_services_git.clas.abap +++ b/src/ui/zcl_abapgit_services_git.clas.abap @@ -213,8 +213,6 @@ CLASS ZCL_ABAPGIT_SERVICES_GIT IMPLEMENTATION. DATA: lt_tadir TYPE zif_abapgit_definitions=>ty_tadir_tt, lt_tadir_unique TYPE HASHED TABLE OF zif_abapgit_definitions=>ty_tadir WITH UNIQUE KEY pgmid object obj_name, - lt_local TYPE zif_abapgit_definitions=>ty_files_item_tt, - lt_remote TYPE zif_abapgit_definitions=>ty_files_tt, lt_status TYPE zif_abapgit_definitions=>ty_results_tt, lv_package TYPE zif_abapgit_persistence=>ty_repo-package. @@ -224,8 +222,6 @@ CLASS ZCL_ABAPGIT_SERVICES_GIT IMPLEMENTATION. " delete objects which are added locally but are not in remote repo - lt_local = io_repo->get_files_local( ). - lt_remote = io_repo->get_files_remote( ). lt_status = io_repo->status( ). lv_package = io_repo->get_package( ). diff --git a/src/xml/zcl_abapgit_xml_output.clas.testclasses.abap b/src/xml/zcl_abapgit_xml_output.clas.testclasses.abap index d73b3d6e1..fd6036643 100644 --- a/src/xml/zcl_abapgit_xml_output.clas.testclasses.abap +++ b/src/xml/zcl_abapgit_xml_output.clas.testclasses.abap @@ -15,12 +15,6 @@ CLASS ltcl_xml_output DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HARMLESS bar TYPE c LENGTH 1, END OF st_old. - TYPES: BEGIN OF st_new, - foo TYPE i, - bar TYPE c LENGTH 1, - moo TYPE f, - END OF st_new. - ENDCLASS. CLASS ltcl_xml_output IMPLEMENTATION. diff --git a/src/zcl_abapgit_objects.clas.abap b/src/zcl_abapgit_objects.clas.abap index 25362d38a..e4bb1fa57 100644 --- a/src/zcl_abapgit_objects.clas.abap +++ b/src/zcl_abapgit_objects.clas.abap @@ -690,7 +690,7 @@ CLASS ZCL_ABAPGIT_OBJECTS IMPLEMENTATION. APPEND LINES OF -obj->mo_files->get_accessed_files( ) TO ct_files. ENDLOOP. - zcl_abapgit_objects_activation=>activate( iv_ddic = is_step-is_ddic ). + zcl_abapgit_objects_activation=>activate( is_step-is_ddic ). ENDMETHOD. diff --git a/src/zcl_abapgit_repo.clas.abap b/src/zcl_abapgit_repo.clas.abap index 1df3c7dcd..e3e1de570 100644 --- a/src/zcl_abapgit_repo.clas.abap +++ b/src/zcl_abapgit_repo.clas.abap @@ -169,7 +169,7 @@ ENDCLASS. -CLASS zcl_abapgit_repo IMPLEMENTATION. +CLASS ZCL_ABAPGIT_REPO IMPLEMENTATION. METHOD apply_filter. @@ -206,6 +206,24 @@ CLASS zcl_abapgit_repo IMPLEMENTATION. ENDMETHOD. + METHOD build_apack_manifest_file. + DATA: lo_manifest_reader TYPE REF TO zcl_abapgit_apack_reader, + ls_descriptor TYPE zif_abapgit_apack_definitions=>ty_descriptor, + lo_manifest_writer TYPE REF TO zcl_abapgit_apack_writer. + + lo_manifest_reader = zcl_abapgit_apack_reader=>create_instance( ms_data-package ). + IF lo_manifest_reader->has_manifest( ) = abap_true. + ls_descriptor = lo_manifest_reader->get_manifest_descriptor( ). + lo_manifest_writer = zcl_abapgit_apack_writer=>create_instance( ls_descriptor ). + rs_file-path = zif_abapgit_definitions=>c_root_dir. + rs_file-filename = zif_abapgit_apack_definitions=>c_dot_apack_manifest. + rs_file-data = zcl_abapgit_convert=>string_to_xstring_utf8( lo_manifest_writer->serialize( ) ). + rs_file-sha1 = zcl_abapgit_hash=>sha1( iv_type = zif_abapgit_definitions=>c_type-blob + iv_data = rs_file-data ). + ENDIF. + ENDMETHOD. + + METHOD build_dotabapgit_file. rs_file-path = zif_abapgit_definitions=>c_root_dir. @@ -413,6 +431,13 @@ CLASS zcl_abapgit_repo IMPLEMENTATION. ENDMETHOD. + METHOD get_name. + + rv_name = ms_data-local_settings-display_name. + + ENDMETHOD. + + METHOD get_package. rv_package = ms_data-package. ENDMETHOD. @@ -709,29 +734,4 @@ CLASS zcl_abapgit_repo IMPLEMENTATION. set( it_checksums = lt_checksums ). ENDMETHOD. - - - METHOD get_name. - - rv_name = ms_data-local_settings-display_name. - - ENDMETHOD. - - METHOD build_apack_manifest_file. - DATA: lo_manifest_reader TYPE REF TO zcl_abapgit_apack_reader, - ls_descriptor TYPE zif_abapgit_apack_definitions=>ty_descriptor, - lo_manifest_writer TYPE REF TO zcl_abapgit_apack_writer. - - lo_manifest_reader = zcl_abapgit_apack_reader=>create_instance( iv_package_name = ms_data-package ). - IF lo_manifest_reader->has_manifest( ) = abap_true. - ls_descriptor = lo_manifest_reader->get_manifest_descriptor( ). - lo_manifest_writer = zcl_abapgit_apack_writer=>create_instance( is_apack_manifest_descriptor = ls_descriptor ). - rs_file-path = zif_abapgit_definitions=>c_root_dir. - rs_file-filename = zif_abapgit_apack_definitions=>c_dot_apack_manifest. - rs_file-data = zcl_abapgit_convert=>string_to_xstring_utf8( lo_manifest_writer->serialize( ) ). - rs_file-sha1 = zcl_abapgit_hash=>sha1( iv_type = zif_abapgit_definitions=>c_type-blob - iv_data = rs_file-data ). - ENDIF. - ENDMETHOD. - ENDCLASS. diff --git a/src/zcl_abapgit_serialize.clas.abap b/src/zcl_abapgit_serialize.clas.abap index 117a17cfa..40ba09cc7 100644 --- a/src/zcl_abapgit_serialize.clas.abap +++ b/src/zcl_abapgit_serialize.clas.abap @@ -25,6 +25,7 @@ CLASS zcl_abapgit_serialize DEFINITION DATA mt_files TYPE zif_abapgit_definitions=>ty_files_item_tt . DATA mv_free TYPE i . DATA mo_log TYPE REF TO zcl_abapgit_log . + DATA mv_group TYPE rzlli_apcl . METHODS add_to_return IMPORTING @@ -32,7 +33,6 @@ CLASS zcl_abapgit_serialize DEFINITION !is_fils_item TYPE zcl_abapgit_objects=>ty_serialization . METHODS run_parallel IMPORTING - !iv_group TYPE rzlli_apcl !is_tadir TYPE zif_abapgit_definitions=>ty_tadir !iv_language TYPE langu !iv_task TYPE sychar32 @@ -52,13 +52,15 @@ CLASS zcl_abapgit_serialize DEFINITION RAISING zcx_abapgit_exception . PRIVATE SECTION. - METHODS is_merged RETURNING VALUE(rv_result) TYPE abap_bool . + METHODS is_merged + RETURNING + VALUE(rv_result) TYPE abap_bool . ENDCLASS. -CLASS zcl_abapgit_serialize IMPLEMENTATION. +CLASS ZCL_ABAPGIT_SERIALIZE IMPLEMENTATION. METHOD add_to_return. @@ -84,10 +86,12 @@ CLASS zcl_abapgit_serialize IMPLEMENTATION. lo_settings = zcl_abapgit_persist_settings=>get_instance( )->read( ). IF is_merged( ) = abap_true - OR lo_settings->get_parallel_proc_disabled( ) = abap_true. + OR lo_settings->get_parallel_proc_disabled( ) = abap_true. gv_max_threads = 1. ENDIF. + mv_group = 'parallel_generators' ##NO_TEXT. + ENDMETHOD. @@ -117,7 +121,7 @@ CLASS zcl_abapgit_serialize IMPLEMENTATION. * todo, add possibility to set group name in user exit CALL FUNCTION 'SPBT_INITIALIZE' EXPORTING - group_name = 'parallel_generators' + group_name = mv_group IMPORTING free_pbt_wps = gv_max_threads EXCEPTIONS @@ -153,7 +157,7 @@ CLASS zcl_abapgit_serialize IMPLEMENTATION. METHOD is_merged. - DATA lo_marker TYPE REF TO data. + DATA lo_marker TYPE REF TO data ##NEEDED. TRY. CREATE DATA lo_marker TYPE REF TO ('LIF_ABAPMERGE_MARKER') ##no_text. @@ -207,7 +211,7 @@ CLASS zcl_abapgit_serialize IMPLEMENTATION. DO. CALL FUNCTION 'Z_ABAPGIT_SERIALIZE_PARALLEL' STARTING NEW TASK iv_task - DESTINATION IN GROUP iv_group + DESTINATION IN GROUP mv_group CALLING on_end_of_task ON END OF TASK EXPORTING iv_obj_type = is_tadir-object @@ -289,7 +293,6 @@ CLASS zcl_abapgit_serialize IMPLEMENTATION. iv_language = iv_language ). ELSE. run_parallel( - iv_group = 'parallel_generators' " todo is_tadir = iv_task = |{ sy-tabix }| iv_language = iv_language ).