diff --git a/src/persist/zcl_abapgit_persist_migrate.clas.abap b/src/persist/zcl_abapgit_persist_migrate.clas.abap index c978ee25f..9af233d8b 100644 --- a/src/persist/zcl_abapgit_persist_migrate.clas.abap +++ b/src/persist/zcl_abapgit_persist_migrate.clas.abap @@ -4,23 +4,21 @@ CLASS zcl_abapgit_persist_migrate DEFINITION PUBLIC CREATE PUBLIC. CLASS-METHODS: run RAISING zcx_abapgit_exception. PRIVATE SECTION. - CONSTANTS: - c_text TYPE string VALUE 'Generated by abapGit' ##NO_TEXT. - CLASS-METHODS: - migrate_settings - RAISING zcx_abapgit_exception, - table_create - RAISING zcx_abapgit_exception, - table_exists - RETURNING VALUE(rv_exists) TYPE abap_bool, - lock_create - RAISING zcx_abapgit_exception, - lock_exists - RETURNING VALUE(rv_exists) TYPE abap_bool, - settings_exists - RETURNING VALUE(rv_exists) TYPE abap_bool. + CONSTANTS c_text TYPE string VALUE 'Generated by abapGit' ##NO_TEXT. + CLASS-METHODS table_create + RAISING + zcx_abapgit_exception . + CLASS-METHODS table_exists + RETURNING + VALUE(rv_exists) TYPE abap_bool . + CLASS-METHODS lock_create + RAISING + zcx_abapgit_exception . + CLASS-METHODS lock_exists + RETURNING + VALUE(rv_exists) TYPE abap_bool . ENDCLASS. @@ -127,156 +125,6 @@ CLASS ZCL_ABAPGIT_PERSIST_MIGRATE IMPLEMENTATION. ENDMETHOD. - METHOD migrate_settings. - - DATA: lo_settings TYPE REF TO zcl_abapgit_settings, - lo_persist_settings TYPE REF TO zcl_abapgit_persist_settings, - lv_critical_tests_as_string TYPE string, - lv_critical_tests_as_boolean TYPE abap_bool, - lv_max_lines_as_string TYPE string, - lv_flag TYPE abap_bool, - lv_max_lines_as_integer TYPE i, - lv_s_param_value TYPE string, - lv_i_param_value TYPE i, - lv_adt_jump_enabled_as_string TYPE string, - lv_adt_jump_enabled_as_boolean TYPE abap_bool. - - - lo_persist_settings = zcl_abapgit_persist_settings=>get_instance( ). - - CREATE OBJECT lo_settings. - lo_settings->set_defaults( ). - - TRY. - lo_settings->set_proxy_url( - zcl_abapgit_persistence_db=>get_instance( )->read( - iv_type = 'SETTINGS' - iv_value = 'PROXY_URL' ) ). - CATCH zcx_abapgit_not_found. - ENDTRY. - - TRY. - lo_settings->set_proxy_port( - zcl_abapgit_persistence_db=>get_instance( )->read( - iv_type = 'SETTINGS' - iv_value = 'PROXY_PORT' ) ). - CATCH zcx_abapgit_not_found. - ENDTRY. - - TRY. - lv_flag = zcl_abapgit_persistence_db=>get_instance( )->read( - iv_type = 'SETTINGS' - iv_value = 'PROXY_AUTH' ). - lo_settings->set_proxy_authentication( lv_flag ). - CATCH zcx_abapgit_not_found. - ENDTRY. - - TRY. - lv_critical_tests_as_string = zcl_abapgit_persistence_db=>get_instance( )->read( - iv_type = 'SETTINGS' - iv_value = 'CRIT_TESTS' ). - lv_critical_tests_as_boolean = lv_critical_tests_as_string. - lo_settings->set_run_critical_tests( lv_critical_tests_as_boolean ). - CATCH zcx_abapgit_not_found. - ENDTRY. - - TRY. - lv_max_lines_as_string = zcl_abapgit_persistence_db=>get_instance( )->read( - iv_type = 'SETTINGS' - iv_value = 'MAX_LINES' ). - lv_max_lines_as_integer = lv_max_lines_as_string. - lo_settings->set_max_lines( lv_max_lines_as_integer ). - CATCH zcx_abapgit_not_found cx_sy_conversion_no_number. - ENDTRY. - - TRY. - lv_adt_jump_enabled_as_string = zcl_abapgit_persistence_db=>get_instance( )->read( - iv_type = 'SETTINGS' - iv_value = 'ADT_JUMP' ). - lv_adt_jump_enabled_as_boolean = lv_adt_jump_enabled_as_string. - lo_settings->set_adt_jump_enanbled( lv_adt_jump_enabled_as_boolean ). - CATCH zcx_abapgit_not_found. - ENDTRY. - - TRY. - lv_s_param_value = zcl_abapgit_persistence_db=>get_instance( )->read( - iv_type = 'SETTINGS' - iv_value = 'COMMENT_LEN' ). - lv_i_param_value = lv_s_param_value. - lo_settings->set_commitmsg_comment_length( lv_i_param_value ). - CATCH zcx_abapgit_not_found cx_sy_conversion_no_number. - ENDTRY. - - TRY. - lv_s_param_value = zcl_abapgit_persistence_db=>get_instance( )->read( - iv_type = 'SETTINGS' - iv_value = 'BODY_SIZE' ). - lv_i_param_value = lv_s_param_value. - lo_settings->set_commitmsg_body_size( lv_i_param_value ). - CATCH zcx_abapgit_not_found cx_sy_conversion_no_number. - ENDTRY. - - lo_persist_settings->modify( lo_settings ). - - TRY. - zcl_abapgit_persistence_db=>get_instance( )->delete( - iv_type = 'SETTINGS' - iv_value = 'PROXY_URL' ). - CATCH zcx_abapgit_exception. - ENDTRY. - - TRY. - zcl_abapgit_persistence_db=>get_instance( )->delete( - iv_type = 'SETTINGS' - iv_value = 'PROXY_PORT' ). - CATCH zcx_abapgit_exception. - ENDTRY. - - TRY. - zcl_abapgit_persistence_db=>get_instance( )->delete( - iv_type = 'SETTINGS' - iv_value = 'PROXY_AUTH' ). - CATCH zcx_abapgit_exception. - ENDTRY. - - TRY. - zcl_abapgit_persistence_db=>get_instance( )->delete( - iv_type = 'SETTINGS' - iv_value = 'CRIT_TESTS' ). - CATCH zcx_abapgit_exception. - ENDTRY. - - TRY. - zcl_abapgit_persistence_db=>get_instance( )->delete( - iv_type = 'SETTINGS' - iv_value = 'MAX_LINES' ). - CATCH zcx_abapgit_exception. - ENDTRY. - - TRY. - zcl_abapgit_persistence_db=>get_instance( )->delete( - iv_type = 'SETTINGS' - iv_value = 'ADT_JUMP' ). - CATCH zcx_abapgit_exception. - ENDTRY. - - TRY. - zcl_abapgit_persistence_db=>get_instance( )->delete( - iv_type = 'SETTINGS' - iv_value = 'COMMENT_LEN' ). - CATCH zcx_abapgit_exception. - ENDTRY. - - TRY. - zcl_abapgit_persistence_db=>get_instance( )->delete( - iv_type = 'SETTINGS' - iv_value = 'BODY_SIZE' ). - CATCH zcx_abapgit_exception. - ENDTRY. - - ENDMETHOD. - - METHOD run. IF table_exists( ) = abap_false. @@ -287,23 +135,6 @@ CLASS ZCL_ABAPGIT_PERSIST_MIGRATE IMPLEMENTATION. lock_create( ). ENDIF. - IF settings_exists( ) = abap_false. - migrate_settings( ). - ENDIF. - - ENDMETHOD. - - - METHOD settings_exists. - - TRY. - zcl_abapgit_persistence_db=>get_instance( )->read( - iv_type = 'SETTINGS' - iv_value = '' ). - rv_exists = abap_true. - CATCH zcx_abapgit_not_found. - rv_exists = abap_false. - ENDTRY. ENDMETHOD. diff --git a/src/persist/zcl_abapgit_services_db.clas.abap b/src/persist/zcl_abapgit_services_db.clas.abap deleted file mode 100644 index 9759b1f40..000000000 --- a/src/persist/zcl_abapgit_services_db.clas.abap +++ /dev/null @@ -1,61 +0,0 @@ -CLASS zcl_abapgit_services_db DEFINITION PUBLIC FINAL CREATE PUBLIC. - - PUBLIC SECTION. - CLASS-METHODS delete - IMPORTING is_key TYPE zif_abapgit_persistence=>ty_content - RAISING zcx_abapgit_exception zcx_abapgit_cancel. - - CLASS-METHODS update - IMPORTING is_content TYPE zif_abapgit_persistence=>ty_content - RAISING zcx_abapgit_exception. - -ENDCLASS. - - - -CLASS ZCL_ABAPGIT_SERVICES_DB IMPLEMENTATION. - - - METHOD delete. - - DATA: lv_answer TYPE c LENGTH 1. - - ASSERT is_key-type IS NOT INITIAL. - ASSERT is_key-value IS NOT INITIAL. - - lv_answer = zcl_abapgit_popups=>popup_to_confirm( - titlebar = 'Warning' - text_question = 'Delete?' - text_button_1 = 'Ok' - icon_button_1 = 'ICON_DELETE' - text_button_2 = 'Cancel' - icon_button_2 = 'ICON_CANCEL' - default_button = '2' - display_cancel_button = abap_false ). "#EC NOTEXT - - IF lv_answer = '2'. - RAISE EXCEPTION TYPE zcx_abapgit_cancel. - ENDIF. - - zcl_abapgit_persistence_db=>get_instance( )->delete( - iv_type = is_key-type - iv_value = is_key-value ). - - COMMIT WORK. - - ENDMETHOD. " delete - - - METHOD update. - - ASSERT is_content-type IS NOT INITIAL. - - zcl_abapgit_persistence_db=>get_instance( )->update( - iv_type = is_content-type - iv_value = is_content-value - iv_data = is_content-data_str ). - - COMMIT WORK. - - ENDMETHOD. "update -ENDCLASS. diff --git a/src/persist/zcl_abapgit_services_db.clas.xml b/src/persist/zcl_abapgit_services_db.clas.xml deleted file mode 100644 index c1bc0abbd..000000000 --- a/src/persist/zcl_abapgit_services_db.clas.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - ZCL_ABAPGIT_SERVICES_DB - 1 - E - DB services - 2 - 1 - X - X - X - X - - - - diff --git a/src/ui/zcl_abapgit_gui_page_db.clas.abap b/src/ui/zcl_abapgit_gui_page_db.clas.abap index e6495ebe3..384147d82 100644 --- a/src/ui/zcl_abapgit_gui_page_db.clas.abap +++ b/src/ui/zcl_abapgit_gui_page_db.clas.abap @@ -1,20 +1,39 @@ CLASS zcl_abapgit_gui_page_db DEFINITION PUBLIC + INHERITING FROM zcl_abapgit_gui_page FINAL - CREATE PUBLIC INHERITING FROM zcl_abapgit_gui_page. + CREATE PUBLIC . PUBLIC SECTION. - METHODS constructor. + METHODS constructor . + + METHODS zif_abapgit_gui_page~on_event + REDEFINITION . PROTECTED SECTION. - METHODS render_content REDEFINITION. + METHODS render_content + REDEFINITION . PRIVATE SECTION. - METHODS explain_content - IMPORTING is_data TYPE zif_abapgit_persistence=>ty_content - RETURNING VALUE(rv_text) TYPE string - RAISING zcx_abapgit_exception. + CONSTANTS: + BEGIN OF gc_action, + delete TYPE string VALUE 'delete', + END OF gc_action . + + CLASS-METHODS delete + IMPORTING + !is_key TYPE zif_abapgit_persistence=>ty_content + RAISING + zcx_abapgit_exception + zcx_abapgit_cancel . + METHODS explain_content + IMPORTING + !is_data TYPE zif_abapgit_persistence=>ty_content + RETURNING + VALUE(rv_text) TYPE string + RAISING + zcx_abapgit_exception . ENDCLASS. @@ -28,6 +47,36 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DB IMPLEMENTATION. ENDMETHOD. " constructor. + METHOD delete. + + DATA: lv_answer TYPE c LENGTH 1. + + ASSERT is_key-type IS NOT INITIAL. + ASSERT is_key-value IS NOT INITIAL. + + lv_answer = zcl_abapgit_popups=>popup_to_confirm( + titlebar = 'Warning' + text_question = 'Delete?' + text_button_1 = 'Ok' + icon_button_1 = 'ICON_DELETE' + text_button_2 = 'Cancel' + icon_button_2 = 'ICON_CANCEL' + default_button = '2' + display_cancel_button = abap_false ). "#EC NOTEXT + + IF lv_answer = '2'. + RAISE EXCEPTION TYPE zcx_abapgit_cancel. + ENDIF. + + zcl_abapgit_persistence_db=>get_instance( )->delete( + iv_type = is_key-type + iv_value = is_key-value ). + + COMMIT WORK. + + ENDMETHOD. " delete + + METHOD explain_content. DATA: ls_result TYPE match_result, @@ -65,6 +114,8 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DB IMPLEMENTATION. WHEN 'USER'. rv_text = '-'. " No additional explanation for user + WHEN 'SETTINGS'. + rv_text = '-'. WHEN OTHERS. IF strlen( is_data-data_str ) >= 250. rv_text = is_data-data_str(250). @@ -118,7 +169,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DB IMPLEMENTATION. CREATE OBJECT lo_toolbar. lo_toolbar->add( iv_txt = 'Display' iv_act = |{ zif_abapgit_definitions=>gc_action-db_display }?{ lv_action }| ). lo_toolbar->add( iv_txt = 'Edit' iv_act = |{ zif_abapgit_definitions=>gc_action-db_edit }?{ lv_action }| ). - lo_toolbar->add( iv_txt = 'Delete' iv_act = |{ zif_abapgit_definitions=>gc_action-db_delete }?{ lv_action }| ). + lo_toolbar->add( iv_txt = 'Delete' iv_act = |{ gc_action-delete }?{ lv_action }| ). ro_html->add( || ). ro_html->add( |{ -type }| ). @@ -135,4 +186,18 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DB IMPLEMENTATION. ro_html->add( '' ). ENDMETHOD. "render_content + + + METHOD zif_abapgit_gui_page~on_event. + + DATA: ls_db TYPE zif_abapgit_persistence=>ty_content. + + CASE iv_action. + WHEN gc_action-delete. + ls_db = zcl_abapgit_html_action_utils=>dbkey_decode( iv_getdata ). + delete( ls_db ). + ev_state = zif_abapgit_definitions=>gc_event_state-re_render. + ENDCASE. + + ENDMETHOD. ENDCLASS. diff --git a/src/ui/zcl_abapgit_gui_page_db_edit.clas.abap b/src/ui/zcl_abapgit_gui_page_db_edit.clas.abap index 87eddb53a..cd90baf58 100644 --- a/src/ui/zcl_abapgit_gui_page_db_edit.clas.abap +++ b/src/ui/zcl_abapgit_gui_page_db_edit.clas.abap @@ -1,18 +1,34 @@ CLASS zcl_abapgit_gui_page_db_edit DEFINITION PUBLIC + INHERITING FROM zcl_abapgit_gui_page FINAL - CREATE PUBLIC INHERITING FROM zcl_abapgit_gui_page. + CREATE PUBLIC . PUBLIC SECTION. - METHODS: constructor - IMPORTING is_key TYPE zif_abapgit_persistence=>ty_content. + METHODS constructor + IMPORTING + !is_key TYPE zif_abapgit_persistence=>ty_content . + + METHODS zif_abapgit_gui_page~on_event + REDEFINITION . PROTECTED SECTION. - METHODS render_content REDEFINITION. + METHODS render_content + REDEFINITION . PRIVATE SECTION. - DATA: ms_key TYPE zif_abapgit_persistence=>ty_content. + CONSTANTS: + BEGIN OF gc_action, + update TYPE string VALUE 'update', + END OF gc_action . + DATA ms_key TYPE zif_abapgit_persistence=>ty_content . + + CLASS-METHODS update + IMPORTING + !is_content TYPE zif_abapgit_persistence=>ty_content + RAISING + zcx_abapgit_exception . ENDCLASS. @@ -63,8 +79,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DB_EDIT IMPLEMENTATION. ro_html->add( '' ). " Form - ro_html->add( |
| ). + ro_html->add( || ). ro_html->add( || ). ro_html->add( || ). ro_html->add( || ). @@ -73,4 +88,32 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DB_EDIT IMPLEMENTATION. ro_html->add( '' ). "db_entry ENDMETHOD. "render_content + + + METHOD update. + + ASSERT is_content-type IS NOT INITIAL. + + zcl_abapgit_persistence_db=>get_instance( )->update( + iv_type = is_content-type + iv_value = is_content-value + iv_data = is_content-data_str ). + + COMMIT WORK. + + ENDMETHOD. + + + METHOD zif_abapgit_gui_page~on_event. + + DATA: ls_db TYPE zif_abapgit_persistence=>ty_content. + + CASE iv_action. + WHEN gc_action-update. + ls_db = zcl_abapgit_html_action_utils=>dbcontent_decode( it_postdata ). + update( ls_db ). + ev_state = zif_abapgit_definitions=>gc_event_state-go_back. + ENDCASE. + + ENDMETHOD. ENDCLASS. diff --git a/src/ui/zcl_abapgit_gui_router.clas.abap b/src/ui/zcl_abapgit_gui_router.clas.abap index ccdaa930d..4b38e1c58 100644 --- a/src/ui/zcl_abapgit_gui_router.clas.abap +++ b/src/ui/zcl_abapgit_gui_router.clas.abap @@ -239,14 +239,6 @@ CLASS ZCL_ABAPGIT_GUI_ROUTER IMPLEMENTATION. EXPORTING is_key = zcl_abapgit_html_action_utils=>dbkey_decode( iv_getdata ). ev_state = zif_abapgit_definitions=>gc_event_state-new_page. - WHEN zif_abapgit_definitions=>gc_action-db_delete. " DB Delete - ls_db = zcl_abapgit_html_action_utils=>dbkey_decode( iv_getdata ). - zcl_abapgit_services_db=>delete( ls_db ). - ev_state = zif_abapgit_definitions=>gc_event_state-re_render. - WHEN zif_abapgit_definitions=>gc_action-db_update. " DB Update - ls_db = zcl_abapgit_html_action_utils=>dbcontent_decode( it_postdata ). - zcl_abapgit_services_db=>update( ls_db ). - ev_state = zif_abapgit_definitions=>gc_event_state-go_back. " ABAPGIT services actions WHEN zif_abapgit_definitions=>gc_action-abapgit_home. " Go abapGit homepage diff --git a/src/zif_abapgit_definitions.intf.abap b/src/zif_abapgit_definitions.intf.abap index 388a6eb72..68f571ad6 100644 --- a/src/zif_abapgit_definitions.intf.abap +++ b/src/zif_abapgit_definitions.intf.abap @@ -349,8 +349,6 @@ INTERFACE zif_abapgit_definitions PUBLIC. git_tag_switch TYPE string VALUE 'git_tag_switch', git_commit TYPE string VALUE 'git_commit', - db_delete TYPE string VALUE 'db_delete', - db_update TYPE string VALUE 'db_update', db_display TYPE string VALUE 'db_display', db_edit TYPE string VALUE 'db_edit', bg_update TYPE string VALUE 'bg_update',