#311 branch types to global definitions

This commit is contained in:
atsy 2016-09-03 12:10:55 +03:00
parent b1e8f4b6d8
commit 858f64b01f
5 changed files with 36 additions and 28 deletions

View File

@ -54,7 +54,7 @@ FORM branch_popup TABLES tt_fields TYPE ty_sval_tt
DATA: lv_url TYPE string, DATA: lv_url TYPE string,
lx_error TYPE REF TO lcx_exception, lx_error TYPE REF TO lcx_exception,
ls_package_data TYPE scompkdtln, ls_package_data TYPE scompkdtln,
ls_branch TYPE lcl_git_transport=>ty_branch_list. ls_branch TYPE ty_git_branch.
FIELD-SYMBOLS: <ls_furl> LIKE LINE OF tt_fields, FIELD-SYMBOLS: <ls_furl> LIKE LINE OF tt_fields,
<ls_fbranch> LIKE LINE OF tt_fields. <ls_fbranch> LIKE LINE OF tt_fields.

View File

@ -7,22 +7,27 @@ CLASS ltcl_git_pack DEFINITION DEFERRED.
*----------------------------------------------------------------------* *----------------------------------------------------------------------*
* CLASS lcl_transport DEFINITION * CLASS lcl_transport DEFINITION
*----------------------------------------------------------------------* *----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS lcl_git_transport DEFINITION FINAL.
" TODO: move types to global definitions when code is stable
TYPES: ty_git_branch_type TYPE char2.
TYPES: BEGIN OF ty_git_branch,
sha1 TYPE ty_sha1,
name TYPE string,
type TYPE ty_git_branch_type,
is_head TYPE abap_bool,
display_name TYPE string,
END OF ty_git_branch.
TYPES: ty_git_branch_list_tt TYPE STANDARD TABLE OF ty_git_branch WITH DEFAULT KEY.
CLASS lcl_git_transport DEFINITION FINAL.
PUBLIC SECTION. PUBLIC SECTION.
TYPES: BEGIN OF ty_branch_list,
sha1 TYPE ty_sha1,
name TYPE string,
END OF ty_branch_list.
TYPES: ty_branch_list_tt TYPE STANDARD TABLE OF ty_branch_list WITH DEFAULT KEY.
* remote to local * remote to local
CLASS-METHODS upload_pack CLASS-METHODS upload_pack
IMPORTING io_repo TYPE REF TO lcl_repo_online IMPORTING io_repo TYPE REF TO lcl_repo_online
iv_deepen TYPE abap_bool DEFAULT abap_true iv_deepen TYPE abap_bool DEFAULT abap_true
it_branches TYPE ty_branch_list_tt OPTIONAL it_branches TYPE ty_git_branch_list_tt OPTIONAL
EXPORTING et_objects TYPE ty_objects_tt EXPORTING et_objects TYPE ty_objects_tt
ev_branch TYPE ty_sha1 ev_branch TYPE ty_sha1
RAISING lcx_exception. RAISING lcx_exception.
@ -38,7 +43,7 @@ CLASS lcl_git_transport DEFINITION FINAL.
CLASS-METHODS branches CLASS-METHODS branches
IMPORTING iv_url TYPE string IMPORTING iv_url TYPE string
RETURNING VALUE(rt_branch_list) TYPE ty_branch_list_tt RETURNING VALUE(rt_branch_list) TYPE ty_git_branch_list_tt
RAISING lcx_exception. RAISING lcx_exception.
CLASS-METHODS class_constructor. CLASS-METHODS class_constructor.
@ -58,7 +63,7 @@ CLASS lcl_git_transport DEFINITION FINAL.
IMPORTING iv_url TYPE string IMPORTING iv_url TYPE string
iv_service TYPE string iv_service TYPE string
EXPORTING ei_client TYPE REF TO if_http_client EXPORTING ei_client TYPE REF TO if_http_client
et_branch_list TYPE ty_branch_list_tt et_branch_list TYPE ty_git_branch_list_tt
RAISING lcx_exception. RAISING lcx_exception.
CLASS-METHODS pkt_string CLASS-METHODS pkt_string
@ -115,15 +120,15 @@ ENDCLASS. "lcl_transport DEFINITION
*----------------------------------------------------------------------* *----------------------------------------------------------------------*
CLASS lcl_git_branch_helper DEFINITION FINAL. CLASS lcl_git_branch_helper DEFINITION FINAL.
PUBLIC SECTION. PUBLIC SECTION.
CLASS-METHODS parse_branch_list CLASS-METHODS parse_branch_list
IMPORTING iv_data TYPE string IMPORTING iv_data TYPE string
RETURNING VALUE(rt_list) TYPE lcl_git_transport=>ty_branch_list_tt RETURNING VALUE(rt_list) TYPE ty_git_branch_list_tt
RAISING lcx_exception. RAISING lcx_exception.
ENDCLASS. "lcl_git_branch_helper ENDCLASS. "lcl_git_branch_helper
*----------------------------------------------------------------------* *----------------------------------------------------------------------*
* CLASS lcl_pack DEFINITION * CLASS lcl_pack DEFINITION
*----------------------------------------------------------------------* *----------------------------------------------------------------------*
@ -338,7 +343,7 @@ CLASS lcl_git_transport IMPLEMENTATION.
METHOD find_branch. METHOD find_branch.
DATA: lt_branch_list TYPE ty_branch_list_tt, DATA: lt_branch_list TYPE ty_git_branch_list_tt,
ls_branch_list LIKE LINE OF lt_branch_list. ls_branch_list LIKE LINE OF lt_branch_list.
@ -601,7 +606,7 @@ CLASS lcl_git_transport IMPLEMENTATION.
lv_xstring TYPE xstring, lv_xstring TYPE xstring,
lv_line TYPE string, lv_line TYPE string,
lv_pack TYPE xstring, lv_pack TYPE xstring,
lt_branches TYPE ty_branch_list_tt, lt_branches TYPE ty_git_branch_list_tt,
lv_capa TYPE string. lv_capa TYPE string.
FIELD-SYMBOLS: <ls_branch> LIKE LINE OF lt_branches. FIELD-SYMBOLS: <ls_branch> LIKE LINE OF lt_branches.
@ -691,6 +696,7 @@ ENDCLASS. "lcl_transport IMPLEMENTATION
* CLASS lcl_git_branch_helper IMPLEMENTATION * CLASS lcl_git_branch_helper IMPLEMENTATION
*----------------------------------------------------------------------* *----------------------------------------------------------------------*
CLASS lcl_git_branch_helper IMPLEMENTATION. CLASS lcl_git_branch_helper IMPLEMENTATION.
METHOD parse_branch_list. METHOD parse_branch_list.
DATA: lt_result TYPE TABLE OF string, DATA: lt_result TYPE TABLE OF string,
@ -731,6 +737,8 @@ CLASS lcl_git_branch_helper IMPLEMENTATION.
ENDLOOP. ENDLOOP.
ENDMETHOD. "parse_branch_list ENDMETHOD. "parse_branch_list
ENDCLASS. "lcl_git_branch_helper ENDCLASS. "lcl_git_branch_helper
@ -1446,7 +1454,7 @@ CLASS lcl_git_porcelain DEFINITION FINAL FRIENDS ltcl_git_porcelain.
CLASS-METHODS delete_branch CLASS-METHODS delete_branch
IMPORTING io_repo TYPE REF TO lcl_repo_online IMPORTING io_repo TYPE REF TO lcl_repo_online
is_branch TYPE lcl_git_transport=>ty_branch_list is_branch TYPE ty_git_branch
RAISING lcx_exception. RAISING lcx_exception.
CLASS-METHODS full_tree CLASS-METHODS full_tree
@ -1635,7 +1643,7 @@ CLASS lcl_git_porcelain IMPLEMENTATION.
lv_sha1 TYPE ty_sha1, lv_sha1 TYPE ty_sha1,
lt_trees TYPE ty_trees_tt, lt_trees TYPE ty_trees_tt,
lt_objects TYPE ty_objects_tt, lt_objects TYPE ty_objects_tt,
lt_branches TYPE lcl_git_transport=>ty_branch_list_tt, lt_branches TYPE ty_git_branch_list_tt,
lt_stage TYPE lcl_stage=>ty_stage_tt. lt_stage TYPE lcl_stage=>ty_stage_tt.
FIELD-SYMBOLS: <ls_stage> LIKE LINE OF lt_stage, FIELD-SYMBOLS: <ls_stage> LIKE LINE OF lt_stage,

View File

@ -37,7 +37,7 @@ CLASS lcl_branch_overview DEFINITION FINAL.
RAISING lcx_exception. RAISING lcx_exception.
CLASS-METHODS: get_branches CLASS-METHODS: get_branches
RETURNING VALUE(rt_branches) TYPE lcl_git_transport=>ty_branch_list_tt. RETURNING VALUE(rt_branches) TYPE ty_git_branch_list_tt.
PRIVATE SECTION. PRIVATE SECTION.
@ -57,7 +57,7 @@ CLASS lcl_branch_overview DEFINITION FINAL.
RAISING lcx_exception. RAISING lcx_exception.
CLASS-DATA: CLASS-DATA:
gt_branches TYPE lcl_git_transport=>ty_branch_list_tt, gt_branches TYPE ty_git_branch_list_tt,
gt_commits TYPE TABLE OF ty_commit. gt_commits TYPE TABLE OF ty_commit.
ENDCLASS. ENDCLASS.
@ -379,7 +379,7 @@ CLASS lcl_gui_page_branch_overview IMPLEMENTATION.
METHOD form_select. METHOD form_select.
DATA: lv_name TYPE string, DATA: lv_name TYPE string,
lt_branches TYPE lcl_git_transport=>ty_branch_list_tt. lt_branches TYPE ty_git_branch_list_tt.
FIELD-SYMBOLS: <ls_branch> LIKE LINE OF lt_branches. FIELD-SYMBOLS: <ls_branch> LIKE LINE OF lt_branches.

View File

@ -14,8 +14,8 @@ CLASS lcl_merge DEFINITION FINAL.
TYPES: BEGIN OF ty_merge, TYPES: BEGIN OF ty_merge,
repo TYPE REF TO lcl_repo_online, repo TYPE REF TO lcl_repo_online,
source TYPE lcl_git_transport=>ty_branch_list, source TYPE ty_git_branch,
target TYPE lcl_git_transport=>ty_branch_list, target TYPE ty_git_branch,
common TYPE ty_ancestor, common TYPE ty_ancestor,
stree TYPE lcl_git_porcelain=>ty_expanded_tt, stree TYPE lcl_git_porcelain=>ty_expanded_tt,
ttree TYPE lcl_git_porcelain=>ty_expanded_tt, ttree TYPE lcl_git_porcelain=>ty_expanded_tt,
@ -304,8 +304,8 @@ CLASS lcl_merge IMPLEMENTATION.
END-OF-DEFINITION. END-OF-DEFINITION.
DATA: lv_name TYPE string, DATA: lv_name TYPE string,
lt_branches TYPE lcl_git_transport=>ty_branch_list_tt, lt_branches TYPE ty_git_branch_list_tt,
lt_upload TYPE lcl_git_transport=>ty_branch_list_tt. lt_upload TYPE ty_git_branch_list_tt.
lt_branches = lcl_git_transport=>branches( gs_merge-repo->get_url( ) ). lt_branches = lcl_git_transport=>branches( gs_merge-repo->get_url( ) ).

View File

@ -31,7 +31,7 @@ CLASS lcl_popups DEFINITION.
RAISING lcx_exception, RAISING lcx_exception,
branch_list_popup branch_list_popup
IMPORTING iv_url TYPE string IMPORTING iv_url TYPE string
RETURNING VALUE(rs_branch) TYPE lcl_git_transport=>ty_branch_list RETURNING VALUE(rs_branch) TYPE ty_git_branch
RAISING lcx_exception, RAISING lcx_exception,
repo_popup repo_popup
IMPORTING iv_url TYPE string IMPORTING iv_url TYPE string
@ -194,7 +194,7 @@ CLASS lcl_popups IMPLEMENTATION.
METHOD delete_branch. METHOD delete_branch.
DATA: lo_repo TYPE REF TO lcl_repo_online, DATA: lo_repo TYPE REF TO lcl_repo_online,
ls_branch TYPE lcl_git_transport=>ty_branch_list. ls_branch TYPE ty_git_branch.
lo_repo ?= lcl_app=>repo_srv( )->get( iv_key ). lo_repo ?= lcl_app=>repo_srv( )->get( iv_key ).
@ -220,7 +220,7 @@ CLASS lcl_popups IMPLEMENTATION.
METHOD branch_list_popup. METHOD branch_list_popup.
DATA: lt_branches TYPE lcl_git_transport=>ty_branch_list_tt, DATA: lt_branches TYPE ty_git_branch_list_tt,
lv_answer TYPE c LENGTH 1, lv_answer TYPE c LENGTH 1,
lt_selection TYPE TABLE OF spopli. lt_selection TYPE TABLE OF spopli.