| 439 | : call_(std::move(call)), conn_(conn) {} |
| 440 | |
| 441 | virtual void NotifyTransferFinished() OVERRIDE { |
| 442 | // TODO: would be better to cancel the transfer while it is still on the queue if we |
| 443 | // timed out before the transfer started, but there is still a race in the case of |
| 444 | // a partial send that we have to handle here |
| 445 | if (call_->IsFinished()) { |
| 446 | DCHECK(call_->IsTimedOut() || call_->IsCancelled()); |
| 447 | } else { |
| 448 | call_->SetSent(); |
| 449 | // Test cancellation when 'call_' is in 'SENT' state. |
| 450 | conn_->MaybeInjectCancellation(call_); |
| 451 | } |
| 452 | delete this; |
| 453 | } |
| 454 | |
| 455 | virtual void NotifyTransferAborted(const Status &status) OVERRIDE { |
| 456 | VLOG(1) << "Transfer of RPC call " << call_->ToString() << " aborted: " |
no test coverage detected