Index: webkit/browser/appcache/appcache_url_request_job.h |
diff --git a/webkit/browser/appcache/appcache_url_request_job.h b/webkit/browser/appcache/appcache_url_request_job.h |
deleted file mode 100644 |
index 01c80a115eb22ed0d7bba3a8dc4da20a323190fb..0000000000000000000000000000000000000000 |
--- a/webkit/browser/appcache/appcache_url_request_job.h |
+++ /dev/null |
@@ -1,182 +0,0 @@ |
-// Copyright (c) 2012 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. |
- |
-#ifndef WEBKIT_BROWSER_APPCACHE_APPCACHE_URL_REQUEST_JOB_H_ |
-#define WEBKIT_BROWSER_APPCACHE_APPCACHE_URL_REQUEST_JOB_H_ |
- |
-#include <string> |
- |
-#include "base/memory/weak_ptr.h" |
-#include "net/http/http_byte_range.h" |
-#include "net/url_request/url_request_job.h" |
-#include "webkit/browser/appcache/appcache_entry.h" |
-#include "webkit/browser/appcache/appcache_executable_handler.h" |
-#include "webkit/browser/appcache/appcache_response.h" |
-#include "webkit/browser/appcache/appcache_storage.h" |
-#include "webkit/browser/webkit_storage_browser_export.h" |
- |
-namespace content { |
-class AppCacheRequestHandlerTest; |
-class AppCacheURLRequestJobTest; |
-} |
- |
-namespace net { |
-class GrowableIOBuffer; |
-}; |
- |
-namespace appcache { |
- |
-class AppCacheHost; |
- |
-// A net::URLRequestJob derivative that knows how to return a response stored |
-// in the appcache. |
-class WEBKIT_STORAGE_BROWSER_EXPORT AppCacheURLRequestJob |
- : public net::URLRequestJob, |
- public AppCacheStorage::Delegate { |
- public: |
- AppCacheURLRequestJob(net::URLRequest* request, |
- net::NetworkDelegate* network_delegate, |
- AppCacheStorage* storage, |
- AppCacheHost* host, |
- bool is_main_resource); |
- |
- // Informs the job of what response it should deliver. Only one of these |
- // methods should be called, and only once per job. A job will sit idle and |
- // wait indefinitely until one of the deliver methods is called. |
- void DeliverAppCachedResponse(const GURL& manifest_url, int64 group_id, |
- int64 cache_id, const AppCacheEntry& entry, |
- bool is_fallback); |
- void DeliverNetworkResponse(); |
- void DeliverErrorResponse(); |
- |
- bool is_waiting() const { |
- return delivery_type_ == AWAITING_DELIVERY_ORDERS; |
- } |
- |
- bool is_delivering_appcache_response() const { |
- return delivery_type_ == APPCACHED_DELIVERY; |
- } |
- |
- bool is_delivering_network_response() const { |
- return delivery_type_ == NETWORK_DELIVERY; |
- } |
- |
- bool is_delivering_error_response() const { |
- return delivery_type_ == ERROR_DELIVERY; |
- } |
- |
- // Accessors for the info about the appcached response, if any, |
- // that this job has been instructed to deliver. These are only |
- // valid to call if is_delivering_appcache_response. |
- const GURL& manifest_url() const { return manifest_url_; } |
- int64 group_id() const { return group_id_; } |
- int64 cache_id() const { return cache_id_; } |
- const AppCacheEntry& entry() const { return entry_; } |
- |
- // net::URLRequestJob's Kill method is made public so the users of this |
- // class in the appcache namespace can call it. |
- virtual void Kill() OVERRIDE; |
- |
- // Returns true if the job has been started by the net library. |
- bool has_been_started() const { |
- return has_been_started_; |
- } |
- |
- // Returns true if the job has been killed. |
- bool has_been_killed() const { |
- return has_been_killed_; |
- } |
- |
- // Returns true if the cache entry was not found in the disk cache. |
- bool cache_entry_not_found() const { |
- return cache_entry_not_found_; |
- } |
- |
- protected: |
- virtual ~AppCacheURLRequestJob(); |
- |
- private: |
- friend class content::AppCacheRequestHandlerTest; |
- friend class content::AppCacheURLRequestJobTest; |
- |
- enum DeliveryType { |
- AWAITING_DELIVERY_ORDERS, |
- APPCACHED_DELIVERY, |
- NETWORK_DELIVERY, |
- ERROR_DELIVERY |
- }; |
- |
- // Returns true if one of the Deliver methods has been called. |
- bool has_delivery_orders() const { |
- return !is_waiting(); |
- } |
- |
- void MaybeBeginDelivery(); |
- void BeginDelivery(); |
- |
- // For executable response handling. |
- void BeginExecutableHandlerDelivery(); |
- void OnExecutableSourceLoaded(int result); |
- void InvokeExecutableHandler(AppCacheExecutableHandler* handler); |
- void OnExecutableResponseCallback( |
- const AppCacheExecutableHandler::Response& response); |
- void BeginErrorDelivery(const char* message); |
- |
- // AppCacheStorage::Delegate methods |
- virtual void OnResponseInfoLoaded( |
- AppCacheResponseInfo* response_info, int64 response_id) OVERRIDE; |
- virtual void OnCacheLoaded(AppCache* cache, int64 cache_id) OVERRIDE; |
- |
- const net::HttpResponseInfo* http_info() const; |
- bool is_range_request() const { return range_requested_.IsValid(); } |
- void SetupRangeResponse(); |
- |
- // AppCacheResponseReader completion callback |
- void OnReadComplete(int result); |
- |
- // net::URLRequestJob methods, see url_request_job.h for doc comments |
- virtual void Start() OVERRIDE; |
- virtual net::LoadState GetLoadState() const OVERRIDE; |
- virtual bool GetCharset(std::string* charset) OVERRIDE; |
- virtual void GetResponseInfo(net::HttpResponseInfo* info) OVERRIDE; |
- virtual bool ReadRawData(net::IOBuffer* buf, |
- int buf_size, |
- int *bytes_read) OVERRIDE; |
- |
- // Sets extra request headers for Job types that support request headers. |
- // This is how we get informed of range-requests. |
- virtual void SetExtraRequestHeaders( |
- const net::HttpRequestHeaders& headers) OVERRIDE; |
- |
- // FilterContext methods |
- virtual bool GetMimeType(std::string* mime_type) const OVERRIDE; |
- virtual int GetResponseCode() const OVERRIDE; |
- |
- AppCacheHost* host_; |
- AppCacheStorage* storage_; |
- base::TimeTicks start_time_tick_; |
- bool has_been_started_; |
- bool has_been_killed_; |
- DeliveryType delivery_type_; |
- GURL manifest_url_; |
- int64 group_id_; |
- int64 cache_id_; |
- AppCacheEntry entry_; |
- bool is_fallback_; |
- bool is_main_resource_; // Used for histogram logging. |
- bool cache_entry_not_found_; |
- scoped_refptr<AppCacheResponseInfo> info_; |
- scoped_refptr<net::GrowableIOBuffer> handler_source_buffer_; |
- scoped_ptr<AppCacheResponseReader> handler_source_reader_; |
- net::HttpByteRange range_requested_; |
- scoped_ptr<net::HttpResponseInfo> range_response_info_; |
- scoped_ptr<AppCacheResponseReader> reader_; |
- scoped_refptr<AppCache> cache_; |
- scoped_refptr<AppCacheGroup> group_; |
- base::WeakPtrFactory<AppCacheURLRequestJob> weak_factory_; |
-}; |
- |
-} // namespace appcache |
- |
-#endif // WEBKIT_BROWSER_APPCACHE_APPCACHE_REQUEST_HANDLER_H_ |