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

Side by Side Diff: third_party/WebKit/Source/core/loader/DocumentLoader.h

Issue 2022783002: Skeleton of the Safe Browsing Subresource Filter. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
3 * Copyright (C) 2011 Google Inc. All rights reserved. 3 * Copyright (C) 2011 Google Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 8 *
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 #include "wtf/RefPtr.h" 51 #include "wtf/RefPtr.h"
52 52
53 namespace blink { 53 namespace blink {
54 54
55 class ApplicationCacheHost; 55 class ApplicationCacheHost;
56 class ResourceFetcher; 56 class ResourceFetcher;
57 class DocumentInit; 57 class DocumentInit;
58 class LocalFrame; 58 class LocalFrame;
59 class FrameLoader; 59 class FrameLoader;
60 class ResourceLoader; 60 class ResourceLoader;
61 class WebDocumentSubresourceFilter;
61 62
62 class CORE_EXPORT DocumentLoader : public GarbageCollectedFinalized<DocumentLoad er>, private RawResourceClient { 63 class CORE_EXPORT DocumentLoader : public GarbageCollectedFinalized<DocumentLoad er>, private RawResourceClient {
63 public: 64 public:
64 static DocumentLoader* create(LocalFrame* frame, const ResourceRequest& requ est, const SubstituteData& data) 65 static DocumentLoader* create(LocalFrame* frame, const ResourceRequest& requ est, const SubstituteData& data)
65 { 66 {
66 return new DocumentLoader(frame, request, data); 67 return new DocumentLoader(frame, request, data);
67 } 68 }
68 ~DocumentLoader() override; 69 ~DocumentLoader() override;
69 70
70 LocalFrame* frame() const { return m_frame; } 71 LocalFrame* frame() const { return m_frame; }
71 72
72 virtual void detachFromFrame(); 73 virtual void detachFromFrame();
73 74
74 unsigned long mainResourceIdentifier() const; 75 unsigned long mainResourceIdentifier() const;
75 76
76 void replaceDocumentWhileExecutingJavaScriptURL(const DocumentInit&, const S tring& source); 77 void replaceDocumentWhileExecutingJavaScriptURL(const DocumentInit&, const S tring& source);
77 78
78 const AtomicString& mimeType() const; 79 const AtomicString& mimeType() const;
79 80
80 const ResourceRequest& originalRequest() const; 81 const ResourceRequest& originalRequest() const;
81 82
82 const ResourceRequest& request() const; 83 const ResourceRequest& request() const;
83 84
84 ResourceFetcher* fetcher() const { return m_fetcher.get(); } 85 ResourceFetcher* fetcher() const { return m_fetcher.get(); }
85 86
87 void setSubresourceFilter(PassOwnPtr<WebDocumentSubresourceFilter>);
88 WebDocumentSubresourceFilter* subresourceFilter() const { return m_subresour ceFilter.get(); }
89
86 const SubstituteData& substituteData() const { return m_substituteData; } 90 const SubstituteData& substituteData() const { return m_substituteData; }
87 91
88 const KURL& url() const; 92 const KURL& url() const;
89 const KURL& unreachableURL() const; 93 const KURL& unreachableURL() const;
90 const KURL& urlForHistory() const; 94 const KURL& urlForHistory() const;
91 95
92 const AtomicString& responseMIMEType() const; 96 const AtomicString& responseMIMEType() const;
93 97
94 void didChangePerformanceTiming(); 98 void didChangePerformanceTiming();
95 void didObserveLoadingBehavior(WebLoadingBehaviorFlag); 99 void didObserveLoadingBehavior(WebLoadingBehaviorFlag);
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
173 String debugName() const override { return "DocumentLoader"; } 177 String debugName() const override { return "DocumentLoader"; }
174 178
175 bool maybeLoadEmpty(); 179 bool maybeLoadEmpty();
176 180
177 bool isRedirectAfterPost(const ResourceRequest&, const ResourceResponse&); 181 bool isRedirectAfterPost(const ResourceRequest&, const ResourceResponse&);
178 182
179 bool shouldContinueForResponse() const; 183 bool shouldContinueForResponse() const;
180 184
181 Member<LocalFrame> m_frame; 185 Member<LocalFrame> m_frame;
182 Member<ResourceFetcher> m_fetcher; 186 Member<ResourceFetcher> m_fetcher;
187 OwnPtr<WebDocumentSubresourceFilter> m_subresourceFilter;
183 188
184 Member<RawResource> m_mainResource; 189 Member<RawResource> m_mainResource;
185 190
186 Member<DocumentWriter> m_writer; 191 Member<DocumentWriter> m_writer;
187 192
188 // A reference to actual request used to create the data source. 193 // A reference to actual request used to create the data source.
189 // The only part of this request that should change is the url, and 194 // The only part of this request that should change is the url, and
190 // that only in the case of a same-document navigation. 195 // that only in the case of a same-document navigation.
191 ResourceRequest m_originalRequest; 196 ResourceRequest m_originalRequest;
192 197
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
229 // Used to protect against reentrancy into dataReceived(). 234 // Used to protect against reentrancy into dataReceived().
230 bool m_inDataReceived; 235 bool m_inDataReceived;
231 RefPtr<SharedBuffer> m_dataBuffer; 236 RefPtr<SharedBuffer> m_dataBuffer;
232 }; 237 };
233 238
234 DECLARE_WEAK_IDENTIFIER_MAP(DocumentLoader); 239 DECLARE_WEAK_IDENTIFIER_MAP(DocumentLoader);
235 240
236 } // namespace blink 241 } // namespace blink
237 242
238 #endif // DocumentLoader_h 243 #endif // DocumentLoader_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698