mirror of
https://github.com/kidfromjupiter/nearby.git
synced 2026-09-14 22:56:12 -04:00
Change TransferStatus to be similar to Android.
PiperOrigin-RevId: 666827970
This commit is contained in:
committed by
Copybara-Service
parent
725c8e83b6
commit
a0aebee34c
@@ -79,8 +79,7 @@ void IncomingShareSession::InvokeTransferUpdateCallback(
|
||||
}
|
||||
|
||||
bool IncomingShareSession::OnNewConnection(NearbyConnection* connection) {
|
||||
set_disconnect_status(
|
||||
TransferMetadata::Status::kAwaitingRemoteAcceptanceFailed);
|
||||
set_disconnect_status(TransferMetadata::Status::kFailed);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -190,8 +189,7 @@ bool IncomingShareSession::ReadyForTransfer(
|
||||
return false;
|
||||
}
|
||||
ready_for_accept_ = true;
|
||||
set_disconnect_status(
|
||||
TransferMetadata::Status::kUnexpectedDisconnection);
|
||||
set_disconnect_status(TransferMetadata::Status::kFailed);
|
||||
|
||||
mutual_acceptance_timeout_ = std::make_unique<ThreadTimer>(
|
||||
service_thread(), "incoming_mutual_acceptance_timeout",
|
||||
|
||||
@@ -2473,7 +2473,7 @@ void NearbySharingServiceImpl::OnOutgoingConnection(
|
||||
nearby_connections_manager_->GetRawAuthenticationToken(
|
||||
session.endpoint_id());
|
||||
if (!token.has_value()) {
|
||||
session.Abort(TransferMetadata::Status::kPairedKeyVerificationFailed);
|
||||
session.Abort(TransferMetadata::Status::kDeviceAuthenticationFailed);
|
||||
return;
|
||||
}
|
||||
session.RunPairedKeyVerification(
|
||||
@@ -2601,7 +2601,7 @@ void NearbySharingServiceImpl::OnIncomingAdvertisementDecoded(
|
||||
NL_LOG(WARNING) << __func__
|
||||
<< ": Failed to parse incoming connection from endpoint - "
|
||||
<< endpoint_id << ", disconnecting.";
|
||||
session.Abort(TransferMetadata::Status::kDecodeAdvertisementFailed);
|
||||
session.Abort(TransferMetadata::Status::kFailed);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2724,8 +2724,7 @@ void NearbySharingServiceImpl::OnOutgoingTransferUpdate(
|
||||
session.os_type());
|
||||
is_connecting_ = false;
|
||||
OnTransferComplete();
|
||||
} else if (metadata.status() == TransferMetadata::Status::kMediaDownloading ||
|
||||
metadata.status() ==
|
||||
} else if (metadata.status() ==
|
||||
TransferMetadata::Status::kAwaitingLocalConfirmation) {
|
||||
is_connecting_ = false;
|
||||
OnTransferStarted(/*is_incoming=*/false);
|
||||
@@ -2804,7 +2803,7 @@ void NearbySharingServiceImpl::OnIncomingDecryptedCertificate(
|
||||
NL_LOG(WARNING) << __func__
|
||||
<< ": Failed to convert advertisement to share target for "
|
||||
"incoming connection, disconnecting";
|
||||
it->second.Abort(TransferMetadata::Status::kMissingShareTarget);
|
||||
it->second.Abort(TransferMetadata::Status::kFailed);
|
||||
return;
|
||||
}
|
||||
// Remove placeholder share target since we are creating the actual share
|
||||
@@ -2830,7 +2829,7 @@ void NearbySharingServiceImpl::OnIncomingDecryptedCertificate(
|
||||
session.endpoint_id());
|
||||
|
||||
if (!token.has_value()) {
|
||||
session.Abort(TransferMetadata::Status::kPairedKeyVerificationFailed);
|
||||
session.Abort(TransferMetadata::Status::kDeviceAuthenticationFailed);
|
||||
return;
|
||||
}
|
||||
session.RunPairedKeyVerification(
|
||||
@@ -2859,7 +2858,7 @@ void NearbySharingServiceImpl::OnIncomingConnectionKeyVerificationDone(
|
||||
result, share_target_os_type,
|
||||
absl::bind_front(&NearbySharingServiceImpl::OnReceivedIntroduction,
|
||||
this, share_target_id))) {
|
||||
session->Abort(TransferMetadata::Status::kPairedKeyVerificationFailed);
|
||||
session->Abort(TransferMetadata::Status::kDeviceAuthenticationFailed);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2873,7 +2872,7 @@ void NearbySharingServiceImpl::OnOutgoingConnectionKeyVerificationDone(
|
||||
}
|
||||
|
||||
if (!session->ProcessKeyVerificationResult(result, share_target_os_type)) {
|
||||
session->Abort(TransferMetadata::Status::kPairedKeyVerificationFailed);
|
||||
session->Abort(TransferMetadata::Status::kDeviceAuthenticationFailed);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2892,7 +2891,7 @@ void NearbySharingServiceImpl::OnOutgoingConnectionKeyVerificationDone(
|
||||
})) {
|
||||
NL_LOG(WARNING) << __func__
|
||||
<< ": No payloads tied to transfer, disconnecting.";
|
||||
session->Abort(TransferMetadata::Status::kMissingPayloads);
|
||||
session->Abort(TransferMetadata::Status::kMediaUnavailable);
|
||||
return;
|
||||
}
|
||||
// Auto Accept if key verification is successful or skip sender confirmation.
|
||||
@@ -2921,7 +2920,7 @@ void NearbySharingServiceImpl::OnReceivedIntroduction(
|
||||
}
|
||||
|
||||
if (!frame.has_value()) {
|
||||
session->Abort(TransferMetadata::Status::kInvalidIntroductionFrame);
|
||||
session->Abort(TransferMetadata::Status::kFailed);
|
||||
NL_LOG(WARNING) << __func__ << ": Invalid introduction frame";
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2347,8 +2347,7 @@ TEST_F(NearbySharingServiceImplTest,
|
||||
const AttachmentContainer& container,
|
||||
TransferMetadata metadata) {
|
||||
EXPECT_TRUE(metadata.is_final_status());
|
||||
EXPECT_EQ(TransferMetadata::Status::kAwaitingRemoteAcceptanceFailed,
|
||||
metadata.status());
|
||||
EXPECT_EQ(TransferMetadata::Status::kFailed, metadata.status());
|
||||
}));
|
||||
|
||||
SetUpForegroundReceiveSurface(callback);
|
||||
@@ -2499,8 +2498,7 @@ TEST_F(NearbySharingServiceImplTest,
|
||||
const AttachmentContainer& container,
|
||||
TransferMetadata metadata) {
|
||||
EXPECT_TRUE(metadata.is_final_status());
|
||||
EXPECT_EQ(metadata.status(),
|
||||
TransferMetadata::Status::kUnexpectedDisconnection);
|
||||
EXPECT_EQ(metadata.status(), TransferMetadata::Status::kFailed);
|
||||
}));
|
||||
|
||||
sharing_service_task_runner_->PostTask([this]() { connection_->Close(); });
|
||||
@@ -3066,7 +3064,7 @@ TEST_F(NearbySharingServiceImplTest,
|
||||
OnTransferUpdate(
|
||||
testing::_, testing::_,
|
||||
nearby::sharing::HasStatus(
|
||||
TransferMetadata::Status::kPairedKeyVerificationFailed)));
|
||||
TransferMetadata::Status::kDeviceAuthenticationFailed)));
|
||||
|
||||
service_->OnIncomingConnection(kEndpointId, CreateTestEndpointInfo(),
|
||||
connection_.get());
|
||||
@@ -3240,7 +3238,7 @@ TEST_F(NearbySharingServiceImplTest, SendTextFailedToConnect) {
|
||||
ExpectTransferUpdates(
|
||||
transfer_callback, target_id,
|
||||
{TransferMetadata::Status::kConnecting,
|
||||
TransferMetadata::Status::kFailedToInitiateOutgoingConnection},
|
||||
TransferMetadata::Status::kFailed},
|
||||
[&]() { notification.Notify(); });
|
||||
EXPECT_CALL(*mock_app_info_, SetActiveFlag());
|
||||
|
||||
@@ -3261,7 +3259,7 @@ TEST_F(NearbySharingServiceImplTest, SendTextFailedKeyVerification) {
|
||||
ExpectTransferUpdates(
|
||||
transfer_callback, target_id,
|
||||
{TransferMetadata::Status::kConnecting,
|
||||
TransferMetadata::Status::kPairedKeyVerificationFailed},
|
||||
TransferMetadata::Status::kDeviceAuthenticationFailed},
|
||||
[&]() { notification.Notify(); });
|
||||
|
||||
SetUpKeyVerification(/*is_incoming=*/false, PairedKeyResultFrame::FAIL);
|
||||
|
||||
@@ -168,31 +168,16 @@ AttachmentTransmissionStatus ConvertToTransmissionStatus(
|
||||
case TransferMetadata::Status::kFailed:
|
||||
return AttachmentTransmissionStatus::
|
||||
FAILED_ATTACHMENT_TRANSMISSION_STATUS;
|
||||
case TransferMetadata::Status::kAwaitingRemoteAcceptanceFailed:
|
||||
return AttachmentTransmissionStatus::
|
||||
AWAITING_REMOTE_ACCEPTANCE_FAILED_ATTACHMENT;
|
||||
case TransferMetadata::Status::kFailedToInitiateOutgoingConnection:
|
||||
return AttachmentTransmissionStatus::FAILED_NULL_CONNECTION_INIT_OUTGOING;
|
||||
case TransferMetadata::Status::kFailedToReadOutgoingConnectionResponse:
|
||||
return AttachmentTransmissionStatus::FAILED_UNKNOWN_REMOTE_RESPONSE;
|
||||
case TransferMetadata::Status::kIncompletePayloads:
|
||||
return AttachmentTransmissionStatus::FAILED_NO_PAYLOAD;
|
||||
case TransferMetadata::Status::kInvalidIntroductionFrame:
|
||||
return AttachmentTransmissionStatus::FAILED_WRITE_INTRODUCTION;
|
||||
case TransferMetadata::Status::kMediaUnavailable:
|
||||
return AttachmentTransmissionStatus::MEDIA_UNAVAILABLE_ATTACHMENT;
|
||||
case TransferMetadata::Status::kMissingEndpointId:
|
||||
return AttachmentTransmissionStatus::FAILED_NO_SHARE_TARGET_ENDPOINT;
|
||||
case TransferMetadata::Status::kMissingPayloads:
|
||||
return AttachmentTransmissionStatus::FAILED_NO_PAYLOAD;
|
||||
case TransferMetadata::Status::kPairedKeyVerificationFailed:
|
||||
case TransferMetadata::Status::kDeviceAuthenticationFailed:
|
||||
return AttachmentTransmissionStatus::FAILED_PAIRED_KEYHANDSHAKE;
|
||||
case TransferMetadata::Status::kRejected:
|
||||
return AttachmentTransmissionStatus::REJECTED_ATTACHMENT;
|
||||
case TransferMetadata::Status::kTimedOut:
|
||||
return AttachmentTransmissionStatus::TIMED_OUT_ATTACHMENT;
|
||||
case TransferMetadata::Status::kUnexpectedDisconnection:
|
||||
return AttachmentTransmissionStatus::FAILED_NULL_CONNECTION_DISCONNECTED;
|
||||
case TransferMetadata::Status::kUnsupportedAttachmentType:
|
||||
return AttachmentTransmissionStatus::
|
||||
UNSUPPORTED_ATTACHMENT_TYPE_ATTACHMENT;
|
||||
|
||||
@@ -88,12 +88,11 @@ bool OutgoingShareSession::OnNewConnection(NearbyConnection* connection) {
|
||||
set_disconnect_status(TransferMetadata::Status::kTimedOut);
|
||||
connection_layer_status_ = Status::kUnknown;
|
||||
} else {
|
||||
set_disconnect_status(
|
||||
TransferMetadata::Status::kFailedToInitiateOutgoingConnection);
|
||||
set_disconnect_status(TransferMetadata::Status::kFailed);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
set_disconnect_status(TransferMetadata::Status::kUnexpectedDisconnection);
|
||||
set_disconnect_status(TransferMetadata::Status::kFailed);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -362,7 +361,7 @@ OutgoingShareSession::HandleConnectionResponse(
|
||||
NL_LOG(WARNING)
|
||||
<< __func__
|
||||
<< ": Failed to read a response from the remote device. Disconnecting.";
|
||||
return TransferMetadata::Status::kFailedToReadOutgoingConnectionResponse;
|
||||
return TransferMetadata::Status::kFailed;
|
||||
}
|
||||
|
||||
NL_VLOG(1) << __func__
|
||||
|
||||
@@ -435,9 +435,7 @@ TEST_F(OutgoingShareSessionTest, HandleConnectionResponseEmptyResponse) {
|
||||
session_.HandleConnectionResponse(std::nullopt);
|
||||
|
||||
ASSERT_THAT(status.has_value(), IsTrue());
|
||||
EXPECT_THAT(
|
||||
status.value(),
|
||||
Eq(TransferMetadata::Status::kFailedToReadOutgoingConnectionResponse));
|
||||
EXPECT_THAT(status.value(), Eq(TransferMetadata::Status::kFailed));
|
||||
}
|
||||
|
||||
TEST_F(OutgoingShareSessionTest, HandleConnectionResponseRejectResponse) {
|
||||
|
||||
@@ -31,33 +31,21 @@ namespace sharing {
|
||||
// static
|
||||
bool TransferMetadata::IsFinalStatus(Status status) {
|
||||
switch (status) {
|
||||
case Status::kAwaitingRemoteAcceptanceFailed:
|
||||
case Status::kCancelled:
|
||||
case Status::kComplete:
|
||||
case Status::kDecodeAdvertisementFailed:
|
||||
case Status::kExternalProviderLaunched:
|
||||
case Status::kFailed:
|
||||
case Status::kFailedToCreateShareTarget:
|
||||
case Status::kFailedToInitiateOutgoingConnection:
|
||||
case Status::kFailedToReadOutgoingConnectionResponse:
|
||||
case Status::kIncompletePayloads:
|
||||
case Status::kInvalidIntroductionFrame:
|
||||
case Status::kMediaUnavailable:
|
||||
case Status::kMissingEndpointId:
|
||||
case Status::kMissingPayloads:
|
||||
case Status::kMissingShareTarget:
|
||||
case Status::kNotEnoughSpace:
|
||||
case Status::kPairedKeyVerificationFailed:
|
||||
case Status::kDeviceAuthenticationFailed:
|
||||
case Status::kRejected:
|
||||
case Status::kTimedOut:
|
||||
case Status::kUnexpectedDisconnection:
|
||||
case Status::kUnsupportedAttachmentType:
|
||||
return true;
|
||||
case Status::kAwaitingLocalConfirmation:
|
||||
case Status::kAwaitingRemoteAcceptance:
|
||||
case Status::kConnecting:
|
||||
case Status::kInProgress:
|
||||
case Status::kMediaDownloading:
|
||||
case Status::kUnknown:
|
||||
return false;
|
||||
}
|
||||
@@ -74,8 +62,6 @@ std::string TransferMetadata::StatusToString(Status status) {
|
||||
return "kAwaitingLocalConfirmation";
|
||||
case Status::kAwaitingRemoteAcceptance:
|
||||
return "kAwaitingRemoteAcceptance";
|
||||
case Status::kAwaitingRemoteAcceptanceFailed:
|
||||
return "kAwaitingRemoteAcceptanceFailed";
|
||||
case Status::kInProgress:
|
||||
return "kInProgress";
|
||||
case Status::kComplete:
|
||||
@@ -90,36 +76,14 @@ std::string TransferMetadata::StatusToString(Status status) {
|
||||
return "kTimedOut";
|
||||
case Status::kMediaUnavailable:
|
||||
return "kMediaUnavailable";
|
||||
case Status::kMediaDownloading:
|
||||
return "kMediaDownloading";
|
||||
case Status::kNotEnoughSpace:
|
||||
return "kNotEnoughSpace";
|
||||
case Status::kUnsupportedAttachmentType:
|
||||
return "kUnsupportedAttachmentType";
|
||||
case Status::kExternalProviderLaunched:
|
||||
return "kExternalProviderLaunched";
|
||||
case Status::kDecodeAdvertisementFailed:
|
||||
return "kDecodeAdvertisementFailed";
|
||||
case Status::kMissingShareTarget:
|
||||
return "kMissingShareTarget";
|
||||
case Status::kMissingEndpointId:
|
||||
return "kMissingEndpointId";
|
||||
case Status::kMissingPayloads:
|
||||
return "kMissingPayloads";
|
||||
case Status::kPairedKeyVerificationFailed:
|
||||
return "kPairedKeyVerificationFailed";
|
||||
case Status::kInvalidIntroductionFrame:
|
||||
return "kInvalidIntroductionFrame";
|
||||
case Status::kDeviceAuthenticationFailed:
|
||||
return "kDeviceAuthenticationFailed";
|
||||
case Status::kIncompletePayloads:
|
||||
return "kIncompletePayloads";
|
||||
case Status::kFailedToCreateShareTarget:
|
||||
return "kFailedToCreateShareTarget";
|
||||
case Status::kFailedToInitiateOutgoingConnection:
|
||||
return "kFailedToInitiateOutgoingConnection";
|
||||
case Status::kFailedToReadOutgoingConnectionResponse:
|
||||
return "kFailedToReadOutgoingConnectionResponse";
|
||||
case Status::kUnexpectedDisconnection:
|
||||
return "kUnexpectedDisconnection";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -33,7 +33,6 @@ class TransferMetadata {
|
||||
kConnecting,
|
||||
kAwaitingLocalConfirmation,
|
||||
kAwaitingRemoteAcceptance,
|
||||
kAwaitingRemoteAcceptanceFailed,
|
||||
kInProgress,
|
||||
kComplete,
|
||||
kFailed,
|
||||
@@ -41,22 +40,11 @@ class TransferMetadata {
|
||||
kCancelled,
|
||||
kTimedOut,
|
||||
kMediaUnavailable,
|
||||
kMediaDownloading,
|
||||
kNotEnoughSpace,
|
||||
kUnsupportedAttachmentType,
|
||||
kExternalProviderLaunched,
|
||||
kDecodeAdvertisementFailed,
|
||||
kMissingShareTarget,
|
||||
kMissingEndpointId,
|
||||
kMissingPayloads,
|
||||
kPairedKeyVerificationFailed,
|
||||
kInvalidIntroductionFrame,
|
||||
kDeviceAuthenticationFailed,
|
||||
kIncompletePayloads,
|
||||
kFailedToCreateShareTarget,
|
||||
kFailedToInitiateOutgoingConnection,
|
||||
kFailedToReadOutgoingConnectionResponse,
|
||||
kUnexpectedDisconnection,
|
||||
kMaxValue = kUnexpectedDisconnection
|
||||
kMaxValue = kIncompletePayloads
|
||||
};
|
||||
|
||||
static bool IsFinalStatus(Status status);
|
||||
|
||||
Reference in New Issue
Block a user