From 847a8d9444ac83c6756239b714134b8fe1d752a6 Mon Sep 17 00:00:00 2001 From: Lars Hvam Date: Sat, 25 Jan 2020 09:38:13 +0100 Subject: [PATCH] branch_overview: refactor DEFINE to private method (#3168) --- src/zcl_abapgit_branch_overview.clas.abap | 68 +++++++++++++++-------- 1 file changed, 46 insertions(+), 22 deletions(-) diff --git a/src/zcl_abapgit_branch_overview.clas.abap b/src/zcl_abapgit_branch_overview.clas.abap index 85096c011..bb7b579fc 100644 --- a/src/zcl_abapgit_branch_overview.clas.abap +++ b/src/zcl_abapgit_branch_overview.clas.abap @@ -25,6 +25,12 @@ CLASS zcl_abapgit_branch_overview DEFINITION DATA mt_commits TYPE zif_abapgit_definitions=>ty_commit_tt . DATA mt_tags TYPE zif_abapgit_definitions=>ty_git_tag_list_tt . + METHODS compress_internal + IMPORTING + !iv_name TYPE string + CHANGING + !ct_temp TYPE zif_abapgit_definitions=>ty_commit_tt + !ct_commits TYPE zif_abapgit_definitions=>ty_commit_tt . CLASS-METHODS parse_commits IMPORTING !it_objects TYPE zif_abapgit_definitions=>ty_objects_tt @@ -74,7 +80,34 @@ ENDCLASS. -CLASS zcl_abapgit_branch_overview IMPLEMENTATION. +CLASS ZCL_ABAPGIT_BRANCH_OVERVIEW IMPLEMENTATION. + + + METHOD compress_internal. + + FIELD-SYMBOLS: LIKE LINE OF ct_temp, + LIKE LINE OF ct_commits, + LIKE LINE OF ct_temp. + + + IF lines( ct_temp ) >= 10. + READ TABLE ct_temp ASSIGNING INDEX 1. + ASSERT sy-subrc = 0. + READ TABLE ct_temp ASSIGNING INDEX lines( ct_temp ). + ASSERT sy-subrc = 0. + APPEND INITIAL LINE TO ct_commits ASSIGNING . + -sha1 = -sha1. + -parent1 = -parent1. + -time = -time. + -message = |Compressed, { lines( ct_temp ) } commits|. + -branch = iv_name. + -compressed = abap_true. + ELSE. + APPEND LINES OF ct_temp TO ct_commits. + ENDIF. + CLEAR ct_temp. + + ENDMETHOD. METHOD constructor. @@ -421,25 +454,6 @@ CLASS zcl_abapgit_branch_overview IMPLEMENTATION. METHOD zif_abapgit_branch_overview~compress. - DEFINE _compress. - IF lines( lt_temp ) >= 10. - READ TABLE lt_temp ASSIGNING INDEX 1. - ASSERT sy-subrc = 0. - READ TABLE lt_temp ASSIGNING INDEX lines( lt_temp ). - ASSERT sy-subrc = 0. - APPEND INITIAL LINE TO rt_commits ASSIGNING . - -sha1 = -sha1. - -parent1 = -parent1. - -time = -time. - -message = |Compressed, { lines( lt_temp ) } commits|. - -branch = lv_name. - -compressed = abap_true. - ELSE. - APPEND LINES OF lt_temp TO rt_commits. - ENDIF. - CLEAR lt_temp. - END-OF-DEFINITION. - DATA: lv_previous TYPE i, lv_index TYPE i, lv_name TYPE string, @@ -467,7 +481,12 @@ CLASS zcl_abapgit_branch_overview IMPLEMENTATION. ENDIF. IF lv_previous + 1 <> sy-tabix. - _compress. + compress_internal( + EXPORTING + iv_name = lv_name + CHANGING + ct_temp = lt_temp + ct_commits = rt_commits ). ENDIF. lv_previous = lv_index. @@ -476,7 +495,12 @@ CLASS zcl_abapgit_branch_overview IMPLEMENTATION. ENDLOOP. - _compress. + compress_internal( + EXPORTING + iv_name = lv_name + CHANGING + ct_temp = lt_temp + ct_commits = rt_commits ). ENDLOOP.