mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 04:08:27 +08:00
Merge pull request #1037 from mkaesemann/settingsBuffer
Possible improvement for settings as described in issue #1032
This commit is contained in:
commit
b457546963
|
@ -372,8 +372,9 @@ CLASS lcl_persist_settings DEFINITION FINAL.
|
|||
METHODS read
|
||||
RETURNING
|
||||
VALUE(ro_settings) TYPE REF TO lcl_settings.
|
||||
PRIVATE SECTION.
|
||||
|
||||
PRIVATE SECTION.
|
||||
DATA: mo_settings TYPE REF TO lcl_settings.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
|
@ -1879,15 +1880,30 @@ CLASS lcl_persist_settings IMPLEMENTATION.
|
|||
|
||||
METHOD modify.
|
||||
|
||||
DATA: settings TYPE string.
|
||||
settings = io_settings->get_settings_xml( ).
|
||||
|
||||
lcl_app=>db( )->modify(
|
||||
iv_type = lcl_settings=>c_dbtype_settings
|
||||
iv_value = ''
|
||||
iv_data = io_settings->get_settings_xml( ) ).
|
||||
iv_data = settings ).
|
||||
|
||||
" Settings have been modified: Update Buffered Settings
|
||||
IF mo_settings IS BOUND.
|
||||
mo_settings->set_xml_settings( settings ).
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD read.
|
||||
|
||||
IF mo_settings IS BOUND.
|
||||
" Return Buffered Settings
|
||||
ro_settings = mo_settings.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
" Settings have changed or have not yet been loaded
|
||||
CREATE OBJECT ro_settings.
|
||||
|
||||
TRY.
|
||||
|
@ -1902,6 +1918,8 @@ CLASS lcl_persist_settings IMPLEMENTATION.
|
|||
|
||||
ENDTRY.
|
||||
|
||||
mo_settings = ro_settings.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
|
Loading…
Reference in New Issue
Block a user