From d34ec9cf92395927877fbf8f6c35458b1ed4693e Mon Sep 17 00:00:00 2001 From: zwx1271681 Date: Sun, 28 Jul 2024 09:13:08 +0800 Subject: [PATCH] fix: add the datashare interface, insert, delete, and modify the return pair value Signed-off-by: zwx1271681 --- .../include/contacts_datashare_stub_impl.h | 6 ++-- .../src/contacts_datashare_stub_impl.cpp | 29 +++++++++---------- 2 files changed, 17 insertions(+), 18 deletions(-) diff --git a/dataBusiness/contacts/include/contacts_datashare_stub_impl.h b/dataBusiness/contacts/include/contacts_datashare_stub_impl.h index 9c8fe06..a4ff368 100644 --- a/dataBusiness/contacts/include/contacts_datashare_stub_impl.h +++ b/dataBusiness/contacts/include/contacts_datashare_stub_impl.h @@ -26,10 +26,10 @@ public: ContactsDataShareStubImpl() {} virtual ~ContactsDataShareStubImpl() {}; - int Insert(const Uri &uri, const DataShareValuesBucket &value) override; - int Update(const Uri &uri, const DataSharePredicates &predicates, + std::pair Insert(const Uri &uri, const DataShareValuesBucket &value) override; + std::pair Update(const Uri &uri, const DataSharePredicates &predicates, const DataShareValuesBucket &value) override; - int Delete(const Uri &uri, const DataSharePredicates &predicates) override; + std::pair Delete(const Uri &uri, const DataSharePredicates &predicates) override; std::shared_ptr Query(const Uri &uri, const DataSharePredicates &predicates, std::vector &columns, DatashareBusinessError &businessError) override; int BatchInsert(const Uri &uri, const std::vector &values) override; diff --git a/dataBusiness/contacts/src/contacts_datashare_stub_impl.cpp b/dataBusiness/contacts/src/contacts_datashare_stub_impl.cpp index ba7b62e..df67697 100644 --- a/dataBusiness/contacts/src/contacts_datashare_stub_impl.cpp +++ b/dataBusiness/contacts/src/contacts_datashare_stub_impl.cpp @@ -23,6 +23,8 @@ namespace OHOS { namespace DataShare { using DataObsMgrClient = OHOS::AAFwk::DataObsMgrClient; +constexpr int DATA_SHARE_ERR = -1; +constexpr int DATA_SHARE_OK = 0; void ContactsDataShareStubImpl::SetContactsDataAbility(std::shared_ptr extension) { @@ -82,56 +84,53 @@ std::shared_ptr ContactsDataShareStubImpl::GetOwner(const U return nullptr; } -int ContactsDataShareStubImpl::Insert(const Uri &uri, const DataShareValuesBucket &value) +std::pair ContactsDataShareStubImpl::Insert(const Uri &uri, const DataShareValuesBucket &value) { HILOG_INFO("insert begin."); - int ret = 0; auto extension = GetOwner(uri); if (extension == nullptr) { HILOG_ERROR("insert failed, extension is null."); - return ret; + return std::make_pair(DATA_SHARE_ERR, 0); } - ret = extension->Insert(uri, value); + int32_t ret = extension->Insert(uri, value); HILOG_INFO("insert end successfully. ret: %{public}d", ret); if (ret != Contacts::OPERATION_ERROR) { NotifyChange(uri); } - return ret; + return std::make_pair(DATA_SHARE_OK, ret); } -int ContactsDataShareStubImpl::Update(const Uri &uri, const DataSharePredicates &predicates, +std::pair ContactsDataShareStubImpl::Update(const Uri &uri, const DataSharePredicates &predicates, const DataShareValuesBucket &value) { HILOG_INFO("update begin."); - int ret = 0; auto extension = GetOwner(uri); if (extension == nullptr) { HILOG_ERROR("update failed, extension is null."); - return ret; + return std::make_pair(DATA_SHARE_ERR, 0); } - ret = extension->Update(uri, predicates, value); + int32_t ret = extension->Update(uri, predicates, value); HILOG_INFO("update end successfully. ret: %{public}d", ret); if (ret != Contacts::OPERATION_ERROR) { NotifyChange(uri); } - return ret; + return std::make_pair(DATA_SHARE_OK, ret); } -int ContactsDataShareStubImpl::Delete(const Uri &uri, const DataSharePredicates &predicates) +std::pair ContactsDataShareStubImpl::Delete(const Uri &uri, const DataSharePredicates &predicates) { HILOG_INFO("delete begin."); - int ret = 0; auto extension = GetOwner(uri); if (extension == nullptr) { HILOG_ERROR("delete failed, extension is null."); - return ret; + return std::make_pair(DATA_SHARE_ERR, 0); } - ret = extension->Delete(uri, predicates); + int32_t ret = extension->Delete(uri, predicates); HILOG_INFO("delete end successfully. ret: %{public}d", ret); if (ret != Contacts::OPERATION_ERROR) { NotifyChange(uri); } - return ret; + return std::make_pair(DATA_SHARE_OK, ret); } std::shared_ptr ContactsDataShareStubImpl::Query(const Uri &uri, -- Gitee