| Index: net/dns/single_request_host_resolver.cc
|
| diff --git a/net/dns/single_request_host_resolver.cc b/net/dns/single_request_host_resolver.cc
|
| deleted file mode 100644
|
| index 2c4b3aa19b9aaf9e193cafac1bb427fc883ff9a0..0000000000000000000000000000000000000000
|
| --- a/net/dns/single_request_host_resolver.cc
|
| +++ /dev/null
|
| @@ -1,85 +0,0 @@
|
| -// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "net/dns/single_request_host_resolver.h"
|
| -
|
| -#include "base/bind.h"
|
| -#include "base/bind_helpers.h"
|
| -#include "base/compiler_specific.h"
|
| -#include "base/logging.h"
|
| -#include "base/profiler/scoped_tracker.h"
|
| -#include "net/base/net_errors.h"
|
| -
|
| -namespace net {
|
| -
|
| -SingleRequestHostResolver::SingleRequestHostResolver(HostResolver* resolver)
|
| - : resolver_(resolver),
|
| - cur_request_(NULL),
|
| - callback_(
|
| - base::Bind(&SingleRequestHostResolver::OnResolveCompletion,
|
| - base::Unretained(this))) {
|
| - DCHECK(resolver_ != NULL);
|
| -}
|
| -
|
| -SingleRequestHostResolver::~SingleRequestHostResolver() {
|
| - Cancel();
|
| -}
|
| -
|
| -int SingleRequestHostResolver::Resolve(const HostResolver::RequestInfo& info,
|
| - RequestPriority priority,
|
| - AddressList* addresses,
|
| - const CompletionCallback& callback,
|
| - const BoundNetLog& net_log) {
|
| - DCHECK(addresses);
|
| - DCHECK_EQ(false, callback.is_null());
|
| - DCHECK(cur_request_callback_.is_null()) << "resolver already in use";
|
| -
|
| - HostResolver::RequestHandle request = NULL;
|
| -
|
| - // We need to be notified of completion before |callback| is called, so that
|
| - // we can clear out |cur_request_*|.
|
| - CompletionCallback transient_callback =
|
| - callback.is_null() ? CompletionCallback() : callback_;
|
| -
|
| - int rv = resolver_->Resolve(
|
| - info, priority, addresses, transient_callback, &request, net_log);
|
| -
|
| - if (rv == ERR_IO_PENDING) {
|
| - DCHECK_EQ(false, callback.is_null());
|
| - // Cleared in OnResolveCompletion().
|
| - cur_request_ = request;
|
| - cur_request_callback_ = callback;
|
| - }
|
| -
|
| - return rv;
|
| -}
|
| -
|
| -void SingleRequestHostResolver::Cancel() {
|
| - if (!cur_request_callback_.is_null()) {
|
| - resolver_->CancelRequest(cur_request_);
|
| - cur_request_ = NULL;
|
| - cur_request_callback_.Reset();
|
| - }
|
| -}
|
| -
|
| -void SingleRequestHostResolver::OnResolveCompletion(int result) {
|
| - // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
|
| - tracked_objects::ScopedTracker tracking_profile(
|
| - FROM_HERE_WITH_EXPLICIT_FUNCTION(
|
| - "436634 SingleRequestHostResolver::OnResolveCompletion"));
|
| -
|
| - DCHECK(cur_request_);
|
| - DCHECK_EQ(false, cur_request_callback_.is_null());
|
| -
|
| - CompletionCallback callback = cur_request_callback_;
|
| -
|
| - // Clear the outstanding request information.
|
| - cur_request_ = NULL;
|
| - cur_request_callback_.Reset();
|
| -
|
| - // Call the user's original callback.
|
| - callback.Run(result);
|
| -}
|
| -
|
| -} // namespace net
|
|
|