mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 04:08:27 +08:00
commit
e1f99883ec
|
@ -2,9 +2,6 @@ REPORT zabapgit LINE-SIZE 100.
|
||||||
|
|
||||||
* See http://www.abapgit.org
|
* See http://www.abapgit.org
|
||||||
|
|
||||||
CONSTANTS: gc_xml_version TYPE string VALUE 'v1.0.0', "#EC NOTEXT
|
|
||||||
gc_abap_version TYPE string VALUE 'v1.37.2'. "#EC NOTEXT
|
|
||||||
|
|
||||||
********************************************************************************
|
********************************************************************************
|
||||||
* The MIT License (MIT)
|
* The MIT License (MIT)
|
||||||
*
|
*
|
||||||
|
|
|
@ -6,6 +6,9 @@ TYPE-POOLS seop.
|
||||||
|
|
||||||
INTERFACE lif_defs.
|
INTERFACE lif_defs.
|
||||||
|
|
||||||
|
CONSTANTS: gc_xml_version TYPE string VALUE 'v1.0.0', "#EC NOTEXT
|
||||||
|
gc_abap_version TYPE string VALUE 'v1.37.2'. "#EC NOTEXT
|
||||||
|
|
||||||
TYPES: ty_type TYPE c LENGTH 6,
|
TYPES: ty_type TYPE c LENGTH 6,
|
||||||
ty_bitbyte TYPE c LENGTH 8,
|
ty_bitbyte TYPE c LENGTH 8,
|
||||||
ty_sha1 TYPE c LENGTH 40.
|
ty_sha1 TYPE c LENGTH 40.
|
||||||
|
|
|
@ -408,7 +408,7 @@ CLASS lcl_http IMPLEMENTATION.
|
||||||
METHOD get_agent.
|
METHOD get_agent.
|
||||||
|
|
||||||
* bitbucket require agent prefix = "git/"
|
* bitbucket require agent prefix = "git/"
|
||||||
rv_agent = 'git/abapGit-' && gc_abap_version.
|
rv_agent = 'git/abapGit-' && lif_defs=>gc_abap_version.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
|
@ -121,7 +121,7 @@ CLASS lcl_news IMPLEMENTATION.
|
||||||
CREATE OBJECT ro_instance
|
CREATE OBJECT ro_instance
|
||||||
EXPORTING
|
EXPORTING
|
||||||
iv_rawdata = <file>-data
|
iv_rawdata = <file>-data
|
||||||
iv_current_version = gc_abap_version " TODO refactor
|
iv_current_version = lif_defs=>gc_abap_version " TODO refactor
|
||||||
iv_lastseen_version = normalize_version( lv_last_seen ).
|
iv_lastseen_version = normalize_version( lv_last_seen ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
|
|
@ -119,7 +119,7 @@ CLASS lcl_gui_page IMPLEMENTATION.
|
||||||
ro_html->add( '<table class="w100"><tr>' ). "#EC NOTEXT
|
ro_html->add( '<table class="w100"><tr>' ). "#EC NOTEXT
|
||||||
|
|
||||||
ro_html->add( '<td class="w40"></td>' ). "#EC NOTEXT
|
ro_html->add( '<td class="w40"></td>' ). "#EC NOTEXT
|
||||||
ro_html->add( |<td><span class="version">{ gc_abap_version }</span></td>| ). "#EC NOTEXT
|
ro_html->add( |<td><span class="version">{ lif_defs=>gc_abap_version }</span></td>| ). "#EC NOTEXT
|
||||||
ro_html->add( '<td id="debug-output" class="w40"></td>' ). "#EC NOTEXT
|
ro_html->add( '<td id="debug-output" class="w40"></td>' ). "#EC NOTEXT
|
||||||
|
|
||||||
ro_html->add( '</tr></table>' ). "#EC NOTEXT
|
ro_html->add( '</tr></table>' ). "#EC NOTEXT
|
||||||
|
|
|
@ -55,8 +55,8 @@ CLASS lcl_gui_page_debuginfo IMPLEMENTATION.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( |<p>abapGit version: { gc_abap_version }</p>| ).
|
ro_html->add( |<p>abapGit version: { lif_defs=>gc_abap_version }</p>| ).
|
||||||
ro_html->add( |<p>XML version: { gc_xml_version }</p>| ).
|
ro_html->add( |<p>XML version: { lif_defs=>gc_xml_version }</p>| ).
|
||||||
ro_html->add( |<p>GUI version: { lv_gui_version }</p>| ).
|
ro_html->add( |<p>GUI version: { lv_gui_version }</p>| ).
|
||||||
ro_html->add( |<p>LCL_TIME: { lcl_time=>get( ) }</p>| ).
|
ro_html->add( |<p>LCL_TIME: { lcl_time=>get( ) }</p>| ).
|
||||||
ro_html->add( |<p>SY time: { sy-datum } { sy-uzeit } { sy-tzone }</p>| ).
|
ro_html->add( |<p>SY time: { sy-datum } { sy-uzeit } { sy-tzone }</p>| ).
|
||||||
|
|
|
@ -62,17 +62,6 @@ CLASS lcl_repo_content_list DEFINITION FINAL.
|
||||||
|
|
||||||
ENDCLASS. "lcl_repo_content_browser
|
ENDCLASS. "lcl_repo_content_browser
|
||||||
|
|
||||||
DEFINE _reduce_state.
|
|
||||||
" &1 - prev, &2 - cur
|
|
||||||
IF &1 = &2 OR &2 IS INITIAL.
|
|
||||||
ASSERT 1 = 1. " No change
|
|
||||||
ELSEIF &1 IS INITIAL.
|
|
||||||
&1 = &2.
|
|
||||||
ELSE.
|
|
||||||
&1 = lif_defs=>gc_state-mixed.
|
|
||||||
ENDIF.
|
|
||||||
END-OF-DEFINITION.
|
|
||||||
|
|
||||||
CLASS lcl_repo_content_list IMPLEMENTATION.
|
CLASS lcl_repo_content_list IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
@ -146,8 +135,11 @@ CLASS lcl_repo_content_list IMPLEMENTATION.
|
||||||
ENDAT.
|
ENDAT.
|
||||||
|
|
||||||
ls_folder-changes = ls_folder-changes + <item>-changes.
|
ls_folder-changes = ls_folder-changes + <item>-changes.
|
||||||
_reduce_state ls_folder-lstate <item>-lstate.
|
|
||||||
_reduce_state ls_folder-rstate <item>-rstate.
|
lcl_state=>reduce( EXPORTING iv_cur = <item>-lstate
|
||||||
|
CHANGING cv_prev = ls_folder-lstate ).
|
||||||
|
lcl_state=>reduce( EXPORTING iv_cur = <item>-rstate
|
||||||
|
CHANGING cv_prev = ls_folder-rstate ).
|
||||||
|
|
||||||
AT END OF path.
|
AT END OF path.
|
||||||
APPEND ls_folder TO ct_repo_items.
|
APPEND ls_folder TO ct_repo_items.
|
||||||
|
@ -229,8 +221,11 @@ CLASS lcl_repo_content_list IMPLEMENTATION.
|
||||||
IF ls_file-is_changed = abap_true.
|
IF ls_file-is_changed = abap_true.
|
||||||
<ls_repo_item>-sortkey = c_sortkey-changed. " Changed files
|
<ls_repo_item>-sortkey = c_sortkey-changed. " Changed files
|
||||||
<ls_repo_item>-changes = <ls_repo_item>-changes + 1.
|
<ls_repo_item>-changes = <ls_repo_item>-changes + 1.
|
||||||
_reduce_state <ls_repo_item>-lstate ls_file-lstate.
|
|
||||||
_reduce_state <ls_repo_item>-rstate ls_file-rstate.
|
lcl_state=>reduce( EXPORTING iv_cur = ls_file-lstate
|
||||||
|
CHANGING cv_prev = <ls_repo_item>-lstate ).
|
||||||
|
lcl_state=>reduce( EXPORTING iv_cur = <ls_repo_item>-rstate
|
||||||
|
CHANGING cv_prev = ls_file-rstate ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,35 @@
|
||||||
*& Include ZABAPGIT_UTIL
|
*& Include ZABAPGIT_UTIL
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
|
CLASS lcl_state DEFINITION.
|
||||||
|
|
||||||
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
CLASS-METHODS:
|
||||||
|
reduce
|
||||||
|
IMPORTING
|
||||||
|
iv_cur TYPE char1
|
||||||
|
CHANGING
|
||||||
|
cv_prev TYPE char1.
|
||||||
|
|
||||||
|
ENDCLASS.
|
||||||
|
|
||||||
|
CLASS lcl_state IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD reduce.
|
||||||
|
|
||||||
|
IF cv_prev = iv_cur OR iv_cur IS INITIAL.
|
||||||
|
RETURN. " No change
|
||||||
|
ELSEIF cv_prev IS INITIAL.
|
||||||
|
cv_prev = iv_cur.
|
||||||
|
ELSE.
|
||||||
|
cv_prev = lif_defs=>gc_state-mixed.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
ENDCLASS.
|
||||||
|
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
* CLASS lcl_time DEFINITION
|
* CLASS lcl_time DEFINITION
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
|
|
|
@ -151,8 +151,10 @@ CLASS lcl_gui_view_repo IMPLEMENTATION.
|
||||||
iv_changes_only = mv_changes_only ).
|
iv_changes_only = mv_changes_only ).
|
||||||
|
|
||||||
LOOP AT lt_repo_items ASSIGNING <ls_item>.
|
LOOP AT lt_repo_items ASSIGNING <ls_item>.
|
||||||
_reduce_state lv_lstate <ls_item>-lstate.
|
lcl_state=>reduce( EXPORTING iv_cur = <ls_item>-lstate
|
||||||
_reduce_state lv_rstate <ls_item>-rstate.
|
CHANGING cv_prev = lv_lstate ).
|
||||||
|
lcl_state=>reduce( EXPORTING iv_cur = <ls_item>-rstate
|
||||||
|
CHANGING cv_prev = lv_rstate ).
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ro_html->add( render_head_line( iv_lstate = lv_lstate
|
ro_html->add( render_head_line( iv_lstate = lv_lstate
|
||||||
|
|
|
@ -81,7 +81,7 @@ CLASS lcl_xml IMPLEMENTATION.
|
||||||
li_element = mi_xml_doc->find_from_name_ns( depth = 0 name = c_abapgit_tag ).
|
li_element = mi_xml_doc->find_from_name_ns( depth = 0 name = c_abapgit_tag ).
|
||||||
li_version = li_element->if_ixml_node~get_attributes(
|
li_version = li_element->if_ixml_node~get_attributes(
|
||||||
)->get_named_item_ns( c_attr_version ) ##no_text.
|
)->get_named_item_ns( c_attr_version ) ##no_text.
|
||||||
IF li_version->get_value( ) <> gc_xml_version.
|
IF li_version->get_value( ) <> lif_defs=>gc_xml_version.
|
||||||
display_xml_error( ).
|
display_xml_error( ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -96,7 +96,7 @@ CLASS lcl_xml IMPLEMENTATION.
|
||||||
DATA: lv_version TYPE string.
|
DATA: lv_version TYPE string.
|
||||||
|
|
||||||
|
|
||||||
lv_version = |abapGit version: { gc_abap_version }|.
|
lv_version = |abapGit version: { lif_defs=>gc_abap_version }|.
|
||||||
|
|
||||||
CALL FUNCTION 'POPUP_TO_INFORM'
|
CALL FUNCTION 'POPUP_TO_INFORM'
|
||||||
EXPORTING
|
EXPORTING
|
||||||
|
@ -270,7 +270,7 @@ CLASS lcl_xml_output IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
li_git = mi_xml_doc->create_element( c_abapgit_tag ).
|
li_git = mi_xml_doc->create_element( c_abapgit_tag ).
|
||||||
li_git->set_attribute( name = c_attr_version value = gc_xml_version ).
|
li_git->set_attribute( name = c_attr_version value = lif_defs=>gc_xml_version ).
|
||||||
IF NOT is_metadata IS INITIAL.
|
IF NOT is_metadata IS INITIAL.
|
||||||
li_git->set_attribute( name = c_attr_serializer
|
li_git->set_attribute( name = c_attr_serializer
|
||||||
value = is_metadata-class ).
|
value = is_metadata-class ).
|
||||||
|
|
Loading…
Reference in New Issue
Block a user