Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(495)

Unified Diff: third_party/WebKit/Source/platform/network/ResourceRequest.h

Issue 2746113002: platform/loader: move network/Resource* to loader/fetch (Closed)
Patch Set: git rebase master Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/platform/network/ResourceRequest.h
diff --git a/third_party/WebKit/Source/platform/network/ResourceRequest.h b/third_party/WebKit/Source/platform/network/ResourceRequest.h
deleted file mode 100644
index 8c1f927c86c72204d65780288e5e13f49cfbe8c1..0000000000000000000000000000000000000000
--- a/third_party/WebKit/Source/platform/network/ResourceRequest.h
+++ /dev/null
@@ -1,417 +0,0 @@
-/*
- * Copyright (C) 2003, 2006 Apple Computer, Inc. All rights reserved.
- * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
- * Copyright (C) 2009, 2012 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ResourceRequest_h
-#define ResourceRequest_h
-
-#include "platform/HTTPNames.h"
-#include "platform/network/EncodedFormData.h"
-#include "platform/network/HTTPHeaderMap.h"
-#include "platform/network/HTTPParsers.h"
-#include "platform/network/ResourceLoadPriority.h"
-#include "platform/weborigin/KURL.h"
-#include "platform/weborigin/Referrer.h"
-#include "platform/weborigin/SecurityOrigin.h"
-#include "public/platform/WebAddressSpace.h"
-#include "public/platform/WebURLRequest.h"
-#include "wtf/RefCounted.h"
-#include <memory>
-
-namespace blink {
-
-enum class WebCachePolicy;
-
-enum class ResourceRequestBlockedReason {
- CSP,
- MixedContent,
- Origin,
- Inspector,
- SubresourceFilter,
- Other,
- None
-};
-
-enum InputToLoadPerfMetricReportPolicy {
- NoReport, // Don't report metrics for this ResourceRequest.
- ReportLink, // Report metrics for this request as initiated by a link click.
- ReportIntent, // Report metrics for this request as initiated by an intent.
-};
-
-struct CrossThreadResourceRequestData;
-
-class PLATFORM_EXPORT ResourceRequest final {
- DISALLOW_NEW();
-
- public:
- enum class RedirectStatus { FollowedRedirect, NoRedirect };
-
- class ExtraData : public RefCounted<ExtraData> {
- public:
- virtual ~ExtraData() {}
- };
-
- ResourceRequest();
- ResourceRequest(const String& urlString);
- ResourceRequest(const KURL&);
- explicit ResourceRequest(CrossThreadResourceRequestData*);
- ResourceRequest(const ResourceRequest&);
- ResourceRequest& operator=(const ResourceRequest&);
-
- // Gets a copy of the data suitable for passing to another thread.
- std::unique_ptr<CrossThreadResourceRequestData> copyData() const;
-
- bool isNull() const;
- bool isEmpty() const;
-
- const KURL& url() const;
- void setURL(const KURL& url);
-
- void removeUserAndPassFromURL();
-
- WebCachePolicy getCachePolicy() const;
- void setCachePolicy(WebCachePolicy);
-
- double timeoutInterval() const; // May return 0 when using platform default.
- void setTimeoutInterval(double);
-
- const KURL& firstPartyForCookies() const;
- void setFirstPartyForCookies(const KURL& firstPartyForCookies);
-
- PassRefPtr<SecurityOrigin> requestorOrigin() const;
- void setRequestorOrigin(PassRefPtr<SecurityOrigin>);
-
- const AtomicString& httpMethod() const;
- void setHTTPMethod(const AtomicString&);
-
- const HTTPHeaderMap& httpHeaderFields() const;
- const AtomicString& httpHeaderField(const AtomicString& name) const;
- void setHTTPHeaderField(const AtomicString& name, const AtomicString& value);
- void addHTTPHeaderField(const AtomicString& name, const AtomicString& value);
- void addHTTPHeaderFields(const HTTPHeaderMap& headerFields);
- void clearHTTPHeaderField(const AtomicString& name);
-
- const AtomicString& httpContentType() const {
- return httpHeaderField(HTTPNames::Content_Type);
- }
- void setHTTPContentType(const AtomicString& httpContentType) {
- setHTTPHeaderField(HTTPNames::Content_Type, httpContentType);
- }
-
- bool didSetHTTPReferrer() const { return m_didSetHTTPReferrer; }
- const AtomicString& httpReferrer() const {
- return httpHeaderField(HTTPNames::Referer);
- }
- ReferrerPolicy getReferrerPolicy() const { return m_referrerPolicy; }
- void setHTTPReferrer(const Referrer&);
- void clearHTTPReferrer();
-
- const AtomicString& httpOrigin() const {
- return httpHeaderField(HTTPNames::Origin);
- }
- const AtomicString& httpSuborigin() const {
- return httpHeaderField(HTTPNames::Suborigin);
- }
- // Note that these will also set and clear, respectively, the
- // Suborigin header, if appropriate.
- void setHTTPOrigin(const SecurityOrigin*);
- void clearHTTPOrigin();
-
- void addHTTPOriginIfNeeded(const SecurityOrigin*);
- void addHTTPOriginIfNeeded(const String&);
-
- const AtomicString& httpUserAgent() const {
- return httpHeaderField(HTTPNames::User_Agent);
- }
- void setHTTPUserAgent(const AtomicString& httpUserAgent) {
- setHTTPHeaderField(HTTPNames::User_Agent, httpUserAgent);
- }
- void clearHTTPUserAgent();
-
- void setHTTPAccept(const AtomicString& httpAccept) {
- setHTTPHeaderField(HTTPNames::Accept, httpAccept);
- }
-
- EncodedFormData* httpBody() const;
- void setHTTPBody(PassRefPtr<EncodedFormData>);
-
- EncodedFormData* attachedCredential() const;
- void setAttachedCredential(PassRefPtr<EncodedFormData>);
-
- bool allowStoredCredentials() const;
- void setAllowStoredCredentials(bool allowCredentials);
-
- ResourceLoadPriority priority() const;
- void setPriority(ResourceLoadPriority, int intraPriorityValue = 0);
-
- bool isConditional() const;
-
- // Whether the associated ResourceHandleClient needs to be notified of
- // upload progress made for that resource.
- bool reportUploadProgress() const { return m_reportUploadProgress; }
- void setReportUploadProgress(bool reportUploadProgress) {
- m_reportUploadProgress = reportUploadProgress;
- }
-
- // Whether actual headers being sent/received should be collected and reported
- // for the request.
- bool reportRawHeaders() const { return m_reportRawHeaders; }
- void setReportRawHeaders(bool reportRawHeaders) {
- m_reportRawHeaders = reportRawHeaders;
- }
-
- // Allows the request to be matched up with its requestor.
- int requestorID() const { return m_requestorID; }
- void setRequestorID(int requestorID) { m_requestorID = requestorID; }
-
- // The process id of the process from which this request originated. In
- // the case of out-of-process plugins, this allows to link back the
- // request to the plugin process (as it is processed through a render
- // view process).
- int requestorProcessID() const { return m_requestorProcessID; }
- void setRequestorProcessID(int requestorProcessID) {
- m_requestorProcessID = requestorProcessID;
- }
-
- // Allows the request to be matched up with its app cache host.
- int appCacheHostID() const { return m_appCacheHostID; }
- void setAppCacheHostID(int id) { m_appCacheHostID = id; }
-
- // True if request was user initiated.
- bool hasUserGesture() const { return m_hasUserGesture; }
- void setHasUserGesture(bool);
-
- // True if request should be downloaded to file.
- bool downloadToFile() const { return m_downloadToFile; }
- void setDownloadToFile(bool downloadToFile) {
- m_downloadToFile = downloadToFile;
- }
-
- // True if the requestor wants to receive a response body as
- // WebDataConsumerHandle.
- bool useStreamOnResponse() const { return m_useStreamOnResponse; }
- void setUseStreamOnResponse(bool useStreamOnResponse) {
- m_useStreamOnResponse = useStreamOnResponse;
- }
-
- // The service worker mode indicating which service workers should get events
- // for this request.
- WebURLRequest::ServiceWorkerMode getServiceWorkerMode() const {
- return m_serviceWorkerMode;
- }
- void setServiceWorkerMode(
- WebURLRequest::ServiceWorkerMode serviceWorkerMode) {
- m_serviceWorkerMode = serviceWorkerMode;
- }
-
- // True if corresponding AppCache group should be resetted.
- bool shouldResetAppCache() { return m_shouldResetAppCache; }
- void setShouldResetAppCache(bool shouldResetAppCache) {
- m_shouldResetAppCache = shouldResetAppCache;
- }
-
- // Extra data associated with this request.
- ExtraData* getExtraData() const { return m_extraData.get(); }
- void setExtraData(PassRefPtr<ExtraData> extraData) {
- m_extraData = extraData;
- }
-
- WebURLRequest::RequestContext requestContext() const {
- return m_requestContext;
- }
- void setRequestContext(WebURLRequest::RequestContext context) {
- m_requestContext = context;
- }
-
- WebURLRequest::FrameType frameType() const { return m_frameType; }
- void setFrameType(WebURLRequest::FrameType frameType) {
- m_frameType = frameType;
- }
-
- WebURLRequest::FetchRequestMode fetchRequestMode() const {
- return m_fetchRequestMode;
- }
- void setFetchRequestMode(WebURLRequest::FetchRequestMode mode) {
- m_fetchRequestMode = mode;
- }
-
- WebURLRequest::FetchCredentialsMode fetchCredentialsMode() const {
- return m_fetchCredentialsMode;
- }
- void setFetchCredentialsMode(WebURLRequest::FetchCredentialsMode mode) {
- m_fetchCredentialsMode = mode;
- }
-
- WebURLRequest::FetchRedirectMode fetchRedirectMode() const {
- return m_fetchRedirectMode;
- }
- void setFetchRedirectMode(WebURLRequest::FetchRedirectMode redirect) {
- m_fetchRedirectMode = redirect;
- }
-
- WebURLRequest::PreviewsState previewsState() const { return m_previewsState; }
- void setPreviewsState(WebURLRequest::PreviewsState previewsState) {
- m_previewsState = previewsState;
- }
-
- bool cacheControlContainsNoCache() const;
- bool cacheControlContainsNoStore() const;
- bool hasCacheValidatorFields() const;
-
- bool checkForBrowserSideNavigation() const {
- return m_checkForBrowserSideNavigation;
- }
- void setCheckForBrowserSideNavigation(bool check) {
- m_checkForBrowserSideNavigation = check;
- }
-
- double uiStartTime() const { return m_uiStartTime; }
- void setUIStartTime(double uiStartTimeSeconds) {
- m_uiStartTime = uiStartTimeSeconds;
- }
-
- // https://mikewest.github.io/cors-rfc1918/#external-request
- bool isExternalRequest() const { return m_isExternalRequest; }
- void setExternalRequestStateFromRequestorAddressSpace(WebAddressSpace);
-
- InputToLoadPerfMetricReportPolicy inputPerfMetricReportPolicy() const {
- return m_inputPerfMetricReportPolicy;
- }
- void setInputPerfMetricReportPolicy(
- InputToLoadPerfMetricReportPolicy inputPerfMetricReportPolicy) {
- m_inputPerfMetricReportPolicy = inputPerfMetricReportPolicy;
- }
-
- void setRedirectStatus(RedirectStatus status) { m_redirectStatus = status; }
- RedirectStatus redirectStatus() const { return m_redirectStatus; }
-
- void setNavigationStartTime(double);
- double navigationStartTime() const { return m_navigationStart; }
-
- void setIsSameDocumentNavigation(bool isSameDocument) {
- m_isSameDocumentNavigation = isSameDocument;
- }
- bool isSameDocumentNavigation() const { return m_isSameDocumentNavigation; }
-
- private:
- const CacheControlHeader& cacheControlHeader() const;
-
- bool needsHTTPOrigin() const;
-
- KURL m_url;
- WebCachePolicy m_cachePolicy;
- double m_timeoutInterval; // 0 is a magic value for platform default on
- // platforms that have one.
- KURL m_firstPartyForCookies;
- RefPtr<SecurityOrigin> m_requestorOrigin;
- AtomicString m_httpMethod;
- HTTPHeaderMap m_httpHeaderFields;
- RefPtr<EncodedFormData> m_httpBody;
- RefPtr<EncodedFormData> m_attachedCredential;
- bool m_allowStoredCredentials : 1;
- bool m_reportUploadProgress : 1;
- bool m_reportRawHeaders : 1;
- bool m_hasUserGesture : 1;
- bool m_downloadToFile : 1;
- bool m_useStreamOnResponse : 1;
- bool m_shouldResetAppCache : 1;
- WebURLRequest::ServiceWorkerMode m_serviceWorkerMode;
- ResourceLoadPriority m_priority;
- int m_intraPriorityValue;
- int m_requestorID;
- int m_requestorProcessID;
- int m_appCacheHostID;
- RefPtr<ExtraData> m_extraData;
- WebURLRequest::RequestContext m_requestContext;
- WebURLRequest::FrameType m_frameType;
- WebURLRequest::FetchRequestMode m_fetchRequestMode;
- WebURLRequest::FetchCredentialsMode m_fetchCredentialsMode;
- WebURLRequest::FetchRedirectMode m_fetchRedirectMode;
- WebURLRequest::PreviewsState m_previewsState;
- ReferrerPolicy m_referrerPolicy;
- bool m_didSetHTTPReferrer;
- bool m_checkForBrowserSideNavigation;
- double m_uiStartTime;
- bool m_isExternalRequest;
- bool m_isSameDocumentNavigation;
- InputToLoadPerfMetricReportPolicy m_inputPerfMetricReportPolicy;
-
- mutable CacheControlHeader m_cacheControlHeaderCache;
-
- static double s_defaultTimeoutInterval;
-
- RedirectStatus m_redirectStatus;
-
- double m_navigationStart = 0;
-};
-
-struct CrossThreadResourceRequestData {
- WTF_MAKE_NONCOPYABLE(CrossThreadResourceRequestData);
- USING_FAST_MALLOC(CrossThreadResourceRequestData);
-
- public:
- CrossThreadResourceRequestData() {}
- KURL m_url;
-
- WebCachePolicy m_cachePolicy;
- double m_timeoutInterval;
- KURL m_firstPartyForCookies;
- RefPtr<SecurityOrigin> m_requestorOrigin;
-
- String m_httpMethod;
- std::unique_ptr<CrossThreadHTTPHeaderMapData> m_httpHeaders;
- RefPtr<EncodedFormData> m_httpBody;
- RefPtr<EncodedFormData> m_attachedCredential;
- bool m_allowStoredCredentials;
- bool m_reportUploadProgress;
- bool m_hasUserGesture;
- bool m_downloadToFile;
- WebURLRequest::ServiceWorkerMode m_serviceWorkerMode;
- bool m_useStreamOnResponse;
- bool m_shouldResetAppCache;
- ResourceLoadPriority m_priority;
- int m_intraPriorityValue;
- int m_requestorID;
- int m_requestorProcessID;
- int m_appCacheHostID;
- WebURLRequest::RequestContext m_requestContext;
- WebURLRequest::FrameType m_frameType;
- WebURLRequest::FetchRequestMode m_fetchRequestMode;
- WebURLRequest::FetchCredentialsMode m_fetchCredentialsMode;
- WebURLRequest::FetchRedirectMode m_fetchRedirectMode;
- WebURLRequest::PreviewsState m_previewsState;
- ReferrerPolicy m_referrerPolicy;
- bool m_didSetHTTPReferrer;
- bool m_checkForBrowserSideNavigation;
- double m_uiStartTime;
- bool m_isExternalRequest;
- InputToLoadPerfMetricReportPolicy m_inputPerfMetricReportPolicy;
- ResourceRequest::RedirectStatus m_redirectStatus;
-};
-
-} // namespace blink
-
-#endif // ResourceRequest_h

Powered by Google App Engine
This is Rietveld 408576698