W3xx condense filesize param #374

This commit is contained in:
sbcgua 2016-11-27 13:24:15 +02:00
parent 6defda4b52
commit c70bedd6ad
3 changed files with 14 additions and 15 deletions

View File

@ -21,7 +21,7 @@
<RELID>MI</RELID> <RELID>MI</RELID>
<OBJID>ZABAPGIT_CSS_COMMON</OBJID> <OBJID>ZABAPGIT_CSS_COMMON</OBJID>
<NAME>filesize</NAME> <NAME>filesize</NAME>
<VALUE> 12136</VALUE> <VALUE>12136</VALUE>
</WWWPARAMS> </WWWPARAMS>
<WWWPARAMS> <WWWPARAMS>
<RELID>MI</RELID> <RELID>MI</RELID>

View File

@ -21,7 +21,7 @@
<RELID>MI</RELID> <RELID>MI</RELID>
<OBJID>ZABAPGIT_JS_COMMON</OBJID> <OBJID>ZABAPGIT_JS_COMMON</OBJID>
<NAME>filesize</NAME> <NAME>filesize</NAME>
<VALUE> 6500</VALUE> <VALUE>6500</VALUE>
</WWWPARAMS> </WWWPARAMS>
<WWWPARAMS> <WWWPARAMS>
<RELID>MI</RELID> <RELID>MI</RELID>

View File

@ -34,8 +34,9 @@ CLASS lcl_object_w3super DEFINITION INHERITING FROM lcl_objects_super ABSTRACT.
RAISING lcx_exception. RAISING lcx_exception.
METHODS patch_size METHODS patch_size
IMPORTING iv_size TYPE i IMPORTING iv_size TYPE i OPTIONAL " Overwrite if given
CHANGING ct_params TYPE ty_wwwparams_tt EXPORTING ev_size TYPE i " Return size as integer
CHANGING ct_params TYPE ty_wwwparams_tt " Param table to patch
RAISING lcx_exception. RAISING lcx_exception.
METHODS patch_filename METHODS patch_filename
@ -101,7 +102,6 @@ CLASS lcl_object_w3super IMPLEMENTATION.
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 lv_size TYPE int4. DATA lv_size TYPE int4.
SELECT SINGLE * INTO CORRESPONDING FIELDS OF ms_key SELECT SINGLE * INTO CORRESPONDING FIELDS OF ms_key
@ -141,12 +141,9 @@ CLASS lcl_object_w3super IMPLEMENTATION.
lcx_exception=>raise( 'Cannot read W3xx data' ). lcx_exception=>raise( 'Cannot read W3xx data' ).
ENDIF. ENDIF.
READ TABLE lt_w3params INTO ls_wwwparam WITH KEY name = 'filesize' ##NO_TEXT. " Condense size string + get size to local integer
IF sy-subrc IS NOT INITIAL. patch_size( IMPORTING ev_size = lv_size
lcx_exception=>raise( 'Cannot read W3xx filesize' ). CHANGING ct_params = lt_w3params ).
ENDIF.
lv_size = ls_wwwparam-value.
" Remove file path (for security concerns) " Remove file path (for security concerns)
patch_filename( CHANGING ct_params = lt_w3params ). patch_filename( CHANGING ct_params = lt_w3params ).
@ -221,10 +218,8 @@ CLASS lcl_object_w3super IMPLEMENTATION.
iv_ext = get_ext( lt_w3params ) ). iv_ext = get_ext( lt_w3params ) ).
WHEN OTHERS. WHEN OTHERS.
lcx_exception=>raise( 'W3xx: Unknown serializer version' ). lcx_exception=>raise( 'W3xx: Unknown serializer version' ).
ENDCASE. ENDCASE.
CASE ms_key-relid. CASE ms_key-relid.
WHEN 'MI'. WHEN 'MI'.
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY' CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
@ -389,8 +384,12 @@ CLASS lcl_object_w3super IMPLEMENTATION.
lcx_exception=>raise( |W3xx: Cannot find file size for { ms_key-objid }| ). lcx_exception=>raise( |W3xx: Cannot find file size for { ms_key-objid }| ).
ENDIF. ENDIF.
<param>-value = iv_size. IF iv_size IS NOT INITIAL.
SHIFT <param>-value LEFT DELETING LEADING space. <param>-value = iv_size.
ENDIF.
CONDENSE <param>-value.
ev_size = <param>-value.
ENDMETHOD. " patch_size. ENDMETHOD. " patch_size.