From 0fe6eb566f22342422f326c8d25b2e154d5bf388 Mon Sep 17 00:00:00 2001 From: Francis Tsui Date: Wed, 17 Dec 2025 13:54:35 -0800 Subject: [PATCH] Remove unnecessary InputFile sturct. PiperOrigin-RevId: 845905595 --- sharing/incoming_share_session.cc | 2 +- sharing/incoming_share_session_test.cc | 3 +- sharing/nearby_connections_manager_impl.cc | 4 +- .../nearby_connections_manager_impl_test.cc | 38 +++++++++---------- sharing/nearby_connections_service.cc | 7 ++-- sharing/nearby_connections_types.h | 33 ++++------------ .../nearby_connections_types_payload_test.cc | 14 ------- sharing/nearby_sharing_service_impl_test.cc | 5 +-- sharing/outgoing_share_session.cc | 4 +- sharing/outgoing_share_session_test.cc | 2 +- 10 files changed, 39 insertions(+), 73 deletions(-) diff --git a/sharing/incoming_share_session.cc b/sharing/incoming_share_session.cc index c62c6321..ac8a1f94 100644 --- a/sharing/incoming_share_session.cc +++ b/sharing/incoming_share_session.cc @@ -312,7 +312,7 @@ bool IncomingShareSession::UpdateFilePayloadPaths() { continue; } - FilePath file_path = incoming_payload->content.file_payload.file.path; + FilePath file_path = incoming_payload->content.file_payload.file_path; VLOG(1) << __func__ << ": Updated file_path=" << file_path.ToString(); file.set_file_path(file_path); } diff --git a/sharing/incoming_share_session_test.cc b/sharing/incoming_share_session_test.cc index 47d315d2..596697f6 100644 --- a/sharing/incoming_share_session_test.cc +++ b/sharing/incoming_share_session_test.cc @@ -89,8 +89,7 @@ constexpr absl::string_view kEndpointId = "ABCD"; std::unique_ptr CreateFilePayload(int64_t payload_id, FilePath file_path) { - auto file_payload = - std::make_unique(InputFile(file_path.ToString())); + auto file_payload = std::make_unique(file_path); file_payload->id = payload_id; return file_payload; } diff --git a/sharing/nearby_connections_manager_impl.cc b/sharing/nearby_connections_manager_impl.cc index c036113e..10457dca 100644 --- a/sharing/nearby_connections_manager_impl.cc +++ b/sharing/nearby_connections_manager_impl.cc @@ -809,7 +809,7 @@ void NearbyConnectionsManagerImpl::DeleteUnknownFilePayloadAndCancel( Payload& payload) { if (payload.content.type == PayloadContent::Type::kFile) { MutexLock lock(&mutex_); - file_paths_to_delete_.insert(payload.content.file_payload.file.path); + file_paths_to_delete_.insert(payload.content.file_payload.file_path); } Cancel(payload.id); } @@ -900,7 +900,7 @@ void NearbyConnectionsManagerImpl::OnPayloadTransferUpdate( nearby_connections_service_->CancelPayload(kServiceId, payload->id, [](Status status) {}); ProcessUnknownFilePathsToDelete(update.status, payload->content.type, - payload->content.file_payload.file.path); + payload->content.file_payload.file_path); return; } } diff --git a/sharing/nearby_connections_manager_impl_test.cc b/sharing/nearby_connections_manager_impl_test.cc index 61efa4c1..4f602471 100644 --- a/sharing/nearby_connections_manager_impl_test.cc +++ b/sharing/nearby_connections_manager_impl_test.cc @@ -404,7 +404,7 @@ class NearbyConnectionsManagerImplTest : public testing::Test { FilePayload file_payload = std::move(payload->content.file_payload); std::vector payload_bytes(file_payload.size); - std::ifstream payload_stream(file_payload.file.path.GetPath(), + std::ifstream payload_stream(file_payload.file_path.GetPath(), std::ios::in | std::ios::binary); ASSERT_TRUE(payload_stream.good()); payload_stream.read(reinterpret_cast(payload_bytes.data()), @@ -419,7 +419,7 @@ class NearbyConnectionsManagerImplTest : public testing::Test { // Manually setup payload id, because the tested id is not generated from // file name. - auto payload = std::make_unique(InputFile(file.ToString())); + auto payload = std::make_unique(file); payload->id = payload_id; nearby_connections_manager_->Send(kRemoteEndpointId, std::move(payload), @@ -1408,10 +1408,10 @@ TEST_F(NearbyConnectionsManagerImplTest, InitializeTemporaryFile(file1); InitializeTemporaryFile(file2); - payload_listener_remote.payload_cb( - kRemoteEndpointId, Payload(kPayloadId, InputFile(file1.ToString()))); - payload_listener_remote.payload_cb( - kRemoteEndpointId, Payload(kPayloadId2, InputFile(file2.ToString()))); + payload_listener_remote.payload_cb(kRemoteEndpointId, + Payload(kPayloadId, file1)); + payload_listener_remote.payload_cb(kRemoteEndpointId, + Payload(kPayloadId2, file2)); const std::vector byte_payload(std::begin(kBytePayload), std::end(kBytePayload)); @@ -1522,7 +1522,7 @@ TEST_F(NearbyConnectionsManagerImplTest, IncomingFilePayload) { InitializeTemporaryFile(file); payload_listener_remote.payload_cb( - kRemoteEndpointId, Payload(kPayloadId, InputFile(file.ToString()))); + kRemoteEndpointId, Payload(kPayloadId, file)); absl::Notification payload_notification; EXPECT_CALL(*payload_listener, OnStatusUpdate(::testing::_)).WillOnce([&]() { @@ -1542,7 +1542,7 @@ TEST_F(NearbyConnectionsManagerImplTest, IncomingFilePayload) { ASSERT_TRUE(payload->content.is_file()); std::vector payload_bytes(payload->content.file_payload.size); std::ifstream payload_stream( - payload->content.file_payload.file.path.GetPath(), + payload->content.file_payload.file_path.GetPath(), std::ios::in | std::ios::binary); ASSERT_TRUE(payload_stream.good()); payload_stream.read(reinterpret_cast(payload_bytes.data()), @@ -1572,8 +1572,8 @@ TEST_F(NearbyConnectionsManagerImplTest, ClearIncomingPayloads) { FilePath file = Files::GetTemporaryDirectory().append(FilePath("file.jpg")); InitializeTemporaryFile(file); - payload_listener_remote.payload_cb( - kRemoteEndpointId, Payload(kPayloadId, InputFile(file.ToString()))); + payload_listener_remote.payload_cb(kRemoteEndpointId, + Payload(kPayloadId, file)); absl::Notification payload_notification; EXPECT_CALL(*payload_listener, OnStatusUpdate(::testing::_)).WillOnce([&]() { @@ -1862,8 +1862,8 @@ TEST_F(NearbyConnectionsManagerImplTest, incoming_connection_listener, payload_listener_remote) != nullptr); FilePath file = Files::GetTemporaryDirectory().append(FilePath("file.jpg")); - payload_listener_remote.payload_cb( - kRemoteEndpointId, Payload(kPayloadId, InputFile(file.ToString()))); + payload_listener_remote.payload_cb(kRemoteEndpointId, + Payload(kPayloadId, file)); nearby_connections_manager_->OnPayloadTransferUpdateForTesting( kRemoteEndpointId, @@ -1895,8 +1895,8 @@ TEST_F(NearbyConnectionsManagerImplTest, OnPayloadReceivedForUnknownFile) { incoming_connection_listener, payload_listener_remote) != nullptr); FilePath file = Files::GetTemporaryDirectory().append(FilePath("file.jpg")); - payload_listener_remote.payload_cb( - kRemoteEndpointId, Payload(kPayloadId, InputFile(file.ToString()))); + payload_listener_remote.payload_cb(kRemoteEndpointId, + Payload(kPayloadId, file)); // Flag is on. Add unknown file paths with kCanceled to the list. NearbyFlags::GetInstance().OverrideBoolFlagValue( @@ -1904,12 +1904,12 @@ TEST_F(NearbyConnectionsManagerImplTest, OnPayloadReceivedForUnknownFile) { kDeleteUnexpectedReceivedFileFix, true); nearby_connections_manager_->ClearIncomingPayloads(); - Payload payload(kPayloadId, InputFile(file.ToString())); + Payload payload(kPayloadId, file); nearby_connections_manager_->OnPayloadReceivedForTesting(kRemoteEndpointId, payload); FilePath file2 = Files::GetTemporaryDirectory().append(FilePath("file2.jpg")); - Payload payload2(kPayloadId, InputFile(file2.ToString())); + Payload payload2(kPayloadId, file2); nearby_connections_manager_->OnPayloadReceivedForTesting(kRemoteEndpointId, payload2); auto unknown_file_paths = @@ -1922,7 +1922,7 @@ TEST_F(NearbyConnectionsManagerImplTest, OnPayloadReceivedForUnknownFile) { nearby_connections_manager_->RegisterPayloadStatusListener( kPayloadId, payload_listener->GetWeakPtr()); FilePath file3 = Files::GetTemporaryDirectory().append(FilePath("file3.jpg")); - Payload payload3(kPayloadId, InputFile(file3.ToString())); + Payload payload3(kPayloadId, file3); nearby_connections_manager_->OnPayloadReceivedForTesting(kRemoteEndpointId, payload3); unknown_file_paths = @@ -1954,7 +1954,7 @@ TEST_F(NearbyConnectionsManagerImplTest, FilePath file = Files::GetTemporaryDirectory().append(FilePath("file.jpg")); - Payload payload(kPayloadId, InputFile(file.ToString())); + Payload payload(kPayloadId, file); nearby_connections_manager_->OnPayloadReceivedForTesting(kRemoteEndpointId, payload); @@ -1984,7 +1984,7 @@ TEST_F(NearbyConnectionsManagerImplTest, }); FilePath file2 = Files::GetTemporaryDirectory().append(FilePath("file2.jpg")); - Payload payload2(kPayloadId, InputFile(file2.ToString())); + Payload payload2(kPayloadId, file2); nearby_connections_manager_->OnPayloadReceivedForTesting(kRemoteEndpointId, payload2); unknown_file_paths = diff --git a/sharing/nearby_connections_service.cc b/sharing/nearby_connections_service.cc index 96ed757f..549a6f91 100644 --- a/sharing/nearby_connections_service.cc +++ b/sharing/nearby_connections_service.cc @@ -21,6 +21,7 @@ #include #include +#include "internal/base/file_path.h" #include "internal/platform/file.h" #include "sharing/internal/public/logging.h" #include "sharing/nearby_connections_types.h" @@ -45,7 +46,7 @@ Payload ConvertToPayload(NcPayload payload) { std::string parent_folder = payload.GetParentFolder(); VLOG(1) << __func__ << ": Payload file_path=" << file_path << ", parent_folder = " << parent_folder; - return Payload(payload.GetId(), InputFile(file_path), parent_folder); + return Payload(payload.GetId(), FilePath(file_path), parent_folder); } default: return Payload(); @@ -56,9 +57,9 @@ NcPayload ConvertToServicePayload(Payload payload) { switch (payload.content.type) { case PayloadContent::Type::kFile: { int64_t file_size = payload.content.file_payload.size; - std::string file_path = payload.content.file_payload.file.path.ToString(); + std::string file_path = payload.content.file_payload.file_path.ToString(); std::string file_name = - payload.content.file_payload.file.path.GetFileName().ToString(); + payload.content.file_payload.file_path.GetFileName().ToString(); std::string parent_folder = payload.content.file_payload.parent_folder; std::replace(parent_folder.begin(), parent_folder.end(), '\\', '/'); VLOG(1) << __func__ << ": NC Payload file_path=" << file_path diff --git a/sharing/nearby_connections_types.h b/sharing/nearby_connections_types.h index a30cba63..fddfca4a 100644 --- a/sharing/nearby_connections_types.h +++ b/sharing/nearby_connections_types.h @@ -357,14 +357,6 @@ enum class DistanceInfo { kFar = 4, }; -struct InputFile { - InputFile() = default; - explicit InputFile(absl::string_view file_path) - : path(file_path) {} - - FilePath path; -}; - // A simple payload containing raw bytes. struct BytesPayload { // The bytes of this payload. @@ -376,7 +368,7 @@ struct FilePayload { // The file to which this payload points to. When sending this payload, the // NearbyConnections library reads from this file. When receiving a file // payload it writes to this file. - InputFile file; + FilePath file_path; int64_t size; std::string parent_folder; }; @@ -410,35 +402,26 @@ struct Payload { explicit Payload(std::vector bytes) : Payload(GenerateId(), std::move(bytes)) {} - explicit Payload(InputFile file, - absl::string_view parent_folder = absl::string_view()) { - id = std::hash()(file.path.ToString()); - - content.type = PayloadContent::Type::kFile; - std::optional size = Files::GetFileSize(file.path); - if (size.has_value()) { - content.file_payload.size = *size; - } - - content.file_payload.file = std::move(file); - content.file_payload.parent_folder = std::string(parent_folder); - } + explicit Payload(FilePath file_path, + absl::string_view parent_folder = absl::string_view()) + : Payload(std::hash()(file_path.ToString()), file_path, + parent_folder) {} Payload(int64_t id, std::vector bytes) : id(id) { content.type = PayloadContent::Type::kBytes; content.bytes_payload.bytes = std::move(bytes); } - Payload(int64_t id, InputFile file, + Payload(int64_t id, FilePath file_path, absl::string_view parent_folder = absl::string_view()) : id(id) { content.type = PayloadContent::Type::kFile; - std::optional size = Files::GetFileSize(file.path); + std::optional size = Files::GetFileSize(file_path); if (size.has_value()) { content.file_payload.size = *size; } - content.file_payload.file = std::move(file); + content.file_payload.file_path = file_path; content.file_payload.parent_folder = std::string(parent_folder); } diff --git a/sharing/nearby_connections_types_payload_test.cc b/sharing/nearby_connections_types_payload_test.cc index abcaff57..d4bfc39c 100644 --- a/sharing/nearby_connections_types_payload_test.cc +++ b/sharing/nearby_connections_types_payload_test.cc @@ -21,20 +21,6 @@ namespace nearby::sharing { using ::testing::Eq; -TEST(NearbyConnectionSharingTypesPayloadTest, FromInputFileUTF8) { - InputFile input_file("/为甚么/tmp/test.txt"); - Payload payload(input_file); - EXPECT_THAT(payload.id, Eq(7724502655048749887LL)); - EXPECT_THAT(payload.content.type, Eq(PayloadContent::Type::kFile)); -} - -TEST(NearbyConnectionSharingTypesPayloadTest, FromInputFileWithId) { - InputFile input_file("/为甚么/tmp/test.txt"); - Payload payload(1234, input_file); - EXPECT_THAT(payload.id, Eq(1234LL)); - EXPECT_THAT(payload.content.type, Eq(PayloadContent::Type::kFile)); -} - TEST(NearbyConnectionSharingTypesPayloadTest, FromBytes) { Payload payload({1, 2, 3, 4, 5}); EXPECT_THAT(payload.content.type, Eq(PayloadContent::Type::kBytes)); diff --git a/sharing/nearby_sharing_service_impl_test.cc b/sharing/nearby_sharing_service_impl_test.cc index cc8b6d0c..7e55aeef 100644 --- a/sharing/nearby_sharing_service_impl_test.cc +++ b/sharing/nearby_sharing_service_impl_test.cc @@ -262,8 +262,7 @@ constexpr absl::Duration kCertificateDownloadDuringDiscoveryPeriod = std::unique_ptr GetFilePayload(int64_t payload_id) { FilePath path = Files::GetTemporaryDirectory().append(FilePath(absl::StrCat(payload_id))); - InputFile input_file{path.ToString()}; - return std::make_unique(input_file); + return std::make_unique(path); } std::unique_ptr GetTextPayload(int64_t payload_id, @@ -3492,7 +3491,7 @@ TEST_F(NearbySharingServiceImplTest, SendFilesSuccess) { // Expect the file payload to be sent in the end. PayloadInfo info = GetWrittenPayload(); ASSERT_TRUE(info.payload->content.is_file()); - FilePath file = info.payload->content.file_payload.file.path; + FilePath file = info.payload->content.file_payload.file_path; ASSERT_TRUE(Files::FileExists(file)); } diff --git a/sharing/outgoing_share_session.cc b/sharing/outgoing_share_session.cc index 5741d770..0cb955c2 100644 --- a/sharing/outgoing_share_session.cc +++ b/sharing/outgoing_share_session.cc @@ -230,9 +230,7 @@ bool OutgoingShareSession::CreateFilePayloads( const NearbyFileHandler::FileInfo& file_info = files[i]; FileAttachment& attachment = container.GetMutableFileAttachment(i); attachment.set_size(file_info.size); - InputFile input_file; - input_file.path = file_info.file_path; - Payload payload(input_file, attachment.parent_folder()); + Payload payload(file_info.file_path, attachment.parent_folder()); payload.content.file_payload.size = file_info.size; file_payloads_.push_back(std::move(payload)); SetAttachmentPayloadId(attachment.id(), file_payloads_.back().id); diff --git a/sharing/outgoing_share_session_test.cc b/sharing/outgoing_share_session_test.cc index 886e3325..b3e043dd 100644 --- a/sharing/outgoing_share_session_test.cc +++ b/sharing/outgoing_share_session_test.cc @@ -246,7 +246,7 @@ TEST_F(OutgoingShareSessionTest, CreateFilePayloads) { EXPECT_THAT(payloads[0].content.file_payload.size, Eq(12355L)); EXPECT_THAT(payloads[0].content.file_payload.parent_folder, Eq(file1_.parent_folder())); - EXPECT_THAT(payloads[0].content.file_payload.file.path, + EXPECT_THAT(payloads[0].content.file_payload.file_path, Eq(file1_.file_path())); EXPECT_THAT(attachment_payload_map, SizeIs(1));