diff options
-rw-r--r-- | chrome/browser/extensions/updater/extension_downloader.cc | 2 | ||||
-rw-r--r-- | chrome/browser/extensions/updater/extension_downloader.h | 2 | ||||
-rw-r--r-- | chrome/browser/extensions/updater/extension_updater_unittest.cc | 2 | ||||
-rw-r--r-- | chrome/chrome_browser_extensions.gypi | 2 | ||||
-rw-r--r-- | extensions/browser/BUILD.gn | 2 | ||||
-rw-r--r-- | extensions/browser/updater/request_queue.h (renamed from chrome/browser/extensions/updater/request_queue.h) | 21 | ||||
-rw-r--r-- | extensions/browser/updater/request_queue_impl.h (renamed from chrome/browser/extensions/updater/request_queue_impl.h) | 78 | ||||
-rw-r--r-- | extensions/extensions.gyp | 2 |
8 files changed, 54 insertions, 57 deletions
diff --git a/chrome/browser/extensions/updater/extension_downloader.cc b/chrome/browser/extensions/updater/extension_downloader.cc index 05463b8..a9851ba 100644 --- a/chrome/browser/extensions/updater/extension_downloader.cc +++ b/chrome/browser/extensions/updater/extension_downloader.cc @@ -21,13 +21,13 @@ #include "base/time/time.h" #include "base/version.h" #include "chrome/browser/chrome_notification_types.h" -#include "chrome/browser/extensions/updater/request_queue_impl.h" #include "chrome/common/chrome_switches.h" #include "chrome/common/chrome_version_info.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/notification_details.h" #include "content/public/browser/notification_service.h" #include "extensions/browser/updater/extension_cache.h" +#include "extensions/browser/updater/request_queue_impl.h" #include "extensions/browser/updater/safe_manifest_parser.h" #include "extensions/common/extension_urls.h" #include "extensions/common/manifest_url_handlers.h" diff --git a/chrome/browser/extensions/updater/extension_downloader.h b/chrome/browser/extensions/updater/extension_downloader.h index 3e679fe..e60479f2 100644 --- a/chrome/browser/extensions/updater/extension_downloader.h +++ b/chrome/browser/extensions/updater/extension_downloader.h @@ -19,8 +19,8 @@ #include "base/memory/weak_ptr.h" #include "base/version.h" #include "chrome/browser/extensions/updater/extension_downloader_delegate.h" -#include "chrome/browser/extensions/updater/request_queue.h" #include "extensions/browser/updater/manifest_fetch_data.h" +#include "extensions/browser/updater/request_queue.h" #include "extensions/common/extension.h" #include "extensions/common/update_manifest.h" #include "google_apis/gaia/oauth2_token_service.h" diff --git a/chrome/browser/extensions/updater/extension_updater_unittest.cc b/chrome/browser/extensions/updater/extension_updater_unittest.cc index 7686fce..db9bafb 100644 --- a/chrome/browser/extensions/updater/extension_updater_unittest.cc +++ b/chrome/browser/extensions/updater/extension_updater_unittest.cc @@ -34,7 +34,6 @@ #include "chrome/browser/extensions/updater/extension_downloader.h" #include "chrome/browser/extensions/updater/extension_downloader_delegate.h" #include "chrome/browser/extensions/updater/extension_updater.h" -#include "chrome/browser/extensions/updater/request_queue_impl.h" #include "chrome/browser/google/google_brand.h" #include "chrome/browser/prefs/pref_service_syncable.h" #include "chrome/common/pref_names.h" @@ -52,6 +51,7 @@ #include "extensions/browser/extension_registry.h" #include "extensions/browser/extension_system.h" #include "extensions/browser/updater/manifest_fetch_data.h" +#include "extensions/browser/updater/request_queue_impl.h" #include "extensions/common/extension.h" #include "extensions/common/extension_urls.h" #include "extensions/common/manifest_constants.h" diff --git a/chrome/chrome_browser_extensions.gypi b/chrome/chrome_browser_extensions.gypi index 4a35e80..c96f63fe 100644 --- a/chrome/chrome_browser_extensions.gypi +++ b/chrome/chrome_browser_extensions.gypi @@ -789,8 +789,6 @@ 'browser/extensions/updater/extension_downloader_delegate.h', 'browser/extensions/updater/extension_updater.cc', 'browser/extensions/updater/extension_updater.h', - 'browser/extensions/updater/request_queue.h', - 'browser/extensions/updater/request_queue_impl.h', 'browser/extensions/user_script_listener.cc', 'browser/extensions/user_script_listener.h', 'browser/extensions/user_script_loader.cc', diff --git a/extensions/browser/BUILD.gn b/extensions/browser/BUILD.gn index d69225e..6b5a862 100644 --- a/extensions/browser/BUILD.gn +++ b/extensions/browser/BUILD.gn @@ -431,6 +431,8 @@ source_set("browser") { "updater/manifest_fetch_data.h", "updater/null_extension_cache.cc", "updater/null_extension_cache.h", + "updater/request_queue.h", + "updater/request_queue_impl.h", "updater/safe_manifest_parser.cc", "updater/safe_manifest_parser.h", "url_request_util.cc", diff --git a/chrome/browser/extensions/updater/request_queue.h b/extensions/browser/updater/request_queue.h index c147881..0e3d2eb 100644 --- a/chrome/browser/extensions/updater/request_queue.h +++ b/extensions/browser/updater/request_queue.h @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_BROWSER_EXTENSIONS_UPDATER_REQUEST_QUEUE_H_ -#define CHROME_BROWSER_EXTENSIONS_UPDATER_REQUEST_QUEUE_H_ +#ifndef EXTENSIONS_BROWSER_UPDATER_REQUEST_QUEUE_H_ +#define EXTENSIONS_BROWSER_UPDATER_REQUEST_QUEUE_H_ #include <deque> #include <utility> @@ -33,7 +33,7 @@ namespace extensions { // - call reset_active_request() to indicate that the active request has // been dealt with. // - call StartNextRequest to schedule the next pending request (if any). -template<typename T> +template <typename T> class RequestQueue { public: class iterator; @@ -88,8 +88,7 @@ class RequestQueue { }; // Compares the release time of two pending requests. - static bool CompareRequests(const Request& a, - const Request& b); + static bool CompareRequests(const Request& a, const Request& b); // Pushes a request with a given backoff entry onto the queue. void PushImpl(scoped_ptr<T> request, @@ -116,7 +115,7 @@ class RequestQueue { // Iterator class that wraps a std::deque<> iterator, only giving access to the // actual request part of each item. -template<typename T> +template <typename T> class RequestQueue<T>::iterator { public: iterator() {} @@ -127,21 +126,17 @@ class RequestQueue<T>::iterator { ++it_; return *this; } - bool operator!=(const iterator& b) const { - return it_ != b.it_; - } + bool operator!=(const iterator& b) const { return it_ != b.it_; } private: friend class RequestQueue<T>; typedef std::deque<typename RequestQueue<T>::Request> Container; - explicit iterator(const typename Container::iterator& it) - : it_(it) {} + explicit iterator(const typename Container::iterator& it) : it_(it) {} typename Container::iterator it_; }; - } // namespace extensions -#endif // CHROME_BROWSER_EXTENSIONS_UPDATER_REQUEST_QUEUE_H_ +#endif // EXTENSIONS_BROWSER_UPDATER_REQUEST_QUEUE_H_ diff --git a/chrome/browser/extensions/updater/request_queue_impl.h b/extensions/browser/updater/request_queue_impl.h index db167e8..309dc82 100644 --- a/chrome/browser/extensions/updater/request_queue_impl.h +++ b/extensions/browser/updater/request_queue_impl.h @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_BROWSER_EXTENSIONS_UPDATER_REQUEST_QUEUE_IMPL_H_ -#define CHROME_BROWSER_EXTENSIONS_UPDATER_REQUEST_QUEUE_IMPL_H_ +#ifndef EXTENSIONS_BROWSER_UPDATER_REQUEST_QUEUE_IMPL_H_ +#define EXTENSIONS_BROWSER_UPDATER_REQUEST_QUEUE_IMPL_H_ #include <algorithm> @@ -11,11 +11,11 @@ #include "base/compiler_specific.h" #include "base/message_loop/message_loop.h" #include "base/stl_util.h" -#include "chrome/browser/extensions/updater/request_queue.h" +#include "extensions/browser/updater/request_queue.h" namespace extensions { -template<typename T> +template <typename T> RequestQueue<T>::RequestQueue( const net::BackoffEntry::Policy* const backoff_policy, const base::Closure& start_request_callback) @@ -24,57 +24,59 @@ RequestQueue<T>::RequestQueue( timer_(false, false) { } -template<typename T> -RequestQueue<T>::~RequestQueue() {} +template <typename T> +RequestQueue<T>::~RequestQueue() { +} -template<typename T> +template <typename T> T* RequestQueue<T>::active_request() { return active_request_.get(); } -template<typename T> +template <typename T> int RequestQueue<T>::active_request_failure_count() { return active_backoff_entry_->failure_count(); } -template<typename T> +template <typename T> scoped_ptr<T> RequestQueue<T>::reset_active_request() { active_backoff_entry_.reset(); return active_request_.Pass(); } -template<typename T> +template <typename T> void RequestQueue<T>::ScheduleRequest(scoped_ptr<T> request) { - PushImpl(request.Pass(), scoped_ptr<net::BackoffEntry>( - new net::BackoffEntry(backoff_policy_))); + PushImpl( + request.Pass(), + scoped_ptr<net::BackoffEntry>(new net::BackoffEntry(backoff_policy_))); StartNextRequest(); } -template<typename T> +template <typename T> void RequestQueue<T>::PushImpl(scoped_ptr<T> request, scoped_ptr<net::BackoffEntry> backoff_entry) { - pending_requests_.push_back(Request( - backoff_entry.release(), request.release())); - std::push_heap(pending_requests_.begin(), pending_requests_.end(), - CompareRequests); + pending_requests_.push_back( + Request(backoff_entry.release(), request.release())); + std::push_heap( + pending_requests_.begin(), pending_requests_.end(), CompareRequests); } -template<typename T> +template <typename T> bool RequestQueue<T>::empty() const { return pending_requests_.empty(); } -template<typename T> +template <typename T> size_t RequestQueue<T>::size() const { return pending_requests_.size(); } -template<typename T> +template <typename T> base::TimeTicks RequestQueue<T>::NextReleaseTime() const { return pending_requests_.front().backoff_entry->GetReleaseTime(); } -template<typename T> +template <typename T> void RequestQueue<T>::StartNextRequest() { if (active_request_) // Already running a request, assume this method will be called again when @@ -90,9 +92,10 @@ void RequestQueue<T>::StartNextRequest() { if (next_release > now) { // Not ready for the next update check yet, call this method when it is // time. - timer_.Start(FROM_HERE, next_release - now, - base::Bind(&RequestQueue<T>::StartNextRequest, - base::Unretained(this))); + timer_.Start( + FROM_HERE, + next_release - now, + base::Bind(&RequestQueue<T>::StartNextRequest, base::Unretained(this))); return; } @@ -103,8 +106,8 @@ void RequestQueue<T>::StartNextRequest() { // used to be at the top of the heap. Since no elements are actually // removed from the container it is safe to read the entry being removed after // pop_heap is called (but before pop_back is called). - std::pop_heap(pending_requests_.begin(), pending_requests_.end(), - CompareRequests); + std::pop_heap( + pending_requests_.begin(), pending_requests_.end(), CompareRequests); active_backoff_entry_.reset(pending_requests_.back().backoff_entry.release()); active_request_.reset(pending_requests_.back().request.release()); @@ -114,41 +117,38 @@ void RequestQueue<T>::StartNextRequest() { start_request_callback_.Run(); } -template<typename T> +template <typename T> void RequestQueue<T>::RetryRequest(const base::TimeDelta& min_backoff_delay) { active_backoff_entry_->InformOfRequest(false); if (active_backoff_entry_->GetTimeUntilRelease() < min_backoff_delay) { - active_backoff_entry_->SetCustomReleaseTime( - base::TimeTicks::Now() + min_backoff_delay); + active_backoff_entry_->SetCustomReleaseTime(base::TimeTicks::Now() + + min_backoff_delay); } PushImpl(active_request_.Pass(), active_backoff_entry_.Pass()); } -template<typename T> +template <typename T> typename RequestQueue<T>::iterator RequestQueue<T>::begin() { return iterator(pending_requests_.begin()); } -template<typename T> +template <typename T> typename RequestQueue<T>::iterator RequestQueue<T>::end() { return iterator(pending_requests_.end()); } -template<typename T> +template <typename T> void RequestQueue<T>::set_backoff_policy( const net::BackoffEntry::Policy* backoff_policy) { backoff_policy_ = backoff_policy; } // static -template<typename T> -bool RequestQueue<T>::CompareRequests( - const Request& a, - const Request& b) { - return a.backoff_entry->GetReleaseTime() > - b.backoff_entry->GetReleaseTime(); +template <typename T> +bool RequestQueue<T>::CompareRequests(const Request& a, const Request& b) { + return a.backoff_entry->GetReleaseTime() > b.backoff_entry->GetReleaseTime(); } } // namespace extensions -#endif // CHROME_BROWSER_EXTENSIONS_UPDATER_REQUEST_QUEUE_IMPL_H_ +#endif // EXTENSIONS_BROWSER_UPDATER_REQUEST_QUEUE_IMPL_H_ diff --git a/extensions/extensions.gyp b/extensions/extensions.gyp index ee0a40dd..012a4b3 100644 --- a/extensions/extensions.gyp +++ b/extensions/extensions.gyp @@ -721,6 +721,8 @@ 'browser/updater/manifest_fetch_data.h', 'browser/updater/null_extension_cache.cc', 'browser/updater/null_extension_cache.h', + 'browser/updater/request_queue.h', + 'browser/updater/request_queue_impl.h', 'browser/updater/safe_manifest_parser.cc', 'browser/updater/safe_manifest_parser.h', 'browser/url_request_util.cc', |