mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 04:08:27 +08:00
refactor lcl_persistence_user
This commit is contained in:
parent
83e31a6d35
commit
e6dcd16e66
|
@ -3,7 +3,7 @@ REPORT zabapgit.
|
||||||
* See http://www.abapgit.org
|
* See http://www.abapgit.org
|
||||||
|
|
||||||
CONSTANTS: gc_xml_version TYPE string VALUE 'v1.0.0', "#EC NOTEXT
|
CONSTANTS: gc_xml_version TYPE string VALUE 'v1.0.0', "#EC NOTEXT
|
||||||
gc_abap_version TYPE string VALUE 'v1.4.13'. "#EC NOTEXT
|
gc_abap_version TYPE string VALUE 'v1.4.14'. "#EC NOTEXT
|
||||||
|
|
||||||
********************************************************************************
|
********************************************************************************
|
||||||
* The MIT License (MIT)
|
* The MIT License (MIT)
|
||||||
|
@ -3724,7 +3724,7 @@ CLASS lcl_object_xslt IMPLEMENTATION.
|
||||||
|
|
||||||
mo_files->add_string( iv_extra = 'source'
|
mo_files->add_string( iv_extra = 'source'
|
||||||
iv_ext = 'xml'
|
iv_ext = 'xml'
|
||||||
iv_string = lv_source ) ##NO_TEXT.
|
iv_string = lv_source ).
|
||||||
|
|
||||||
ENDMETHOD. "lif_object~serialize
|
ENDMETHOD. "lif_object~serialize
|
||||||
|
|
||||||
|
@ -4429,7 +4429,7 @@ CLASS lcl_object_iatu IMPLEMENTATION.
|
||||||
ig_data = ls_attr ).
|
ig_data = ls_attr ).
|
||||||
|
|
||||||
mo_files->add_string( iv_ext = 'html'
|
mo_files->add_string( iv_ext = 'html'
|
||||||
iv_string = lv_source ) ##NO_TEXT.
|
iv_string = lv_source ).
|
||||||
|
|
||||||
ENDMETHOD. "lif_object~serialize
|
ENDMETHOD. "lif_object~serialize
|
||||||
|
|
||||||
|
@ -17060,55 +17060,52 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS lcl_persistence_user DEFINITION FINAL.
|
CLASS lcl_persistence_user DEFINITION FINAL.
|
||||||
* todo, refactor this class later? add constructor with
|
|
||||||
* iv_user as importing optional parameter
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
CLASS-METHODS set_username
|
METHODS constructor
|
||||||
IMPORTING iv_user TYPE xubname DEFAULT sy-uname
|
IMPORTING iv_user TYPE xubname DEFAULT sy-uname.
|
||||||
iv_username TYPE string
|
|
||||||
|
METHODS set_username
|
||||||
|
IMPORTING iv_username TYPE string
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
CLASS-METHODS get_username
|
METHODS get_username
|
||||||
IMPORTING iv_user TYPE xubname DEFAULT sy-uname
|
|
||||||
RETURNING VALUE(rv_username) TYPE string
|
RETURNING VALUE(rv_username) TYPE string
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
CLASS-METHODS set_email
|
METHODS set_email
|
||||||
IMPORTING iv_user TYPE xubname DEFAULT sy-uname
|
IMPORTING iv_email TYPE string
|
||||||
iv_email TYPE string
|
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
CLASS-METHODS get_email
|
METHODS get_email
|
||||||
IMPORTING iv_user TYPE xubname DEFAULT sy-uname
|
|
||||||
RETURNING VALUE(rv_email) TYPE string
|
RETURNING VALUE(rv_email) TYPE string
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
CONSTANTS c_type_user TYPE lcl_persistence_db=>ty_type VALUE 'USER'.
|
CONSTANTS c_type_user TYPE lcl_persistence_db=>ty_type VALUE 'USER'.
|
||||||
|
|
||||||
|
DATA: mv_user TYPE xubname.
|
||||||
|
|
||||||
TYPES: BEGIN OF ty_user,
|
TYPES: BEGIN OF ty_user,
|
||||||
username TYPE string,
|
username TYPE string,
|
||||||
email TYPE string,
|
email TYPE string,
|
||||||
END OF ty_user.
|
END OF ty_user.
|
||||||
|
|
||||||
CLASS-METHODS from_xml
|
METHODS from_xml
|
||||||
IMPORTING iv_xml TYPE string
|
IMPORTING iv_xml TYPE string
|
||||||
RETURNING VALUE(rs_user) TYPE ty_user
|
RETURNING VALUE(rs_user) TYPE ty_user
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
CLASS-METHODS to_xml
|
METHODS to_xml
|
||||||
IMPORTING is_user TYPE ty_user
|
IMPORTING is_user TYPE ty_user
|
||||||
RETURNING VALUE(rv_xml) TYPE string.
|
RETURNING VALUE(rv_xml) TYPE string.
|
||||||
|
|
||||||
CLASS-METHODS read
|
METHODS read
|
||||||
IMPORTING iv_user TYPE xubname
|
|
||||||
RETURNING VALUE(rs_user) TYPE ty_user
|
RETURNING VALUE(rs_user) TYPE ty_user
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
CLASS-METHODS update
|
METHODS update
|
||||||
IMPORTING iv_user TYPE xubname
|
IMPORTING is_user TYPE ty_user
|
||||||
is_user TYPE ty_user
|
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
@ -17228,24 +17225,27 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
METHOD popup_comment.
|
METHOD popup_comment.
|
||||||
|
|
||||||
DATA: lv_returncode TYPE c,
|
DATA: lv_returncode TYPE c,
|
||||||
|
lo_user TYPE REF TO lcl_persistence_user,
|
||||||
lt_fields TYPE TABLE OF sval.
|
lt_fields TYPE TABLE OF sval.
|
||||||
|
|
||||||
FIELD-SYMBOLS: <ls_field> LIKE LINE OF lt_fields.
|
FIELD-SYMBOLS: <ls_field> LIKE LINE OF lt_fields.
|
||||||
|
|
||||||
|
|
||||||
|
CREATE OBJECT lo_user.
|
||||||
|
|
||||||
APPEND INITIAL LINE TO lt_fields ASSIGNING <ls_field>.
|
APPEND INITIAL LINE TO lt_fields ASSIGNING <ls_field>.
|
||||||
<ls_field>-tabname = 'BAPIRTEXT'.
|
<ls_field>-tabname = 'BAPIRTEXT'.
|
||||||
<ls_field>-fieldname = 'TEXT'.
|
<ls_field>-fieldname = 'TEXT'.
|
||||||
<ls_field>-fieldtext = 'Username'. "#EC NOTEXT
|
<ls_field>-fieldtext = 'Username'. "#EC NOTEXT
|
||||||
<ls_field>-field_obl = abap_true.
|
<ls_field>-field_obl = abap_true.
|
||||||
<ls_field>-value = lcl_persistence_user=>get_username( ).
|
<ls_field>-value = lo_user->get_username( ).
|
||||||
|
|
||||||
APPEND INITIAL LINE TO lt_fields ASSIGNING <ls_field>.
|
APPEND INITIAL LINE TO lt_fields ASSIGNING <ls_field>.
|
||||||
<ls_field>-tabname = 'BAPIRTEXT1'.
|
<ls_field>-tabname = 'BAPIRTEXT1'.
|
||||||
<ls_field>-fieldname = 'TEXT'.
|
<ls_field>-fieldname = 'TEXT'.
|
||||||
<ls_field>-fieldtext = 'E-Mail'. "#EC NOTEXT
|
<ls_field>-fieldtext = 'E-Mail'. "#EC NOTEXT
|
||||||
<ls_field>-field_obl = abap_true.
|
<ls_field>-field_obl = abap_true.
|
||||||
<ls_field>-value = lcl_persistence_user=>get_email( ).
|
<ls_field>-value = lo_user->get_email( ).
|
||||||
|
|
||||||
APPEND INITIAL LINE TO lt_fields ASSIGNING <ls_field>.
|
APPEND INITIAL LINE TO lt_fields ASSIGNING <ls_field>.
|
||||||
<ls_field>-tabname = 'ABAPTXT255'.
|
<ls_field>-tabname = 'ABAPTXT255'.
|
||||||
|
@ -17275,12 +17275,12 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
READ TABLE lt_fields INDEX 1 ASSIGNING <ls_field>.
|
READ TABLE lt_fields INDEX 1 ASSIGNING <ls_field>.
|
||||||
ASSERT sy-subrc = 0.
|
ASSERT sy-subrc = 0.
|
||||||
rs_comment-username = <ls_field>-value.
|
rs_comment-username = <ls_field>-value.
|
||||||
lcl_persistence_user=>set_username( rs_comment-username ).
|
lo_user->set_username( rs_comment-username ).
|
||||||
|
|
||||||
READ TABLE lt_fields INDEX 2 ASSIGNING <ls_field>.
|
READ TABLE lt_fields INDEX 2 ASSIGNING <ls_field>.
|
||||||
ASSERT sy-subrc = 0.
|
ASSERT sy-subrc = 0.
|
||||||
rs_comment-email = <ls_field>-value.
|
rs_comment-email = <ls_field>-value.
|
||||||
lcl_persistence_user=>set_email( rs_comment-email ).
|
lo_user->set_email( rs_comment-email ).
|
||||||
|
|
||||||
READ TABLE lt_fields INDEX 3 ASSIGNING <ls_field>.
|
READ TABLE lt_fields INDEX 3 ASSIGNING <ls_field>.
|
||||||
ASSERT sy-subrc = 0.
|
ASSERT sy-subrc = 0.
|
||||||
|
@ -18077,7 +18077,7 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
WHEN 'explore'.
|
WHEN 'explore'.
|
||||||
lcl_gui=>show_url( 'http://larshp.github.io/abapGit/explore.html' ).
|
lcl_gui=>show_url( 'http://larshp.github.io/abapGit/explore.html' ).
|
||||||
WHEN 'abapgithome'.
|
WHEN 'abapgithome'.
|
||||||
cl_gui_frontend_services=>execute( document = 'http://www.abapgit.org' ) ##NO_TEXT.
|
cl_gui_frontend_services=>execute( document = 'http://www.abapgit.org' ).
|
||||||
WHEN 'add'.
|
WHEN 'add'.
|
||||||
file_decode( EXPORTING iv_string = iv_getdata
|
file_decode( EXPORTING iv_string = iv_getdata
|
||||||
IMPORTING ev_key = lv_key
|
IMPORTING ev_key = lv_key
|
||||||
|
@ -19376,6 +19376,10 @@ ENDCLASS. "ltcl_dangerous IMPLEMENTATION
|
||||||
|
|
||||||
CLASS lcl_persistence_user IMPLEMENTATION.
|
CLASS lcl_persistence_user IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD constructor.
|
||||||
|
mv_user = iv_user.
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD from_xml.
|
METHOD from_xml.
|
||||||
CALL TRANSFORMATION id
|
CALL TRANSFORMATION id
|
||||||
OPTIONS value_handling = 'accept_data_loss'
|
OPTIONS value_handling = 'accept_data_loss'
|
||||||
|
@ -19400,7 +19404,7 @@ CLASS lcl_persistence_user IMPLEMENTATION.
|
||||||
TRY.
|
TRY.
|
||||||
lv_xml = lo_db->read(
|
lv_xml = lo_db->read(
|
||||||
iv_type = c_type_user
|
iv_type = c_type_user
|
||||||
iv_value = iv_user ).
|
iv_value = mv_user ).
|
||||||
CATCH lcx_not_found.
|
CATCH lcx_not_found.
|
||||||
RETURN.
|
RETURN.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
@ -19421,7 +19425,7 @@ CLASS lcl_persistence_user IMPLEMENTATION.
|
||||||
|
|
||||||
lo_db->modify(
|
lo_db->modify(
|
||||||
iv_type = c_type_user
|
iv_type = c_type_user
|
||||||
iv_value = iv_user
|
iv_value = mv_user
|
||||||
iv_data = lv_xml ).
|
iv_data = lv_xml ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
@ -19431,18 +19435,17 @@ CLASS lcl_persistence_user IMPLEMENTATION.
|
||||||
DATA: ls_user TYPE ty_user.
|
DATA: ls_user TYPE ty_user.
|
||||||
|
|
||||||
|
|
||||||
ls_user = read( iv_user ).
|
ls_user = read( ).
|
||||||
|
|
||||||
ls_user-username = iv_username.
|
ls_user-username = iv_username.
|
||||||
|
|
||||||
update( iv_user = iv_user
|
update( ls_user ).
|
||||||
is_user = ls_user ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD get_username.
|
METHOD get_username.
|
||||||
|
|
||||||
rv_username = read( iv_user )-username.
|
rv_username = read( )-username.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -19451,18 +19454,17 @@ CLASS lcl_persistence_user IMPLEMENTATION.
|
||||||
DATA: ls_user TYPE ty_user.
|
DATA: ls_user TYPE ty_user.
|
||||||
|
|
||||||
|
|
||||||
ls_user = read( iv_user ).
|
ls_user = read( ).
|
||||||
|
|
||||||
ls_user-email = iv_email.
|
ls_user-email = iv_email.
|
||||||
|
|
||||||
update( iv_user = iv_user
|
update( ls_user ).
|
||||||
is_user = ls_user ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD get_email.
|
METHOD get_email.
|
||||||
|
|
||||||
rv_email = read( iv_user )-email.
|
rv_email = read( )-email.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -19768,19 +19770,20 @@ CLASS lcl_persistence_migrate IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD migrate_user.
|
METHOD migrate_user.
|
||||||
|
|
||||||
DATA: lt_users TYPE lcl_user=>ty_user_tt.
|
DATA: lo_user TYPE REF TO lcl_persistence_user,
|
||||||
|
lt_users TYPE lcl_user=>ty_user_tt.
|
||||||
|
|
||||||
FIELD-SYMBOLS: <ls_user> LIKE LINE OF lt_users.
|
FIELD-SYMBOLS: <ls_user> LIKE LINE OF lt_users.
|
||||||
|
|
||||||
|
|
||||||
lt_users = lcl_user=>list( ).
|
lt_users = lcl_user=>list( ).
|
||||||
LOOP AT lt_users ASSIGNING <ls_user>.
|
LOOP AT lt_users ASSIGNING <ls_user>.
|
||||||
lcl_persistence_user=>set_username(
|
CREATE OBJECT lo_user
|
||||||
iv_user = <ls_user>-user
|
EXPORTING
|
||||||
iv_username = <ls_user>-username ).
|
iv_user = <ls_user>-user.
|
||||||
lcl_persistence_user=>set_email(
|
|
||||||
iv_user = <ls_user>-user
|
lo_user->set_username( <ls_user>-username ).
|
||||||
iv_email = <ls_user>-email ).
|
lo_user->set_email( <ls_user>-email ).
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user