Merge pull request #1422 from christianguenter2/1088

move parse_tag_request to zcl_abapgit_gui_page_tag
This commit is contained in:
Lars Hvam 2018-05-28 12:33:08 +02:00 committed by GitHub
commit 89cb371a77
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 41 additions and 39 deletions

View File

@ -12,6 +12,7 @@ CLASS zcl_abapgit_gui_page_tag DEFINITION PUBLIC FINAL
constructor
IMPORTING io_repo TYPE REF TO zcl_abapgit_repo
RAISING zcx_abapgit_exception,
zif_abapgit_gui_page~on_event REDEFINITION.
PROTECTED SECTION.
@ -25,20 +26,25 @@ CLASS zcl_abapgit_gui_page_tag DEFINITION PUBLIC FINAL
METHODS:
render_menu
RETURNING VALUE(ro_html) TYPE REF TO zcl_abapgit_html,
render_form
RETURNING VALUE(ro_html) TYPE REF TO zcl_abapgit_html
RAISING zcx_abapgit_exception,
render_text_input
IMPORTING iv_name TYPE string
iv_label TYPE string
iv_value TYPE string OPTIONAL
iv_max_length TYPE string OPTIONAL
RETURNING VALUE(ro_html) TYPE REF TO zcl_abapgit_html,
create_tag
IMPORTING
it_postdata TYPE cnht_post_data_tab
RAISING
zcx_abapgit_exception.
IMPORTING it_postdata TYPE cnht_post_data_tab
RAISING zcx_abapgit_exception,
parse_tag_request
IMPORTING !it_postdata TYPE cnht_post_data_tab
EXPORTING !es_fields TYPE any.
ENDCLASS.
@ -226,7 +232,7 @@ CLASS zcl_abapgit_gui_page_tag IMPLEMENTATION.
lv_text TYPE string,
lv_tag_type TYPE zif_abapgit_definitions=>ty_git_branch_type.
zcl_abapgit_html_action_utils=>parse_tag_request(
parse_tag_request(
EXPORTING it_postdata = it_postdata
IMPORTING es_fields = ls_tag ).
@ -251,4 +257,34 @@ CLASS zcl_abapgit_gui_page_tag IMPLEMENTATION.
ENDMETHOD.
METHOD parse_tag_request.
CONSTANTS: lc_replace TYPE string VALUE '<<new>>'.
DATA: lv_string TYPE string,
lt_fields TYPE tihttpnvp.
FIELD-SYMBOLS <lv_body> TYPE string.
CLEAR es_fields.
CONCATENATE LINES OF it_postdata INTO lv_string.
REPLACE ALL OCCURRENCES OF zif_abapgit_definitions=>gc_crlf IN lv_string WITH lc_replace.
REPLACE ALL OCCURRENCES OF zif_abapgit_definitions=>gc_newline IN lv_string WITH lc_replace.
lt_fields = zcl_abapgit_html_action_utils=>parse_fields_upper_case_name( lv_string ).
zcl_abapgit_html_action_utils=>get_field( EXPORTING name = 'SHA1' it = lt_fields CHANGING cv = es_fields ).
zcl_abapgit_html_action_utils=>get_field( EXPORTING name = 'NAME' it = lt_fields CHANGING cv = es_fields ).
zcl_abapgit_html_action_utils=>get_field( EXPORTING name = 'TAGGER_NAME' it = lt_fields CHANGING cv = es_fields ).
zcl_abapgit_html_action_utils=>get_field( EXPORTING name = 'TAGGER_EMAIL' it = lt_fields CHANGING cv = es_fields ).
zcl_abapgit_html_action_utils=>get_field( EXPORTING name = 'MESSAGE' it = lt_fields CHANGING cv = es_fields ).
zcl_abapgit_html_action_utils=>get_field( EXPORTING name = 'BODY' it = lt_fields CHANGING cv = es_fields ).
ASSIGN COMPONENT 'BODY' OF STRUCTURE es_fields TO <lv_body>.
ASSERT <lv_body> IS ASSIGNED.
REPLACE ALL OCCURRENCES OF lc_replace IN <lv_body> WITH zif_abapgit_definitions=>gc_newline.
ENDMETHOD.
ENDCLASS.

View File

@ -96,11 +96,6 @@ CLASS zcl_abapgit_html_action_utils DEFINITION
!it_postdata TYPE cnht_post_data_tab
EXPORTING
!es_fields TYPE any .
CLASS-METHODS parse_tag_request
IMPORTING
!it_postdata TYPE cnht_post_data_tab
EXPORTING
!es_fields TYPE any .
CLASS-METHODS decode_bg_update
IMPORTING
!iv_getdata TYPE clike
@ -436,33 +431,4 @@ CLASS zcl_abapgit_html_action_utils IMPLEMENTATION.
ENDMETHOD.
METHOD parse_tag_request.
CONSTANTS: lc_replace TYPE string VALUE '<<new>>'.
DATA: lv_string TYPE string,
lt_fields TYPE tihttpnvp.
FIELD-SYMBOLS <lv_body> TYPE string.
CLEAR es_fields.
CONCATENATE LINES OF it_postdata INTO lv_string.
REPLACE ALL OCCURRENCES OF zif_abapgit_definitions=>gc_crlf IN lv_string WITH lc_replace.
REPLACE ALL OCCURRENCES OF zif_abapgit_definitions=>gc_newline IN lv_string WITH lc_replace.
lt_fields = parse_fields_upper_case_name( lv_string ).
get_field( EXPORTING name = 'SHA1' it = lt_fields CHANGING cv = es_fields ).
get_field( EXPORTING name = 'NAME' it = lt_fields CHANGING cv = es_fields ).
get_field( EXPORTING name = 'TAGGER_NAME' it = lt_fields CHANGING cv = es_fields ).
get_field( EXPORTING name = 'TAGGER_EMAIL' it = lt_fields CHANGING cv = es_fields ).
get_field( EXPORTING name = 'MESSAGE' it = lt_fields CHANGING cv = es_fields ).
get_field( EXPORTING name = 'BODY' it = lt_fields CHANGING cv = es_fields ).
ASSIGN COMPONENT 'BODY' OF STRUCTURE es_fields TO <lv_body>.
ASSERT <lv_body> IS ASSIGNED.
REPLACE ALL OCCURRENCES OF lc_replace IN <lv_body> WITH zif_abapgit_definitions=>gc_newline.
ENDMETHOD.
ENDCLASS.