mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 20:32:26 +08:00
Merge pull request #455 from sbcgua/master
W3xx v2 serializer, fix for .abapgit state
This commit is contained in:
commit
c3aa440597
|
@ -8,9 +8,11 @@ Legend
|
||||||
+ : added
|
+ : added
|
||||||
- : removed
|
- : removed
|
||||||
|
|
||||||
2016-11-??
|
2016-11-22
|
||||||
------------------
|
------------------
|
||||||
+ supported object list @debugpage
|
+ supported object list @debugpage
|
||||||
|
+ New favorites bar. All repos are displayed in dropdown burger-button. A repo can be "starred" to appear in favbar.
|
||||||
|
! W3xx serialization change (v2.0.0). Now data file is stored as a separate file instead of base64 field in XML.
|
||||||
* Fixed bug in diff page: change counters values
|
* Fixed bug in diff page: change counters values
|
||||||
|
|
||||||
2016-11-12
|
2016-11-12
|
||||||
|
|
|
@ -35,9 +35,12 @@ CLASS lcl_dot_abapgit DEFINITION CREATE PRIVATE FINAL FRIENDS ltcl_dot_abapgit.
|
||||||
* set_starting_folder
|
* set_starting_folder
|
||||||
* IMPORTING iv_path TYPE string,
|
* IMPORTING iv_path TYPE string,
|
||||||
get_master_language
|
get_master_language
|
||||||
RETURNING VALUE(rv_language) TYPE spras.
|
RETURNING VALUE(rv_language) TYPE spras,
|
||||||
* set_master_language
|
* set_master_language
|
||||||
* IMPORTING iv_language TYPE spras.
|
* IMPORTING iv_language TYPE spras.
|
||||||
|
get_signature
|
||||||
|
RETURNING VALUE(rs_signature) TYPE ty_file_signature
|
||||||
|
RAISING lcx_exception.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
TYPES: BEGIN OF ty_dot_abapgit,
|
TYPES: BEGIN OF ty_dot_abapgit,
|
||||||
|
@ -207,4 +210,13 @@ CLASS lcl_dot_abapgit IMPLEMENTATION.
|
||||||
* ms_data-master_language = iv_language.
|
* ms_data-master_language = iv_language.
|
||||||
* ENDMETHOD.
|
* ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD get_signature.
|
||||||
|
|
||||||
|
rs_signature-path = gc_root_dir.
|
||||||
|
rs_signature-filename = gc_dot_abapgit.
|
||||||
|
rs_signature-sha1 = lcl_hash=>sha1( iv_type = gc_type-blob
|
||||||
|
iv_data = serialize( ) ).
|
||||||
|
|
||||||
|
ENDMETHOD. "get_signature
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
|
@ -12,8 +12,26 @@ CLASS lcl_object_w3super DEFINITION INHERITING FROM lcl_objects_super ABSTRACT.
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
INTERFACES lif_object.
|
INTERFACES lif_object.
|
||||||
|
|
||||||
|
TYPES: ty_wwwparams_tt TYPE STANDARD TABLE OF wwwparams WITH DEFAULT KEY.
|
||||||
|
|
||||||
|
METHODS:
|
||||||
|
constructor
|
||||||
|
IMPORTING
|
||||||
|
is_item TYPE ty_item
|
||||||
|
iv_language TYPE spras.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
|
||||||
|
METHODS get_metadata REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS init_key RETURNING VALUE(rs_key) TYPE wwwdatatab.
|
|
||||||
|
DATA ms_key TYPE wwwdatatab.
|
||||||
|
|
||||||
|
METHODS get_ext
|
||||||
|
IMPORTING it_params TYPE ty_wwwparams_tt
|
||||||
|
RETURNING VALUE(rv_ext) TYPE string
|
||||||
|
RAISING lcx_exception.
|
||||||
|
|
||||||
ENDCLASS. "lcl_object_W3SUPER DEFINITION
|
ENDCLASS. "lcl_object_W3SUPER DEFINITION
|
||||||
|
|
||||||
|
@ -24,6 +42,12 @@ ENDCLASS. "lcl_object_W3SUPER DEFINITION
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
CLASS lcl_object_w3super IMPLEMENTATION.
|
CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD constructor.
|
||||||
|
super->constructor( is_item = is_item iv_language = iv_language ).
|
||||||
|
ms_key-relid = ms_item-obj_type+2(2).
|
||||||
|
ms_key-objid = ms_item-obj_name.
|
||||||
|
ENDMETHOD. " constructor.
|
||||||
|
|
||||||
METHOD lif_object~has_changed_since.
|
METHOD lif_object~has_changed_since.
|
||||||
rv_changed = abap_true.
|
rv_changed = abap_true.
|
||||||
ENDMETHOD. "lif_object~has_changed_since
|
ENDMETHOD. "lif_object~has_changed_since
|
||||||
|
@ -32,13 +56,8 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
rv_user = c_user_unknown. " todo
|
rv_user = c_user_unknown. " todo
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD init_key.
|
|
||||||
rs_key-relid = ms_item-obj_type+2(2).
|
|
||||||
rs_key-objid = ms_item-obj_name.
|
|
||||||
ENDMETHOD. " init_key
|
|
||||||
|
|
||||||
METHOD lif_object~jump.
|
METHOD lif_object~jump.
|
||||||
" No idea how to just to SMW0
|
" No idea how to jump to SMW0
|
||||||
lcx_exception=>raise( 'Please go to SMW0 for W3MI object' ).
|
lcx_exception=>raise( 'Please go to SMW0 for W3MI object' ).
|
||||||
ENDMETHOD. "jump
|
ENDMETHOD. "jump
|
||||||
|
|
||||||
|
@ -46,18 +65,17 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
rs_metadata = get_metadata( ).
|
rs_metadata = get_metadata( ).
|
||||||
ENDMETHOD. "lif_object~get_metadata
|
ENDMETHOD. "lif_object~get_metadata
|
||||||
|
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
METHOD get_metadata. "Redefinition
|
||||||
" W3xx EXISTS
|
rs_metadata = super->get_metadata( ).
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
rs_metadata-version = 'v2.0.0'. " Seriazation v2, separate data file
|
||||||
|
ENDMETHOD. " get_metadata. "Redefinition
|
||||||
|
|
||||||
METHOD lif_object~exists.
|
METHOD lif_object~exists.
|
||||||
DATA ls_key TYPE wwwdatatab.
|
|
||||||
|
|
||||||
ls_key = init_key( ).
|
SELECT SINGLE objid INTO ms_key-objid
|
||||||
|
|
||||||
SELECT SINGLE objid INTO ls_key-objid
|
|
||||||
FROM wwwdata
|
FROM wwwdata
|
||||||
WHERE relid = ls_key-relid
|
WHERE relid = ms_key-relid
|
||||||
AND objid = ls_key-objid
|
AND objid = ms_key-objid
|
||||||
AND srtf2 = 0.
|
AND srtf2 = 0.
|
||||||
|
|
||||||
IF sy-subrc IS NOT INITIAL.
|
IF sy-subrc IS NOT INITIAL.
|
||||||
|
@ -68,26 +86,19 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD. "lif_object~exists
|
ENDMETHOD. "lif_object~exists
|
||||||
|
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
" W3xx SERIALIZE
|
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
METHOD lif_object~serialize.
|
METHOD lif_object~serialize.
|
||||||
DATA ls_key TYPE wwwdatatab.
|
|
||||||
DATA lt_w3mime TYPE STANDARD TABLE OF w3mime.
|
DATA lt_w3mime TYPE STANDARD TABLE OF w3mime.
|
||||||
DATA lt_w3html TYPE STANDARD TABLE OF w3html.
|
DATA lt_w3html TYPE STANDARD TABLE OF w3html.
|
||||||
DATA lt_w3params TYPE STANDARD TABLE OF wwwparams.
|
DATA lt_w3params TYPE STANDARD TABLE OF wwwparams.
|
||||||
DATA lv_xstring TYPE xstring.
|
DATA lv_xstring TYPE xstring.
|
||||||
DATA ls_wwwparam LIKE LINE OF lt_w3params.
|
DATA ls_wwwparam LIKE LINE OF lt_w3params.
|
||||||
DATA lv_size TYPE int4.
|
DATA lv_size TYPE int4.
|
||||||
DATA lv_base64str TYPE string.
|
|
||||||
DATA lo_utility TYPE REF TO cl_http_utility.
|
|
||||||
|
|
||||||
ls_key = init_key( ).
|
SELECT SINGLE * INTO CORRESPONDING FIELDS OF ms_key
|
||||||
|
|
||||||
SELECT SINGLE * INTO CORRESPONDING FIELDS OF ls_key
|
|
||||||
FROM wwwdata
|
FROM wwwdata
|
||||||
WHERE relid = ls_key-relid
|
WHERE relid = ms_key-relid
|
||||||
AND objid = ls_key-objid
|
AND objid = ms_key-objid
|
||||||
AND srtf2 = 0.
|
AND srtf2 = 0.
|
||||||
|
|
||||||
IF sy-subrc IS NOT INITIAL.
|
IF sy-subrc IS NOT INITIAL.
|
||||||
|
@ -96,7 +107,7 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
|
|
||||||
CALL FUNCTION 'WWWDATA_IMPORT'
|
CALL FUNCTION 'WWWDATA_IMPORT'
|
||||||
EXPORTING
|
EXPORTING
|
||||||
key = ls_key
|
key = ms_key
|
||||||
TABLES
|
TABLES
|
||||||
mime = lt_w3mime
|
mime = lt_w3mime
|
||||||
html = lt_w3html
|
html = lt_w3html
|
||||||
|
@ -110,8 +121,8 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
|
|
||||||
CALL FUNCTION 'WWWPARAMS_READ_ALL'
|
CALL FUNCTION 'WWWPARAMS_READ_ALL'
|
||||||
EXPORTING
|
EXPORTING
|
||||||
type = ls_key-relid
|
type = ms_key-relid
|
||||||
objid = ls_key-objid
|
objid = ms_key-objid
|
||||||
TABLES
|
TABLES
|
||||||
params = lt_w3params
|
params = lt_w3params
|
||||||
EXCEPTIONS
|
EXCEPTIONS
|
||||||
|
@ -128,7 +139,7 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
|
|
||||||
lv_size = ls_wwwparam-value.
|
lv_size = ls_wwwparam-value.
|
||||||
|
|
||||||
CASE ls_key-relid.
|
CASE ms_key-relid.
|
||||||
WHEN 'MI'.
|
WHEN 'MI'.
|
||||||
CALL FUNCTION 'SCMS_BINARY_TO_XSTRING'
|
CALL FUNCTION 'SCMS_BINARY_TO_XSTRING'
|
||||||
EXPORTING
|
EXPORTING
|
||||||
|
@ -155,53 +166,54 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
lcx_exception=>raise( 'Cannot convert W3xx to xstring' ).
|
lcx_exception=>raise( 'Cannot convert W3xx to xstring' ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
CREATE OBJECT lo_utility.
|
|
||||||
lv_base64str = lo_utility->encode_x_base64( lv_xstring ).
|
|
||||||
|
|
||||||
io_xml->add( iv_name = 'NAME'
|
io_xml->add( iv_name = 'NAME'
|
||||||
ig_data = ls_key-objid ).
|
ig_data = ms_key-objid ).
|
||||||
|
|
||||||
io_xml->add( iv_name = 'TEXT'
|
io_xml->add( iv_name = 'TEXT'
|
||||||
ig_data = ls_key-text ).
|
ig_data = ms_key-text ).
|
||||||
|
|
||||||
io_xml->add( iv_name = 'DATA'
|
|
||||||
ig_data = lv_base64str ).
|
|
||||||
|
|
||||||
io_xml->add( iv_name = 'PARAMS'
|
io_xml->add( iv_name = 'PARAMS'
|
||||||
ig_data = lt_w3params ).
|
ig_data = lt_w3params ).
|
||||||
|
|
||||||
|
" Seriazation v2, separate data file. 'extra' added to prevent conflict with .xml
|
||||||
|
lif_object~mo_files->add_raw( iv_data = lv_xstring
|
||||||
|
iv_extra = 'data'
|
||||||
|
iv_ext = get_ext( lt_w3params ) ).
|
||||||
|
|
||||||
ENDMETHOD. "serialize
|
ENDMETHOD. "serialize
|
||||||
|
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
" W3xx DESERIALIZE
|
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
METHOD lif_object~deserialize.
|
METHOD lif_object~deserialize.
|
||||||
|
|
||||||
DATA ls_key TYPE wwwdatatab.
|
|
||||||
DATA lv_base64str TYPE string.
|
DATA lv_base64str TYPE string.
|
||||||
DATA lt_w3params TYPE STANDARD TABLE OF wwwparams.
|
DATA lt_w3params TYPE STANDARD TABLE OF wwwparams.
|
||||||
DATA lv_xstring TYPE xstring.
|
DATA lv_xstring TYPE xstring.
|
||||||
DATA lo_utility TYPE REF TO cl_http_utility.
|
|
||||||
DATA lt_w3mime TYPE STANDARD TABLE OF w3mime.
|
DATA lt_w3mime TYPE STANDARD TABLE OF w3mime.
|
||||||
DATA lt_w3html TYPE STANDARD TABLE OF w3html.
|
DATA lt_w3html TYPE STANDARD TABLE OF w3html.
|
||||||
DATA lv_size TYPE int4.
|
DATA lv_size TYPE int4.
|
||||||
DATA lv_tadir_obj TYPE tadir-object.
|
DATA lv_tadir_obj TYPE tadir-object.
|
||||||
|
|
||||||
ls_key = init_key( ).
|
|
||||||
|
|
||||||
io_xml->read( EXPORTING iv_name = 'TEXT'
|
io_xml->read( EXPORTING iv_name = 'TEXT'
|
||||||
CHANGING cg_data = ls_key-text ).
|
CHANGING cg_data = ms_key-text ).
|
||||||
|
|
||||||
io_xml->read( EXPORTING iv_name = 'DATA'
|
|
||||||
CHANGING cg_data = lv_base64str ).
|
|
||||||
|
|
||||||
io_xml->read( EXPORTING iv_name = 'PARAMS'
|
io_xml->read( EXPORTING iv_name = 'PARAMS'
|
||||||
CHANGING cg_data = lt_w3params ).
|
CHANGING cg_data = lt_w3params ).
|
||||||
|
|
||||||
CREATE OBJECT lo_utility.
|
CASE io_xml->get_metadata( )-version.
|
||||||
lv_xstring = lo_utility->decode_x_base64( lv_base64str ).
|
WHEN 'v1.0.0'.
|
||||||
|
io_xml->read( EXPORTING iv_name = 'DATA'
|
||||||
|
CHANGING cg_data = lv_base64str ).
|
||||||
|
lv_xstring = cl_http_utility=>decode_x_base64( lv_base64str ).
|
||||||
|
WHEN 'v2.0.0'.
|
||||||
|
lv_xstring = lif_object~mo_files->read_raw( iv_extra = 'data'
|
||||||
|
iv_ext = get_ext( lt_w3params ) ).
|
||||||
|
WHEN OTHERS.
|
||||||
|
lcx_exception=>raise( 'W3xx: Unknown serializer version' ).
|
||||||
|
|
||||||
CASE ls_key-relid.
|
ENDCASE.
|
||||||
|
|
||||||
|
|
||||||
|
CASE ms_key-relid.
|
||||||
WHEN 'MI'.
|
WHEN 'MI'.
|
||||||
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
|
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
|
||||||
EXPORTING
|
EXPORTING
|
||||||
|
@ -248,14 +260,14 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
lcx_exception=>raise( 'Cannot update W3xx params' ).
|
lcx_exception=>raise( 'Cannot update W3xx params' ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ls_key-tdate = sy-datum.
|
ms_key-tdate = sy-datum.
|
||||||
ls_key-ttime = sy-uzeit.
|
ms_key-ttime = sy-uzeit.
|
||||||
ls_key-chname = sy-uname.
|
ms_key-chname = sy-uname.
|
||||||
ls_key-devclass = iv_package.
|
ms_key-devclass = iv_package.
|
||||||
|
|
||||||
CALL FUNCTION 'WWWDATA_EXPORT'
|
CALL FUNCTION 'WWWDATA_EXPORT'
|
||||||
EXPORTING
|
EXPORTING
|
||||||
key = ls_key
|
key = ms_key
|
||||||
TABLES
|
TABLES
|
||||||
mime = lt_w3mime
|
mime = lt_w3mime
|
||||||
html = lt_w3html
|
html = lt_w3html
|
||||||
|
@ -267,14 +279,14 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
lcx_exception=>raise( 'Cannot upload W3xx data' ).
|
lcx_exception=>raise( 'Cannot upload W3xx data' ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
CONCATENATE 'W3' ls_key-relid INTO lv_tadir_obj.
|
CONCATENATE 'W3' ms_key-relid INTO lv_tadir_obj.
|
||||||
|
|
||||||
CALL FUNCTION 'TR_TADIR_INTERFACE'
|
CALL FUNCTION 'TR_TADIR_INTERFACE'
|
||||||
EXPORTING
|
EXPORTING
|
||||||
wi_tadir_pgmid = 'R3TR'
|
wi_tadir_pgmid = 'R3TR'
|
||||||
wi_tadir_object = lv_tadir_obj
|
wi_tadir_object = lv_tadir_obj
|
||||||
wi_tadir_devclass = iv_package
|
wi_tadir_devclass = iv_package
|
||||||
wi_tadir_obj_name = ls_key-objid
|
wi_tadir_obj_name = ms_key-objid
|
||||||
wi_test_modus = space
|
wi_test_modus = space
|
||||||
EXCEPTIONS
|
EXCEPTIONS
|
||||||
tadir_entry_not_existing = 1
|
tadir_entry_not_existing = 1
|
||||||
|
@ -309,17 +321,11 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD. "lif_object~deserialize
|
ENDMETHOD. "lif_object~deserialize
|
||||||
|
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
" W3xx DELETE
|
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
METHOD lif_object~delete.
|
METHOD lif_object~delete.
|
||||||
DATA ls_key TYPE wwwdatatab.
|
|
||||||
|
|
||||||
ls_key = init_key( ).
|
|
||||||
|
|
||||||
CALL FUNCTION 'WWWDATA_DELETE'
|
CALL FUNCTION 'WWWDATA_DELETE'
|
||||||
EXPORTING
|
EXPORTING
|
||||||
key = ls_key
|
key = ms_key
|
||||||
EXCEPTIONS
|
EXCEPTIONS
|
||||||
wrong_object_type = 1
|
wrong_object_type = 1
|
||||||
delete_error = 2.
|
delete_error = 2.
|
||||||
|
@ -330,7 +336,7 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
|
|
||||||
CALL FUNCTION 'WWWPARAMS_DELETE_ALL'
|
CALL FUNCTION 'WWWPARAMS_DELETE_ALL'
|
||||||
EXPORTING
|
EXPORTING
|
||||||
key = ls_key
|
key = ms_key
|
||||||
EXCEPTIONS
|
EXCEPTIONS
|
||||||
delete_error = 1.
|
delete_error = 1.
|
||||||
|
|
||||||
|
@ -340,6 +346,21 @@ CLASS lcl_object_w3super IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD. "lif_object~delete
|
ENDMETHOD. "lif_object~delete
|
||||||
|
|
||||||
|
METHOD get_ext.
|
||||||
|
|
||||||
|
FIELD-SYMBOLS <param> LIKE LINE OF it_params.
|
||||||
|
|
||||||
|
READ TABLE it_params ASSIGNING <param> WITH KEY name = 'fileextension'.
|
||||||
|
|
||||||
|
IF sy-subrc > 0.
|
||||||
|
lcx_exception=>raise( |W3xx: Cannot find file ext for { ms_key-objid }| ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
rv_ext = <param>-value.
|
||||||
|
SHIFT rv_ext LEFT DELETING LEADING '.'.
|
||||||
|
|
||||||
|
ENDMETHOD. " get_ext.
|
||||||
|
|
||||||
ENDCLASS. "lcl_object_W3SUPER IMPLEMENTATION
|
ENDCLASS. "lcl_object_W3SUPER IMPLEMENTATION
|
||||||
|
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
|
|
|
@ -230,6 +230,16 @@ CLASS lcl_objects_files DEFINITION FINAL.
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
add
|
add
|
||||||
IMPORTING is_file TYPE ty_file,
|
IMPORTING is_file TYPE ty_file,
|
||||||
|
add_raw
|
||||||
|
IMPORTING iv_extra TYPE clike OPTIONAL
|
||||||
|
iv_ext TYPE string
|
||||||
|
iv_data TYPE xstring
|
||||||
|
RAISING lcx_exception,
|
||||||
|
read_raw
|
||||||
|
IMPORTING iv_extra TYPE clike OPTIONAL
|
||||||
|
iv_ext TYPE string
|
||||||
|
RETURNING VALUE(rv_data) TYPE xstring
|
||||||
|
RAISING lcx_exception,
|
||||||
get_files
|
get_files
|
||||||
RETURNING VALUE(rt_files) TYPE ty_files_tt,
|
RETURNING VALUE(rt_files) TYPE ty_files_tt,
|
||||||
set_files
|
set_files
|
||||||
|
@ -501,6 +511,32 @@ CLASS lcl_objects_files IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD. " read_file.
|
ENDMETHOD. " read_file.
|
||||||
|
|
||||||
|
METHOD add_raw.
|
||||||
|
|
||||||
|
DATA: ls_file TYPE ty_file.
|
||||||
|
|
||||||
|
ls_file-path = '/'.
|
||||||
|
ls_file-data = iv_data.
|
||||||
|
ls_file-filename = filename( iv_extra = iv_extra
|
||||||
|
iv_ext = iv_ext ).
|
||||||
|
|
||||||
|
APPEND ls_file TO mt_files.
|
||||||
|
|
||||||
|
ENDMETHOD. "add_raw
|
||||||
|
|
||||||
|
METHOD read_raw.
|
||||||
|
|
||||||
|
DATA: lv_filename TYPE string,
|
||||||
|
lv_data TYPE xstring.
|
||||||
|
|
||||||
|
lv_filename = filename( iv_extra = iv_extra
|
||||||
|
iv_ext = iv_ext ).
|
||||||
|
|
||||||
|
read_file( EXPORTING iv_filename = lv_filename
|
||||||
|
IMPORTING ev_data = rv_data ).
|
||||||
|
|
||||||
|
ENDMETHOD. "read_raw
|
||||||
|
|
||||||
ENDCLASS. "lcl_objects_files IMPLEMENTATION
|
ENDCLASS. "lcl_objects_files IMPLEMENTATION
|
||||||
|
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
|
|
|
@ -260,12 +260,15 @@ CLASS lcl_repo_online IMPLEMENTATION.
|
||||||
lt_local = get_files_local( ).
|
lt_local = get_files_local( ).
|
||||||
lv_branch_equal = boolc( get_sha1_remote( ) = get_sha1_local( ) ).
|
lv_branch_equal = boolc( get_sha1_remote( ) = get_sha1_local( ) ).
|
||||||
|
|
||||||
DELETE lt_local WHERE item IS INITIAL.
|
DELETE lt_local " Remove non-code related files except .abapgit
|
||||||
|
WHERE item IS INITIAL
|
||||||
|
AND NOT ( file-path = gc_root_dir AND file-filename = gc_dot_abapgit ).
|
||||||
|
|
||||||
SORT lt_local BY item.
|
SORT lt_local BY item.
|
||||||
SORT lt_remote BY path filename.
|
SORT lt_remote BY path filename.
|
||||||
|
|
||||||
LOOP AT lt_local ASSIGNING <ls_local>.
|
LOOP AT lt_local ASSIGNING <ls_local>.
|
||||||
IF ls_last_item <> <ls_local>-item. " New item reached ?
|
IF ls_last_item <> <ls_local>-item OR sy-tabix = 1. " First or New item reached ?
|
||||||
APPEND INITIAL LINE TO lt_checksums ASSIGNING <ls_checksum>.
|
APPEND INITIAL LINE TO lt_checksums ASSIGNING <ls_checksum>.
|
||||||
<ls_checksum>-item = <ls_local>-item.
|
<ls_checksum>-item = <ls_local>-item.
|
||||||
ls_last_item = <ls_local>-item.
|
ls_last_item = <ls_local>-item.
|
||||||
|
@ -472,6 +475,7 @@ CLASS lcl_repo IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
lt_updated_files = lcl_objects=>deserialize( me ).
|
lt_updated_files = lcl_objects=>deserialize( me ).
|
||||||
|
APPEND mo_dot_abapgit->get_signature( ) TO lt_updated_files.
|
||||||
|
|
||||||
CLEAR: mt_local, mv_last_serialization.
|
CLEAR: mt_local, mv_last_serialization.
|
||||||
|
|
||||||
|
|
|
@ -1792,6 +1792,7 @@ CLASS ltcl_path IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS. "ltcl_path
|
ENDCLASS. "ltcl_path
|
||||||
|
|
||||||
CLASS ltcl_file_status DEFINITION
|
CLASS ltcl_file_status DEFINITION
|
||||||
|
|
|
@ -86,7 +86,7 @@ CLASS lcl_xml IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
* buffer serializer metadata. Git node will be removed lateron
|
* buffer serializer metadata. Git node will be removed lateron
|
||||||
ms_metadata-class = li_element->get_attribute_ns( c_attr_serializer ).
|
ms_metadata-class = li_element->get_attribute_ns( c_attr_serializer ).
|
||||||
ms_metadata-version = li_element->get_attribute_ns( c_attr_serializer_version ).
|
ms_metadata-version = li_element->get_attribute_ns( c_attr_serializer_version ).
|
||||||
|
|
||||||
ENDMETHOD. "parse
|
ENDMETHOD. "parse
|
||||||
|
|
Loading…
Reference in New Issue
Block a user