Merge remote-tracking branch 'nearby/main' into sync-upstream

This commit is contained in:
Lasan Mahaliyana
2026-06-13 21:02:50 +05:30
690 changed files with 62049 additions and 42631 deletions
+6 -10
View File
@@ -34,6 +34,7 @@ cc_library(
"//internal/account:__pkg__",
"//location/nearby/analytics/cpp/logging:__pkg__",
"//location/nearby/cpp/sharing:__subpackages__",
"//location/nearby/sharing/lib:__subpackages__",
"//location/nearby/sharing/sdk/test_client:__pkg__",
"//sharing:__subpackages__",
],
@@ -41,9 +42,10 @@ cc_library(
"//internal/base:file_path",
"//internal/platform:mac_address",
"//internal/platform:types",
"//internal/platform/implementation:account_manager",
"//internal/platform/implementation:types",
"//location/nearby/sharing/lib/account:account_manager",
"//location/nearby/sharing/lib/sync:sync_binding_prefs_cc_proto",
"//sharing/proto:share_cc_proto",
"//sharing/proto:wire_format_cc_proto",
"@com_google_absl//absl/functional:any_invocable",
"@com_google_absl//absl/strings:string_view",
"@com_google_absl//absl/time",
@@ -70,16 +72,10 @@ cc_library(
"//internal/base:file_path",
"//internal/platform:mac_address",
"//internal/platform:types",
"//internal/platform/implementation:account_manager",
"//sharing/analytics",
"//sharing/internal/public:logging",
"//sharing/proto:share_cc_proto",
"@com_google_absl//absl/base:core_headers",
"//internal/platform/implementation:types",
"//location/nearby/sharing/lib/account:account_manager",
"@com_google_absl//absl/functional:any_invocable",
"@com_google_absl//absl/status",
"@com_google_absl//absl/status:statusor",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/synchronization",
"@com_google_absl//absl/types:span",
"@com_google_googletest//:gtest_for_library_testonly",
],
+3 -5
View File
@@ -19,12 +19,11 @@
#include <memory>
#include <vector>
#include "location/nearby/sharing/lib/account/account_manager.h"
#include "gmock/gmock.h"
#include "absl/strings/string_view.h"
#include "internal/base/file_path.h"
#include "internal/platform/device_info.h"
#include "internal/platform/implementation/account_manager.h"
#include "internal/platform/task_runner.h"
#include "internal/platform/implementation/device_info.h"
#include "sharing/internal/api/app_info.h"
#include "sharing/internal/api/bluetooth_adapter.h"
#include "sharing/internal/api/fast_init_ble_beacon.h"
@@ -71,8 +70,7 @@ class MockSharingPlatform : public SharingPlatform {
MOCK_METHOD(PreferenceManager&, GetPreferenceManager, (), (override));
MOCK_METHOD(AccountManager&, GetAccountManager, (), (override));
MOCK_METHOD(TaskRunner&, GetDefaultTaskRunner, (), (override));
MOCK_METHOD(nearby::DeviceInfo&, GetDeviceInfo, (), (override));
MOCK_METHOD(nearby::api::DeviceInfo&, GetDeviceInfo, (), (override));
MOCK_METHOD(std::unique_ptr<PublicCertificateDatabase>,
CreatePublicCertificateDatabase, (const FilePath& database_path),
(override));
-53
View File
@@ -22,55 +22,12 @@
#include <utility>
#include <vector>
#if defined(__has_include)
#if __has_include("location/nearby/sharing/lib/sync/sync_binding_prefs.pb.h")
#include "location/nearby/sharing/lib/sync/sync_binding_prefs.pb.h"
#define NEARBY_HAS_SYNC_BINDING_PREFS_PROTO 1
#endif // __has_include("location/nearby/sharing/lib/sync/sync_binding_prefs.pb.h")
#if __has_include("location/nearby/sharing/lib/sync/sync_config_prefs.pb.h")
#include "location/nearby/sharing/lib/sync/sync_config_prefs.pb.h"
#define NEARBY_HAS_SYNC_CONFIG_PREFS_PROTO 1
#endif // __has_include("location/nearby/sharing/lib/sync/sync_config_prefs.pb.h")
#endif // defined(__has_include)
#include "sharing/proto/wire_format.pb.h"
#include "absl/strings/string_view.h"
#include "absl/time/time.h"
#include "absl/types/span.h"
#include "sharing/internal/api/private_certificate_data.h"
#ifndef NEARBY_HAS_SYNC_CONFIG_PREFS_PROTO
namespace nearby::sharing::sync {
class SyncConfigPrefs {
public:
bool ParseFromString(const std::string& serialized) {
return sync_config_.ParseFromString(serialized);
}
std::string SerializeAsString() const {
return sync_config_.SerializeAsString();
}
const nearby::sharing::service::proto::SyncConfig& sync_config() const {
return sync_config_;
}
nearby::sharing::service::proto::SyncConfig* mutable_sync_config() {
return &sync_config_;
}
private:
nearby::sharing::service::proto::SyncConfig sync_config_;
};
} // namespace nearby::sharing::sync
#endif // NEARBY_HAS_SYNC_CONFIG_PREFS_PROTO
#ifndef NEARBY_HAS_SYNC_BINDING_PREFS_PROTO
namespace nearby::sharing::sync {
class SyncBindingPrefs {
public:
bool ParseFromString(const std::string&) { return false; }
std::string SerializeAsString() const { return {}; }
};
} // namespace nearby::sharing::sync
#endif // NEARBY_HAS_SYNC_BINDING_PREFS_PROTO
namespace nearby::sharing::api {
class PreferenceManager {
@@ -123,10 +80,6 @@ class PreferenceManager {
virtual void RemoveDictionaryItem(absl::string_view key,
absl::string_view dictionary_item) = 0;
virtual void SetSyncConfigValue(
absl::string_view binding_id,
const nearby::sharing::sync::SyncConfigPrefs& value) = 0;
virtual void SetSyncBindingValue(
const nearby::sharing::sync::SyncBindingPrefs& value) = 0;
@@ -169,17 +122,11 @@ class PreferenceManager {
virtual std::optional<std::string> GetDictionaryStringValue(
absl::string_view key, absl::string_view dictionary_item) const = 0;
virtual std::optional<nearby::sharing::sync::SyncConfigPrefs>
GetSyncConfigValue(absl::string_view binding_id) const = 0;
virtual std::optional<nearby::sharing::sync::SyncBindingPrefs>
GetSyncBindingValue() const = 0;
// Removes preferences
virtual void Remove(absl::string_view key) = 0;
// Removes all sync configs.
// Observers are not notified for each removed config.
virtual void RemoveAllSyncConfigs() = 0;
// Removes all binding configs.
// Observers are not notified for each removed config.
virtual void RemoveAllBindingConfigs() = 0;
+3 -5
View File
@@ -19,11 +19,10 @@
#include <memory>
#include <vector>
#include "location/nearby/sharing/lib/account/account_manager.h"
#include "absl/strings/string_view.h"
#include "internal/base/file_path.h"
#include "internal/platform/device_info.h"
#include "internal/platform/implementation/account_manager.h"
#include "internal/platform/task_runner.h"
#include "internal/platform/implementation/device_info.h"
#include "sharing/internal/api/app_info.h"
#include "sharing/internal/api/bluetooth_adapter.h"
#include "sharing/internal/api/fast_init_ble_beacon.h"
@@ -64,8 +63,7 @@ class SharingPlatform {
virtual PreferenceManager& GetPreferenceManager() = 0;
virtual AccountManager& GetAccountManager() = 0;
virtual TaskRunner& GetDefaultTaskRunner() = 0;
virtual nearby::DeviceInfo& GetDeviceInfo() = 0;
virtual nearby::api::DeviceInfo& GetDeviceInfo() = 0;
virtual std::unique_ptr<PublicCertificateDatabase>
CreatePublicCertificateDatabase(const FilePath& database_path) = 0;
-3
View File
@@ -49,9 +49,6 @@ class Context {
// count of tasks running at the same time.
virtual std::unique_ptr<TaskRunner> CreateConcurrentTaskRunner(
uint32_t concurrent_count) const = 0;
// Provides the API to retrieve TaskRunner to run a task globally.
virtual TaskRunner* GetTaskRunner() = 0;
};
} // namespace nearby
-4
View File
@@ -70,8 +70,4 @@ std::unique_ptr<TaskRunner> ContextImpl::CreateConcurrentTaskRunner(
return task_runner;
}
TaskRunner* ContextImpl::GetTaskRunner() {
return &platform_.GetDefaultTaskRunner();
}
} // namespace nearby
-1
View File
@@ -43,7 +43,6 @@ class ContextImpl : public Context {
std::unique_ptr<TaskRunner> CreateSequencedTaskRunner() const override;
std::unique_ptr<TaskRunner> CreateConcurrentTaskRunner(
uint32_t concurrent_count) const override;
TaskRunner* GetTaskRunner() override;
private:
nearby::sharing::api::SharingPlatform& platform_;
-7
View File
@@ -61,13 +61,6 @@ class PrefNames {
// TODO: b/485304482 - define data format for binding configs.
static constexpr absl::string_view kBindingConfigPrefix =
"nearby_sharing.binding_config.";
// Sync configs preferences are stored in pref keys:
// kSyncConfigPrefix + <binding ID>
// Example: "nearby_sharing.sync_config.01243347-2343-4324-3423-432432432432"
// Data stored in sync config prefs is a SyncConfig proto.
static constexpr absl::string_view kSyncConfigPrefix =
"nearby_sharing.sync_config.";
};
} // namespace nearby::sharing
+1
View File
@@ -40,6 +40,7 @@ cc_library(
"//internal/platform:mac_address",
"//internal/platform:types",
"//internal/test",
"//location/nearby/sharing/lib/sync:sync_binding_prefs_cc_proto",
"//sharing/internal/api:platform",
"//sharing/internal/public:pref_names",
"//sharing/internal/public:types",
+1 -4
View File
@@ -38,8 +38,7 @@ FakeContext::FakeContext()
fake_connectivity_manager_(std::make_unique<FakeConnectivityManager>()),
fake_bluetooth_adapter_(std::make_unique<FakeBluetoothAdapter>()),
fake_fast_initiation_manager_(
std::make_unique<FakeFastInitiationManager>()),
executor_(std::make_unique<FakeTaskRunner>(fake_clock_.get(), 5)) {}
std::make_unique<FakeFastInitiationManager>()) {}
Clock* FakeContext::GetClock() const { return fake_clock_.get(); }
@@ -70,6 +69,4 @@ std::unique_ptr<TaskRunner> FakeContext::CreateConcurrentTaskRunner(
return std::make_unique<FakeTaskRunner>(fake_clock_.get(), concurrent_count);
}
TaskRunner* FakeContext::GetTaskRunner() { return executor_.get(); }
} // namespace nearby
-5
View File
@@ -47,7 +47,6 @@ class FakeContext : public Context {
std::unique_ptr<TaskRunner> CreateSequencedTaskRunner() const override;
std::unique_ptr<TaskRunner> CreateConcurrentTaskRunner(
uint32_t concurrent_count) const override;
TaskRunner* GetTaskRunner() override;
FakeClock* fake_clock() const { return fake_clock_.get(); }
FakeConnectivityManager* fake_connectivity_manager() const {
@@ -59,9 +58,6 @@ class FakeContext : public Context {
FakeFastInitiationManager* fake_fast_initiation_manager() const {
return fake_fast_initiation_manager_.get();
}
FakeTaskRunner* fake_task_runner() const {
return executor_.get();
}
FakeTaskRunner* last_sequenced_task_runner() const {
return last_sequenced_task_runner_;
@@ -72,7 +68,6 @@ class FakeContext : public Context {
std::unique_ptr<FakeConnectivityManager> fake_connectivity_manager_;
std::unique_ptr<FakeBluetoothAdapter> fake_bluetooth_adapter_;
std::unique_ptr<FakeFastInitiationManager> fake_fast_initiation_manager_;
std::unique_ptr<FakeTaskRunner> executor_;
mutable FakeTaskRunner* last_sequenced_task_runner_ = nullptr;
};
@@ -15,9 +15,6 @@
#include "sharing/internal/test/fake_context.h"
#include "gtest/gtest.h"
#include "absl/synchronization/notification.h"
#include "absl/time/time.h"
#include "internal/platform/task_runner.h"
namespace nearby {
namespace {
@@ -31,18 +28,5 @@ TEST(FakeContext, TestAccessMockContext) {
EXPECT_NE(context.CreateConcurrentTaskRunner(5), nullptr);
}
TEST(FakeContext, ExecuteTask) {
FakeContext context;
absl::Notification notification;
bool is_called = false;
context.GetTaskRunner()->PostTask([&]() {
is_called = true;
notification.Notify();
});
EXPECT_TRUE(notification.WaitForNotificationWithTimeout(absl::Seconds(1)));
EXPECT_TRUE(is_called);
}
} // namespace
} // namespace nearby
@@ -22,6 +22,7 @@
#include <variant>
#include <vector>
#include "location/nearby/sharing/lib/sync/sync_binding_prefs.pb.h"
#include "absl/container/flat_hash_map.h"
#include "absl/strings/str_cat.h"
#include "absl/strings/string_view.h"
@@ -35,7 +36,6 @@ namespace nearby {
using ::nearby::sharing::PrefNames;
using ::nearby::sharing::api::PrivateCertificateData;
using ::nearby::sharing::sync::SyncBindingPrefs;
using ::nearby::sharing::sync::SyncConfigPrefs;
// Preference suffix for the sync binding information.
constexpr absl::string_view kFileSyncBindingName = "FileSync";
@@ -243,12 +243,6 @@ void FakePreferenceManager::RemoveDictionaryItem(
NotifyPreferenceChanged(key);
}
void FakePreferenceManager::SetSyncConfigValue(absl::string_view binding_id,
const SyncConfigPrefs& value) {
SetValue(absl::StrCat(PrefNames::kSyncConfigPrefix, binding_id),
value.SerializeAsString());
}
void FakePreferenceManager::SetSyncBindingValue(
const SyncBindingPrefs& value) {
SetValue(absl::StrCat(PrefNames::kBindingConfigPrefix, kFileSyncBindingName),
@@ -339,21 +333,6 @@ std::optional<std::string> FakePreferenceManager::GetDictionaryStringValue(
return GetDictionaryValue<std::string>(key, dictionary_item);
}
std::optional<SyncConfigPrefs> FakePreferenceManager::GetSyncConfigValue(
absl::string_view binding_id) const {
std::string serialized_sync_config;
serialized_sync_config =
GetString(absl::StrCat(PrefNames::kSyncConfigPrefix, binding_id), "");
if (serialized_sync_config.empty()) {
return std::nullopt;
}
SyncConfigPrefs sync_config;
if (!sync_config.ParseFromString(serialized_sync_config)) {
return std::nullopt;
}
return sync_config;
}
std::optional<SyncBindingPrefs> FakePreferenceManager::GetSyncBindingValue()
const {
std::string serialized_sync_binding;
@@ -379,13 +358,6 @@ void FakePreferenceManager::Remove(absl::string_view key) {
NotifyPreferenceChanged(key);
}
void FakePreferenceManager::RemoveAllSyncConfigs() {
absl::MutexLock lock(mutex_);
absl::erase_if(values_, [](const auto& item) {
return item.first.starts_with(PrefNames::kSyncConfigPrefix);
});
}
void FakePreferenceManager::RemoveAllBindingConfigs() {
absl::MutexLock lock(mutex_);
absl::erase_if(values_, [](const auto& item) {
@@ -23,6 +23,7 @@
#include <variant>
#include <vector>
#include "location/nearby/sharing/lib/sync/sync_binding_prefs.pb.h"
#include "absl/base/thread_annotations.h"
#include "absl/container/flat_hash_map.h"
#include "absl/strings/string_view.h"
@@ -74,9 +75,6 @@ class FakePreferenceManager : public nearby::sharing::api::PreferenceManager {
void RemoveDictionaryItem(absl::string_view key,
absl::string_view dictionary_item) override;
void SetSyncConfigValue(
absl::string_view binding_id,
const nearby::sharing::sync::SyncConfigPrefs& value) override;
void SetSyncBindingValue(
const nearby::sharing::sync::SyncBindingPrefs& value) override;
@@ -113,13 +111,10 @@ class FakePreferenceManager : public nearby::sharing::api::PreferenceManager {
absl::string_view key, absl::string_view dictionary_item) const override;
std::optional<std::string> GetDictionaryStringValue(
absl::string_view key, absl::string_view dictionary_item) const override;
std::optional<nearby::sharing::sync::SyncConfigPrefs>
GetSyncConfigValue(absl::string_view binding_id) const override;
std::optional<nearby::sharing::sync::SyncBindingPrefs>
GetSyncBindingValue() const override;
void Remove(absl::string_view key) override;
void RemoveAllSyncConfigs() override;
void RemoveAllBindingConfigs() override;
void AddObserver(