mirror of
https://github.com/kidfromjupiter/nearby.git
synced 2026-09-16 15:36:12 -04:00
Remove SyncConfig frames.
PiperOrigin-RevId: 891975054
This commit is contained in:
committed by
Copybara-Service
parent
90028655d2
commit
ac70b1f91f
@@ -236,8 +236,6 @@ cc_library(
|
||||
"//internal/base:file_path",
|
||||
"//internal/base:files",
|
||||
"//internal/platform:types",
|
||||
"//location/nearby/sharing/lib/sync:sync_config_prefs_cc_proto",
|
||||
"//location/nearby/sharing/lib/sync:sync_manager",
|
||||
"//proto:sharing_enums_cc_proto",
|
||||
"//sharing/analytics",
|
||||
"//sharing/certificates",
|
||||
|
||||
@@ -67,7 +67,6 @@ void RegisterNearbySharingPrefs(PreferenceManager& preference_manager,
|
||||
preference_manager.Remove(PrefNames::kUsers);
|
||||
preference_manager.SetBoolean(PrefNames::kAdvancedProtectionEnabled, false);
|
||||
|
||||
preference_manager.RemoveAllSyncConfigs();
|
||||
preference_manager.RemoveAllBindingConfigs();
|
||||
}
|
||||
|
||||
|
||||
@@ -24,8 +24,6 @@
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
#include "location/nearby/sharing/lib/sync/sync_config_prefs.pb.h"
|
||||
#include "location/nearby/sharing/lib/sync/sync_manager.h"
|
||||
#include "absl/container/flat_hash_map.h"
|
||||
#include "absl/functional/any_invocable.h"
|
||||
#include "absl/time/time.h"
|
||||
@@ -53,16 +51,12 @@
|
||||
namespace nearby::sharing {
|
||||
namespace {
|
||||
|
||||
using ::location::nearby::proto::sharing::OSType;
|
||||
using ::location::nearby::proto::sharing::ResponseToIntroduction;
|
||||
using ::nearby::sharing::service::proto::AppMetadata;
|
||||
using ::nearby::sharing::service::proto::ConnectionResponseFrame;
|
||||
using ::nearby::sharing::service::proto::Frame;
|
||||
using ::nearby::sharing::service::proto::IntroductionFrame;
|
||||
using ::nearby::sharing::service::proto::SyncConfig;
|
||||
using ::nearby::sharing::service::proto::V1Frame;
|
||||
using ::nearby::sharing::service::proto::WifiCredentials;
|
||||
using ::nearby::sharing::sync::SyncConfigPrefs;
|
||||
|
||||
} // namespace
|
||||
|
||||
@@ -499,43 +493,4 @@ void IncomingShareSession::PushPayloadTransferUpdateForTest(
|
||||
payload_updates_queue()->Queue(std::move(update));
|
||||
}
|
||||
|
||||
void IncomingShareSession::ProcessSyncFrame(
|
||||
SyncManager& sync_manager,
|
||||
const nearby::sharing::service::proto::SyncFrame& sync_frame) {
|
||||
if (session_phase_ != SessionPhase::kUninitialized) {
|
||||
LOG(WARNING) << "Ignore SyncFrame received in unexpected session phase: "
|
||||
<< static_cast<int>(session_phase_);
|
||||
return;
|
||||
}
|
||||
// TODO: b/485304482 - Check that the connected device is authenticated and is
|
||||
// part of a sync pairing.
|
||||
if (!certificate().has_value()) {
|
||||
LOG(WARNING) << "Ignore SyncFrame received from unauthenticated device.";
|
||||
return;
|
||||
}
|
||||
if (false &&
|
||||
!sync_manager.IsFileSyncBinding(certificate()->binding_id())) {
|
||||
LOG(WARNING) << "Ignore SyncFrame received in unexpected binding id: "
|
||||
<< certificate()->binding_id();
|
||||
return;
|
||||
}
|
||||
session_phase_ = SessionPhase::kSync;
|
||||
if (sync_frame.has_handshake()) {
|
||||
VLOG(1) << __func__ << ": Received FileSync Handshake";
|
||||
WriteSyncConfigFrame(
|
||||
sync_manager.GetSyncConfig(certificate()->binding_id())
|
||||
.value_or(SyncConfigPrefs())
|
||||
.sync_config());
|
||||
}
|
||||
}
|
||||
|
||||
void IncomingShareSession::WriteSyncConfigFrame(const SyncConfig& config) {
|
||||
Frame frame;
|
||||
frame.set_version(Frame::V1);
|
||||
V1Frame* v1_frame = frame.mutable_v1();
|
||||
v1_frame->set_type(V1Frame::FILE_SYNC);
|
||||
*v1_frame->mutable_file_sync()->mutable_config() = config;
|
||||
WriteFrame(frame);
|
||||
}
|
||||
|
||||
} // namespace nearby::sharing
|
||||
|
||||
@@ -21,7 +21,6 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "location/nearby/sharing/lib/sync/sync_manager.h"
|
||||
#include "absl/functional/any_invocable.h"
|
||||
#include "internal/base/file_path.h"
|
||||
#include "internal/platform/clock.h"
|
||||
@@ -104,9 +103,6 @@ class IncomingShareSession : public ShareSession {
|
||||
// Called when an incoming connection is established.
|
||||
void OnConnected(NearbyConnection* connection);
|
||||
|
||||
void ProcessSyncFrame(nearby::sharing::SyncManager& sync_manager,
|
||||
const nearby::sharing::service::proto::SyncFrame& sync_frame);
|
||||
|
||||
protected:
|
||||
void InvokeTransferUpdateCallback(const TransferMetadata& metadata) override;
|
||||
|
||||
@@ -128,9 +124,6 @@ class IncomingShareSession : public ShareSession {
|
||||
// Returns true if all payloads were successfully finalized.
|
||||
bool FinalizePayloads();
|
||||
|
||||
void WriteSyncConfigFrame(
|
||||
const nearby::sharing::service::proto::SyncConfig& config);
|
||||
|
||||
std::function<void(const IncomingShareSession&, const TransferMetadata&)>
|
||||
transfer_update_callback_;
|
||||
|
||||
|
||||
@@ -44,7 +44,6 @@ cc_library(
|
||||
"//internal/platform:types",
|
||||
"//location/nearby/sharing/lib/account:account_manager",
|
||||
"//location/nearby/sharing/lib/sync:sync_binding_prefs_cc_proto",
|
||||
"//location/nearby/sharing/lib/sync:sync_config_prefs_cc_proto",
|
||||
"//sharing/proto:share_cc_proto",
|
||||
"@com_google_absl//absl/functional:any_invocable",
|
||||
"@com_google_absl//absl/strings:string_view",
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
#include <vector>
|
||||
|
||||
#include "location/nearby/sharing/lib/sync/sync_binding_prefs.pb.h"
|
||||
#include "location/nearby/sharing/lib/sync/sync_config_prefs.pb.h"
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "absl/time/time.h"
|
||||
#include "absl/types/span.h"
|
||||
@@ -81,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;
|
||||
|
||||
@@ -127,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;
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -41,7 +41,6 @@ cc_library(
|
||||
"//internal/platform:types",
|
||||
"//internal/test",
|
||||
"//location/nearby/sharing/lib/sync:sync_binding_prefs_cc_proto",
|
||||
"//location/nearby/sharing/lib/sync:sync_config_prefs_cc_proto",
|
||||
"//sharing/internal/api:platform",
|
||||
"//sharing/internal/public:pref_names",
|
||||
"//sharing/internal/public:types",
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
#include <vector>
|
||||
|
||||
#include "location/nearby/sharing/lib/sync/sync_binding_prefs.pb.h"
|
||||
#include "location/nearby/sharing/lib/sync/sync_config_prefs.pb.h"
|
||||
#include "absl/container/flat_hash_map.h"
|
||||
#include "absl/strings/str_cat.h"
|
||||
#include "absl/strings/string_view.h"
|
||||
@@ -37,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";
|
||||
@@ -245,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),
|
||||
@@ -341,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;
|
||||
@@ -381,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) {
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
#include <vector>
|
||||
|
||||
#include "location/nearby/sharing/lib/sync/sync_binding_prefs.pb.h"
|
||||
#include "location/nearby/sharing/lib/sync/sync_config_prefs.pb.h"
|
||||
#include "absl/base/thread_annotations.h"
|
||||
#include "absl/container/flat_hash_map.h"
|
||||
#include "absl/strings/string_view.h"
|
||||
@@ -76,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;
|
||||
|
||||
@@ -115,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(
|
||||
|
||||
@@ -2498,12 +2498,6 @@ void NearbySharingServiceImpl::OnIncomingSessionFrameRead(
|
||||
OnReceivedIntroduction(*session, frame->introduction());
|
||||
// OnReceivedIntroduction will schedule the next ReadFrame.
|
||||
return;
|
||||
case service::proto::V1Frame::FILE_SYNC:
|
||||
if (NearbyFlags::GetInstance().GetBoolFlag(
|
||||
config_package_nearby::nearby_sharing_feature::kEnableFileSync)) {
|
||||
session->ProcessSyncFrame(sync_manager_, frame->file_sync());
|
||||
}
|
||||
break;
|
||||
default:
|
||||
LOG(ERROR) << __func__ << ": Discarding unknown frame of type: "
|
||||
<< static_cast<int>(frame->type());
|
||||
|
||||
Reference in New Issue
Block a user