diff --git a/modules/blog/cms_node_storage_sql_blog_extension.e b/modules/blog/cms_node_storage_sql_blog_extension.e index fefff15..29eef63 100644 --- a/modules/blog/cms_node_storage_sql_blog_extension.e +++ b/modules/blog/cms_node_storage_sql_blog_extension.e @@ -94,6 +94,7 @@ feature -- Persistence -- sql_change (sql_insert_node_data, l_parameters) end end + sql_finalize end end @@ -117,6 +118,7 @@ feature -- Persistence create l_parameters.make (1) l_parameters.put (a_node.id, "nid") sql_modify (sql_delete_node_data, l_parameters) + sql_finalize end end diff --git a/modules/blog/persistence/cms_blog_storage_sql.e b/modules/blog/persistence/cms_blog_storage_sql.e index 0644b48..c804681 100644 --- a/modules/blog/persistence/cms_blog_storage_sql.e +++ b/modules/blog/persistence/cms_blog_storage_sql.e @@ -64,6 +64,7 @@ feature -- Access end sql_forth end + sql_finalize end blogs_limited (a_limit: NATURAL_32; a_offset: NATURAL_32): LIST [CMS_NODE] @@ -90,6 +91,7 @@ feature -- Access end sql_forth end + sql_finalize end blogs_from_user_limited (a_user: CMS_USER; a_limit: NATURAL_32; a_offset: NATURAL_32): LIST [CMS_NODE] @@ -117,6 +119,7 @@ feature -- Access end sql_forth end + sql_finalize end feature {NONE} -- Queries diff --git a/modules/node/persistence/cms_node_storage_sql.e b/modules/node/persistence/cms_node_storage_sql.e index 33707cb..80dcde3 100644 --- a/modules/node/persistence/cms_node_storage_sql.e +++ b/modules/node/persistence/cms_node_storage_sql.e @@ -34,7 +34,6 @@ feature -- Access sql_finalize end - nodes: LIST [CMS_NODE] -- List of nodes. do @@ -54,6 +53,7 @@ feature -- Access end sql_forth end + sql_finalize end node_revisions (a_node: CMS_NODE): LIST [CMS_NODE] @@ -81,6 +81,7 @@ feature -- Access end sql_forth end + sql_finalize end trashed_nodes (a_user: detachable CMS_USER): LIST [CMS_NODE] @@ -110,6 +111,7 @@ feature -- Access end sql_forth end + sql_finalize end recent_nodes (a_lower: INTEGER; a_count: INTEGER): LIST [CMS_NODE] @@ -136,6 +138,7 @@ feature -- Access end sql_forth end + sql_finalize end recent_node_changes_before (a_lower: INTEGER; a_count: INTEGER; a_date: DATE_TIME): LIST [CMS_NODE] @@ -164,6 +167,7 @@ feature -- Access end sql_forth end + sql_finalize end node_by_id (a_id: INTEGER_64): detachable CMS_NODE @@ -252,7 +256,7 @@ feature -- Access end -- if Result = 0 and not has_error then --| include the case a_node = Void -- sql_query (Sql_last_insert_node_revision, Void) --- if sql_rows_count = 1 then +-- if not has_error and not sql_after then -- if sql_item (1) /= Void then -- Result := sql_read_integer_64 (1) -- end @@ -285,6 +289,7 @@ feature -- Access: outline end sql_forth end + sql_finalize end available_parents_for_node (a_node: CMS_NODE): LIST [CMS_NODE] @@ -310,6 +315,7 @@ feature -- Access: outline end sql_forth end + sql_finalize end feature -- Change: Node @@ -339,6 +345,7 @@ feature -- Change: Node l_parameters.put ({CMS_NODE_API}.trashed, "status") l_parameters.put (a_id, "nid") sql_modify (sql_trash_node, l_parameters) + sql_finalize end delete_node_base (a_node: CMS_NODE) @@ -354,10 +361,12 @@ feature -- Change: Node create l_parameters.make (1) l_parameters.put (a_node.id, "nid") sql_modify (sql_delete_node, l_parameters) + sql_finalize -- we remove node_revisions and pages. -- Check: maybe we need a transaction. sql_modify (sql_delete_node_revisions, l_parameters) + sql_finalize if not error_handler.has_error then extended_delete (a_node) @@ -379,6 +388,7 @@ feature -- Change: Node l_parameters.put ({CMS_NODE_API}.not_published, "status") l_parameters.put (a_id, "nid") sql_modify (sql_restore_node, l_parameters) + sql_finalize end @@ -423,6 +433,8 @@ feature {NONE} -- Implementation l_copy_parameters.force (a_node.id, "nid") -- l_copy_parameters.force (l_rev - 1, "revision") sql_insert (sql_copy_node_to_revision, l_copy_parameters) + sql_finalize + if not has_error then a_node.set_revision (l_rev) @@ -431,6 +443,7 @@ feature {NONE} -- Implementation l_parameters.put (a_node.id, "nid") l_parameters.put (a_node.revision, "revision") sql_modify (sql_update_node, l_parameters) + sql_finalize if not error_handler.has_error then a_node.set_modification_date (now) @@ -442,6 +455,8 @@ feature {NONE} -- Implementation l_parameters.put (l_rev, "revision") sql_insert (sql_insert_node, l_parameters) + sql_finalize + if not error_handler.has_error then a_node.set_modification_date (now) a_node.set_id (last_inserted_node_id) diff --git a/modules/node/persistence/cms_node_storage_sql_page_extension.e b/modules/node/persistence/cms_node_storage_sql_page_extension.e index 380ade8..abfe110 100644 --- a/modules/node/persistence/cms_node_storage_sql_page_extension.e +++ b/modules/node/persistence/cms_node_storage_sql_page_extension.e @@ -84,6 +84,7 @@ feature -- Persistence sql_insert (sql_insert_node_data, l_parameters) end end + sql_finalize end end @@ -122,6 +123,7 @@ feature -- Persistence create l_parameters.make (1) l_parameters.put (a_node.id, "nid") sql_modify (sql_delete_node_data, l_parameters) + sql_finalize end end @@ -151,6 +153,7 @@ feature {NONE} -- Implementation check unique_data: n = 0 end end end + sql_finalize ensure accepted_revision: Result /= Void implies Result.revision <= a_node.revision end diff --git a/modules/oauth20/cms_oauth_20_module.e b/modules/oauth20/cms_oauth_20_module.e index a68227f..321f451 100644 --- a/modules/oauth20/cms_oauth_20_module.e +++ b/modules/oauth20/cms_oauth_20_module.e @@ -121,6 +121,7 @@ feature {CMS_API} -- Module management end l_sql_storage.sql_forth end + l_sql_storage.sql_finalize across l_consumers as ic loop if not l_sql_storage.sql_table_exists (ic.item) then if attached l_sql_storage.sql_script_content (api.module_resource_location (Current, (create {PATH}.make_from_string ("scripts")).extended ("oauth2_table.sql.tpl"))) as sql then @@ -131,6 +132,7 @@ feature {CMS_API} -- Module management end end end + l_sql_storage.sql_finalize Precursor {CMS_MODULE}(api) end end diff --git a/modules/oauth20/persistence/cms_oauth_20_storage_sql.e b/modules/oauth20/persistence/cms_oauth_20_storage_sql.e index 610268c..6b6f0b5 100644 --- a/modules/oauth20/persistence/cms_oauth_20_storage_sql.e +++ b/modules/oauth20/persistence/cms_oauth_20_storage_sql.e @@ -134,6 +134,7 @@ feature --Access: Consumers sql_forth end end + sql_finalize end oauth_consumer_by_name (a_name: READABLE_STRING_8): detachable CMS_OAUTH_20_CONSUMER @@ -203,6 +204,7 @@ feature -- Change: User OAuth l_string.replace_substring_all ("$table_name", oauth2_sql_table_name (a_consumer)) sql_insert (l_string, l_parameters) sql_commit_transaction + sql_finalize end update_user_oauth2 (a_token: READABLE_STRING_GENERAL; a_user_profile: READABLE_STRING_32; a_user: CMS_USER; a_consumer: READABLE_STRING_GENERAL ) @@ -224,6 +226,7 @@ feature -- Change: User OAuth l_string.replace_substring_all ("$table_name", oauth2_sql_table_name (a_consumer)) sql_modify (l_string, l_parameters) sql_commit_transaction + sql_finalize end remove_user_oauth2 (a_user: CMS_USER; a_consumer: READABLE_STRING_GENERAL) @@ -243,6 +246,7 @@ feature -- Change: User OAuth l_string.replace_substring_all ("$table_name", oauth2_sql_table_name (a_consumer)) sql_modify (l_string, l_parameters) sql_commit_transaction + sql_finalize end feature {NONE} -- Implementation OAuth Consumer diff --git a/modules/openid/persitence/cms_openid_storage_sql.e b/modules/openid/persitence/cms_openid_storage_sql.e index 05714f7..f44c975 100644 --- a/modules/openid/persitence/cms_openid_storage_sql.e +++ b/modules/openid/persitence/cms_openid_storage_sql.e @@ -64,9 +64,9 @@ feature -- Access User Outh else check no_more_than_one: False end end + sql_finalize end - feature --Access: Consumers openid_consumers: LIST [STRING] @@ -88,6 +88,7 @@ feature --Access: Consumers sql_forth end end + sql_finalize end openid_consumer_by_name (a_name: READABLE_STRING_8): detachable CMS_OPENID_CONSUMER @@ -128,6 +129,7 @@ feature -- Change: User OAuth l_parameters.put (create {DATE_TIME}.make_now_utc, "utc_date") sql_insert (Sql_insert_openid, l_parameters) sql_commit_transaction + sql_finalize end feature {NONE} -- Implementation OAuth Consumer diff --git a/src/persistence/core/cms_core_storage_sql_i.e b/src/persistence/core/cms_core_storage_sql_i.e index 8a27dee..d0d234a 100644 --- a/src/persistence/core/cms_core_storage_sql_i.e +++ b/src/persistence/core/cms_core_storage_sql_i.e @@ -38,6 +38,7 @@ feature -- URL aliases end else sql_insert (sql_insert_path_alias, l_parameters) + sql_finalize end end @@ -64,6 +65,7 @@ feature -- URL aliases l_parameters.put (a_alias, "alias") sql_modify (sql_update_path_alias, l_parameters) + sql_finalize end end @@ -80,6 +82,7 @@ feature -- URL aliases create l_parameters.make (1) l_parameters.put (a_alias, "alias") sql_modify (sql_delete_path_alias, l_parameters) + sql_finalize else error_handler.add_custom_error (0, "alias mismatch", "Path alias %"" + a_alias + "%" is not related to source %"" + a_source + "%"!") end @@ -171,6 +174,7 @@ feature -- Logs end l_parameters.put (now, "date") sql_insert (sql_insert_log, l_parameters) + sql_finalize end sql_insert_log: STRING = "INSERT INTO logs (category, level, uid, message, info, link, date) VALUES (:category, :level, :uid, :message, :info, :link, :date);" @@ -198,9 +202,11 @@ feature -- Misc -- already up to date else sql_modify (sql_update_custom_value, l_parameters) + sql_finalize end else sql_insert (sql_insert_custom_value, l_parameters) + sql_finalize end end @@ -219,6 +225,7 @@ feature -- Misc end l_parameters.put (a_name, "name") sql_modify (sql_delete_custom_value, l_parameters) + sql_finalize end custom_value (a_name: READABLE_STRING_GENERAL; a_type: detachable READABLE_STRING_8): detachable READABLE_STRING_32 diff --git a/src/persistence/sql/cms_storage_sql_i.e b/src/persistence/sql/cms_storage_sql_i.e index c183c4d..8b2acef 100644 --- a/src/persistence/sql/cms_storage_sql_i.e +++ b/src/persistence/sql/cms_storage_sql_i.e @@ -207,6 +207,7 @@ feature -- Helper else sql_commit_transaction end + sql_finalize end sql_table_exists (a_table_name: READABLE_STRING_8): BOOLEAN @@ -216,6 +217,7 @@ feature -- Helper sql_query ("SELECT count(*) FROM " + a_table_name + " ;", Void) Result := not has_error -- FIXME: find better solution + sql_finalize reset_error end @@ -227,6 +229,7 @@ feature -- Helper if not has_error then Result := sql_read_integer_64 (1) end + sql_finalize end feature -- Access diff --git a/src/persistence/user/cms_user_storage_sql_i.e b/src/persistence/user/cms_user_storage_sql_i.e index 34304da..2a59b30 100644 --- a/src/persistence/user/cms_user_storage_sql_i.e +++ b/src/persistence/user/cms_user_storage_sql_i.e @@ -275,6 +275,7 @@ feature -- Change: user l_parameters.put (a_user.status, "status") sql_modify (sql_update_user, l_parameters) + sql_finalize if not error_handler.has_error then update_user_roles (a_user) end @@ -402,9 +403,8 @@ feature -- Access: roles and permissions if Result /= Void and not has_error then fill_user_role (Result) end - else - sql_finalize end + sql_finalize end user_role_by_name (a_name: READABLE_STRING_GENERAL): detachable CMS_USER_ROLE @@ -425,9 +425,8 @@ feature -- Access: roles and permissions if Result /= Void and not has_error then fill_user_role (Result) end - else - sql_finalize end + sql_finalize end user_roles_for (a_user: CMS_USER): LIST [CMS_USER_ROLE] @@ -575,6 +574,7 @@ feature -- Change: roles and permissions l_parameters.put (a_user_role.id, "rid") l_parameters.put (a_user_role.name, "name") sql_modify (sql_update_user_role, l_parameters) + sql_finalize end if not a_user_role.permissions.is_empty then -- FIXME: check if this is non set permissions,or none ... @@ -621,16 +621,14 @@ feature -- Change: roles and permissions create l_parameters.make (1) l_parameters.put (a_user_role.name, "name") sql_insert (sql_insert_user_role, l_parameters) + sql_finalize if not error_handler.has_error then a_user_role.set_id (last_inserted_user_role_id) - sql_finalize across a_user_role.permissions as ic loop set_permission_for_role_id (ic.item, a_user_role.id) end - else - sql_finalize end end end @@ -691,6 +689,7 @@ feature -- Change: roles and permissions create l_parameters.make (1) l_parameters.put (a_role.id, "rid") sql_modify (sql_delete_role_permissions_by_role_id, l_parameters) + sql_finalize sql_modify (sql_delete_role_by_id, l_parameters) sql_commit_transaction sql_finalize