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

Side by Side Diff: chrome/browser/extensions/api/declarative_webrequest/webrequest_action.h

Issue 15666005: Make WebRequestAction::GetName a pure virtual function (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 7 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/extensions/api/declarative_webrequest/webrequest_action.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_WEBREQUEST_WEBREQUEST_ACTION_H _ 5 #ifndef CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_WEBREQUEST_WEBREQUEST_ACTION_H _
6 #define CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_WEBREQUEST_WEBREQUEST_ACTION_H _ 6 #define CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_WEBREQUEST_WEBREQUEST_ACTION_H _
7 7
8 #include <list> 8 #include <list>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 46
47 namespace extensions { 47 namespace extensions {
48 48
49 typedef linked_ptr<extension_web_request_api_helpers::EventResponseDelta> 49 typedef linked_ptr<extension_web_request_api_helpers::EventResponseDelta>
50 LinkedPtrEventResponseDelta; 50 LinkedPtrEventResponseDelta;
51 51
52 // Base class for all WebRequestActions of the declarative Web Request API. 52 // Base class for all WebRequestActions of the declarative Web Request API.
53 class WebRequestAction : public base::RefCounted<WebRequestAction> { 53 class WebRequestAction : public base::RefCounted<WebRequestAction> {
54 public: 54 public:
55 // Type identifiers for concrete WebRequestActions. If you add a new type, 55 // Type identifiers for concrete WebRequestActions. If you add a new type,
56 // also update |action_names| in WebRequestActionFactory, update the 56 // also update the unittest WebRequestActionTest.GetName, and add a
57 // unittest WebRequestActionTest.GetName, and add a
58 // WebRequestActionWithThreadsTest.Permission* unittest. 57 // WebRequestActionWithThreadsTest.Permission* unittest.
59 enum Type { 58 enum Type {
60 ACTION_CANCEL_REQUEST, 59 ACTION_CANCEL_REQUEST,
61 ACTION_REDIRECT_REQUEST, 60 ACTION_REDIRECT_REQUEST,
62 ACTION_REDIRECT_TO_TRANSPARENT_IMAGE, 61 ACTION_REDIRECT_TO_TRANSPARENT_IMAGE,
63 ACTION_REDIRECT_TO_EMPTY_DOCUMENT, 62 ACTION_REDIRECT_TO_EMPTY_DOCUMENT,
64 ACTION_REDIRECT_BY_REGEX_DOCUMENT, 63 ACTION_REDIRECT_BY_REGEX_DOCUMENT,
65 ACTION_SET_REQUEST_HEADER, 64 ACTION_SET_REQUEST_HEADER,
66 ACTION_REMOVE_REQUEST_HEADER, 65 ACTION_REMOVE_REQUEST_HEADER,
67 ACTION_ADD_RESPONSE_HEADER, 66 ACTION_ADD_RESPONSE_HEADER,
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
99 Type type() const { 98 Type type() const {
100 return type_; 99 return type_;
101 } 100 }
102 101
103 // Compares the Type of two WebRequestActions, needs to be overridden for 102 // Compares the Type of two WebRequestActions, needs to be overridden for
104 // parameterized types. 103 // parameterized types.
105 virtual bool Equals(const WebRequestAction* other) const; 104 virtual bool Equals(const WebRequestAction* other) const;
106 105
107 // Return the JavaScript type name corresponding to type(). If there are 106 // Return the JavaScript type name corresponding to type(). If there are
108 // more names, they are returned separated by a colon. 107 // more names, they are returned separated by a colon.
109 const std::string& GetName() const; 108 virtual std::string GetName() const = 0;
110 109
111 int minimum_priority() const { 110 int minimum_priority() const {
112 return minimum_priority_; 111 return minimum_priority_;
113 } 112 }
114 113
115 HostPermissionsStrategy host_permissions_strategy() const { 114 HostPermissionsStrategy host_permissions_strategy() const {
116 return host_permissions_strategy_; 115 return host_permissions_strategy_;
117 } 116 }
118 117
119 // Returns whether the specified extension has permission to execute this 118 // Returns whether the specified extension has permission to execute this
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 // 179 //
181 // The following are concrete actions. 180 // The following are concrete actions.
182 // 181 //
183 182
184 // Action that instructs to cancel a network request. 183 // Action that instructs to cancel a network request.
185 class WebRequestCancelAction : public WebRequestAction { 184 class WebRequestCancelAction : public WebRequestAction {
186 public: 185 public:
187 WebRequestCancelAction(); 186 WebRequestCancelAction();
188 187
189 // Implementation of WebRequestAction: 188 // Implementation of WebRequestAction:
189 virtual std::string GetName() const OVERRIDE;
190 virtual LinkedPtrEventResponseDelta CreateDelta( 190 virtual LinkedPtrEventResponseDelta CreateDelta(
191 const WebRequestData& request_data, 191 const WebRequestData& request_data,
192 const std::string& extension_id, 192 const std::string& extension_id,
193 const base::Time& extension_install_time) const OVERRIDE; 193 const base::Time& extension_install_time) const OVERRIDE;
194 194
195 private: 195 private:
196 virtual ~WebRequestCancelAction(); 196 virtual ~WebRequestCancelAction();
197 DISALLOW_COPY_AND_ASSIGN(WebRequestCancelAction); 197 DISALLOW_COPY_AND_ASSIGN(WebRequestCancelAction);
198 }; 198 };
199 199
200 // Action that instructs to redirect a network request. 200 // Action that instructs to redirect a network request.
201 class WebRequestRedirectAction : public WebRequestAction { 201 class WebRequestRedirectAction : public WebRequestAction {
202 public: 202 public:
203 explicit WebRequestRedirectAction(const GURL& redirect_url); 203 explicit WebRequestRedirectAction(const GURL& redirect_url);
204 204
205 // Implementation of WebRequestAction: 205 // Implementation of WebRequestAction:
206 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 206 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
207 virtual std::string GetName() const OVERRIDE;
207 virtual LinkedPtrEventResponseDelta CreateDelta( 208 virtual LinkedPtrEventResponseDelta CreateDelta(
208 const WebRequestData& request_data, 209 const WebRequestData& request_data,
209 const std::string& extension_id, 210 const std::string& extension_id,
210 const base::Time& extension_install_time) const OVERRIDE; 211 const base::Time& extension_install_time) const OVERRIDE;
211 212
212 private: 213 private:
213 virtual ~WebRequestRedirectAction(); 214 virtual ~WebRequestRedirectAction();
214 215
215 GURL redirect_url_; // Target to which the request shall be redirected. 216 GURL redirect_url_; // Target to which the request shall be redirected.
216 217
217 DISALLOW_COPY_AND_ASSIGN(WebRequestRedirectAction); 218 DISALLOW_COPY_AND_ASSIGN(WebRequestRedirectAction);
218 }; 219 };
219 220
220 // Action that instructs to redirect a network request to a transparent image. 221 // Action that instructs to redirect a network request to a transparent image.
221 class WebRequestRedirectToTransparentImageAction : public WebRequestAction { 222 class WebRequestRedirectToTransparentImageAction : public WebRequestAction {
222 public: 223 public:
223 WebRequestRedirectToTransparentImageAction(); 224 WebRequestRedirectToTransparentImageAction();
224 225
225 // Implementation of WebRequestAction: 226 // Implementation of WebRequestAction:
227 virtual std::string GetName() const OVERRIDE;
226 virtual LinkedPtrEventResponseDelta CreateDelta( 228 virtual LinkedPtrEventResponseDelta CreateDelta(
227 const WebRequestData& request_data, 229 const WebRequestData& request_data,
228 const std::string& extension_id, 230 const std::string& extension_id,
229 const base::Time& extension_install_time) const OVERRIDE; 231 const base::Time& extension_install_time) const OVERRIDE;
230 232
231 private: 233 private:
232 virtual ~WebRequestRedirectToTransparentImageAction(); 234 virtual ~WebRequestRedirectToTransparentImageAction();
233 DISALLOW_COPY_AND_ASSIGN(WebRequestRedirectToTransparentImageAction); 235 DISALLOW_COPY_AND_ASSIGN(WebRequestRedirectToTransparentImageAction);
234 }; 236 };
235 237
236 238
237 // Action that instructs to redirect a network request to an empty document. 239 // Action that instructs to redirect a network request to an empty document.
238 class WebRequestRedirectToEmptyDocumentAction : public WebRequestAction { 240 class WebRequestRedirectToEmptyDocumentAction : public WebRequestAction {
239 public: 241 public:
240 WebRequestRedirectToEmptyDocumentAction(); 242 WebRequestRedirectToEmptyDocumentAction();
241 243
242 // Implementation of WebRequestAction: 244 // Implementation of WebRequestAction:
245 virtual std::string GetName() const OVERRIDE;
243 virtual LinkedPtrEventResponseDelta CreateDelta( 246 virtual LinkedPtrEventResponseDelta CreateDelta(
244 const WebRequestData& request_data, 247 const WebRequestData& request_data,
245 const std::string& extension_id, 248 const std::string& extension_id,
246 const base::Time& extension_install_time) const OVERRIDE; 249 const base::Time& extension_install_time) const OVERRIDE;
247 250
248 private: 251 private:
249 virtual ~WebRequestRedirectToEmptyDocumentAction(); 252 virtual ~WebRequestRedirectToEmptyDocumentAction();
250 DISALLOW_COPY_AND_ASSIGN(WebRequestRedirectToEmptyDocumentAction); 253 DISALLOW_COPY_AND_ASSIGN(WebRequestRedirectToEmptyDocumentAction);
251 }; 254 };
252 255
253 // Action that instructs to redirect a network request. 256 // Action that instructs to redirect a network request.
254 class WebRequestRedirectByRegExAction : public WebRequestAction { 257 class WebRequestRedirectByRegExAction : public WebRequestAction {
255 public: 258 public:
256 // The |to_pattern| has to be passed in RE2 syntax with the exception that 259 // The |to_pattern| has to be passed in RE2 syntax with the exception that
257 // capture groups are referenced in Perl style ($1, $2, ...). 260 // capture groups are referenced in Perl style ($1, $2, ...).
258 explicit WebRequestRedirectByRegExAction(scoped_ptr<re2::RE2> from_pattern, 261 explicit WebRequestRedirectByRegExAction(scoped_ptr<re2::RE2> from_pattern,
259 const std::string& to_pattern); 262 const std::string& to_pattern);
260 263
261 // Conversion of capture group styles between Perl style ($1, $2, ...) and 264 // Conversion of capture group styles between Perl style ($1, $2, ...) and
262 // RE2 (\1, \2, ...). 265 // RE2 (\1, \2, ...).
263 static std::string PerlToRe2Style(const std::string& perl); 266 static std::string PerlToRe2Style(const std::string& perl);
264 267
265 // Implementation of WebRequestAction: 268 // Implementation of WebRequestAction:
266 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 269 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
270 virtual std::string GetName() const OVERRIDE;
267 virtual LinkedPtrEventResponseDelta CreateDelta( 271 virtual LinkedPtrEventResponseDelta CreateDelta(
268 const WebRequestData& request_data, 272 const WebRequestData& request_data,
269 const std::string& extension_id, 273 const std::string& extension_id,
270 const base::Time& extension_install_time) const OVERRIDE; 274 const base::Time& extension_install_time) const OVERRIDE;
271 275
272 private: 276 private:
273 virtual ~WebRequestRedirectByRegExAction(); 277 virtual ~WebRequestRedirectByRegExAction();
274 278
275 scoped_ptr<re2::RE2> from_pattern_; 279 scoped_ptr<re2::RE2> from_pattern_;
276 std::string to_pattern_; 280 std::string to_pattern_;
277 281
278 DISALLOW_COPY_AND_ASSIGN(WebRequestRedirectByRegExAction); 282 DISALLOW_COPY_AND_ASSIGN(WebRequestRedirectByRegExAction);
279 }; 283 };
280 284
281 // Action that instructs to set a request header. 285 // Action that instructs to set a request header.
282 class WebRequestSetRequestHeaderAction : public WebRequestAction { 286 class WebRequestSetRequestHeaderAction : public WebRequestAction {
283 public: 287 public:
284 WebRequestSetRequestHeaderAction(const std::string& name, 288 WebRequestSetRequestHeaderAction(const std::string& name,
285 const std::string& value); 289 const std::string& value);
286 290
287 // Implementation of WebRequestAction: 291 // Implementation of WebRequestAction:
288 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 292 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
293 virtual std::string GetName() const OVERRIDE;
289 virtual LinkedPtrEventResponseDelta CreateDelta( 294 virtual LinkedPtrEventResponseDelta CreateDelta(
290 const WebRequestData& request_data, 295 const WebRequestData& request_data,
291 const std::string& extension_id, 296 const std::string& extension_id,
292 const base::Time& extension_install_time) const OVERRIDE; 297 const base::Time& extension_install_time) const OVERRIDE;
293 298
294 private: 299 private:
295 virtual ~WebRequestSetRequestHeaderAction(); 300 virtual ~WebRequestSetRequestHeaderAction();
296 301
297 std::string name_; 302 std::string name_;
298 std::string value_; 303 std::string value_;
299 DISALLOW_COPY_AND_ASSIGN(WebRequestSetRequestHeaderAction); 304 DISALLOW_COPY_AND_ASSIGN(WebRequestSetRequestHeaderAction);
300 }; 305 };
301 306
302 // Action that instructs to remove a request header. 307 // Action that instructs to remove a request header.
303 class WebRequestRemoveRequestHeaderAction : public WebRequestAction { 308 class WebRequestRemoveRequestHeaderAction : public WebRequestAction {
304 public: 309 public:
305 explicit WebRequestRemoveRequestHeaderAction(const std::string& name); 310 explicit WebRequestRemoveRequestHeaderAction(const std::string& name);
306 311
307 // Implementation of WebRequestAction: 312 // Implementation of WebRequestAction:
308 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 313 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
314 virtual std::string GetName() const OVERRIDE;
309 virtual LinkedPtrEventResponseDelta CreateDelta( 315 virtual LinkedPtrEventResponseDelta CreateDelta(
310 const WebRequestData& request_data, 316 const WebRequestData& request_data,
311 const std::string& extension_id, 317 const std::string& extension_id,
312 const base::Time& extension_install_time) const OVERRIDE; 318 const base::Time& extension_install_time) const OVERRIDE;
313 319
314 private: 320 private:
315 virtual ~WebRequestRemoveRequestHeaderAction(); 321 virtual ~WebRequestRemoveRequestHeaderAction();
316 322
317 std::string name_; 323 std::string name_;
318 DISALLOW_COPY_AND_ASSIGN(WebRequestRemoveRequestHeaderAction); 324 DISALLOW_COPY_AND_ASSIGN(WebRequestRemoveRequestHeaderAction);
319 }; 325 };
320 326
321 // Action that instructs to add a response header. 327 // Action that instructs to add a response header.
322 class WebRequestAddResponseHeaderAction : public WebRequestAction { 328 class WebRequestAddResponseHeaderAction : public WebRequestAction {
323 public: 329 public:
324 WebRequestAddResponseHeaderAction(const std::string& name, 330 WebRequestAddResponseHeaderAction(const std::string& name,
325 const std::string& value); 331 const std::string& value);
326 332
327 // Implementation of WebRequestAction: 333 // Implementation of WebRequestAction:
328 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 334 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
335 virtual std::string GetName() const OVERRIDE;
329 virtual LinkedPtrEventResponseDelta CreateDelta( 336 virtual LinkedPtrEventResponseDelta CreateDelta(
330 const WebRequestData& request_data, 337 const WebRequestData& request_data,
331 const std::string& extension_id, 338 const std::string& extension_id,
332 const base::Time& extension_install_time) const OVERRIDE; 339 const base::Time& extension_install_time) const OVERRIDE;
333 340
334 private: 341 private:
335 virtual ~WebRequestAddResponseHeaderAction(); 342 virtual ~WebRequestAddResponseHeaderAction();
336 343
337 std::string name_; 344 std::string name_;
338 std::string value_; 345 std::string value_;
339 DISALLOW_COPY_AND_ASSIGN(WebRequestAddResponseHeaderAction); 346 DISALLOW_COPY_AND_ASSIGN(WebRequestAddResponseHeaderAction);
340 }; 347 };
341 348
342 // Action that instructs to remove a response header. 349 // Action that instructs to remove a response header.
343 class WebRequestRemoveResponseHeaderAction : public WebRequestAction { 350 class WebRequestRemoveResponseHeaderAction : public WebRequestAction {
344 public: 351 public:
345 explicit WebRequestRemoveResponseHeaderAction(const std::string& name, 352 explicit WebRequestRemoveResponseHeaderAction(const std::string& name,
346 const std::string& value, 353 const std::string& value,
347 bool has_value); 354 bool has_value);
348 355
349 // Implementation of WebRequestAction: 356 // Implementation of WebRequestAction:
350 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 357 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
358 virtual std::string GetName() const OVERRIDE;
351 virtual LinkedPtrEventResponseDelta CreateDelta( 359 virtual LinkedPtrEventResponseDelta CreateDelta(
352 const WebRequestData& request_data, 360 const WebRequestData& request_data,
353 const std::string& extension_id, 361 const std::string& extension_id,
354 const base::Time& extension_install_time) const OVERRIDE; 362 const base::Time& extension_install_time) const OVERRIDE;
355 363
356 private: 364 private:
357 virtual ~WebRequestRemoveResponseHeaderAction(); 365 virtual ~WebRequestRemoveResponseHeaderAction();
358 366
359 std::string name_; 367 std::string name_;
360 std::string value_; 368 std::string value_;
361 bool has_value_; 369 bool has_value_;
362 DISALLOW_COPY_AND_ASSIGN(WebRequestRemoveResponseHeaderAction); 370 DISALLOW_COPY_AND_ASSIGN(WebRequestRemoveResponseHeaderAction);
363 }; 371 };
364 372
365 // Action that instructs to ignore rules below a certain priority. 373 // Action that instructs to ignore rules below a certain priority.
366 class WebRequestIgnoreRulesAction : public WebRequestAction { 374 class WebRequestIgnoreRulesAction : public WebRequestAction {
367 public: 375 public:
368 explicit WebRequestIgnoreRulesAction(int minimum_priority, 376 explicit WebRequestIgnoreRulesAction(int minimum_priority,
369 const std::string& ignore_tag); 377 const std::string& ignore_tag);
370 378
371 // Implementation of WebRequestAction: 379 // Implementation of WebRequestAction:
372 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 380 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
381 virtual std::string GetName() const OVERRIDE;
373 virtual LinkedPtrEventResponseDelta CreateDelta( 382 virtual LinkedPtrEventResponseDelta CreateDelta(
374 const WebRequestData& request_data, 383 const WebRequestData& request_data,
375 const std::string& extension_id, 384 const std::string& extension_id,
376 const base::Time& extension_install_time) const OVERRIDE; 385 const base::Time& extension_install_time) const OVERRIDE;
377 const std::string& ignore_tag() const { return ignore_tag_; } 386 const std::string& ignore_tag() const { return ignore_tag_; }
378 387
379 private: 388 private:
380 virtual ~WebRequestIgnoreRulesAction(); 389 virtual ~WebRequestIgnoreRulesAction();
381 390
382 // Rules are ignored if they have a tag matching |ignore_tag_| and 391 // Rules are ignored if they have a tag matching |ignore_tag_| and
383 // |ignore_tag_| is non-empty. 392 // |ignore_tag_| is non-empty.
384 std::string ignore_tag_; 393 std::string ignore_tag_;
385 DISALLOW_COPY_AND_ASSIGN(WebRequestIgnoreRulesAction); 394 DISALLOW_COPY_AND_ASSIGN(WebRequestIgnoreRulesAction);
386 }; 395 };
387 396
388 // Action that instructs to modify (add, edit, remove) a request cookie. 397 // Action that instructs to modify (add, edit, remove) a request cookie.
389 class WebRequestRequestCookieAction : public WebRequestAction { 398 class WebRequestRequestCookieAction : public WebRequestAction {
390 public: 399 public:
391 typedef extension_web_request_api_helpers::RequestCookieModification 400 typedef extension_web_request_api_helpers::RequestCookieModification
392 RequestCookieModification; 401 RequestCookieModification;
393 402
394 explicit WebRequestRequestCookieAction( 403 explicit WebRequestRequestCookieAction(
395 linked_ptr<RequestCookieModification> request_cookie_modification); 404 linked_ptr<RequestCookieModification> request_cookie_modification);
396 405
397 // Implementation of WebRequestAction: 406 // Implementation of WebRequestAction:
398 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 407 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
408 virtual std::string GetName() const OVERRIDE;
399 virtual LinkedPtrEventResponseDelta CreateDelta( 409 virtual LinkedPtrEventResponseDelta CreateDelta(
400 const WebRequestData& request_data, 410 const WebRequestData& request_data,
401 const std::string& extension_id, 411 const std::string& extension_id,
402 const base::Time& extension_install_time) const OVERRIDE; 412 const base::Time& extension_install_time) const OVERRIDE;
403 413
404 private: 414 private:
405 virtual ~WebRequestRequestCookieAction(); 415 virtual ~WebRequestRequestCookieAction();
406 416
407 linked_ptr<RequestCookieModification> request_cookie_modification_; 417 linked_ptr<RequestCookieModification> request_cookie_modification_;
408 DISALLOW_COPY_AND_ASSIGN(WebRequestRequestCookieAction); 418 DISALLOW_COPY_AND_ASSIGN(WebRequestRequestCookieAction);
409 }; 419 };
410 420
411 // Action that instructs to modify (add, edit, remove) a response cookie. 421 // Action that instructs to modify (add, edit, remove) a response cookie.
412 class WebRequestResponseCookieAction : public WebRequestAction { 422 class WebRequestResponseCookieAction : public WebRequestAction {
413 public: 423 public:
414 typedef extension_web_request_api_helpers::ResponseCookieModification 424 typedef extension_web_request_api_helpers::ResponseCookieModification
415 ResponseCookieModification; 425 ResponseCookieModification;
416 426
417 explicit WebRequestResponseCookieAction( 427 explicit WebRequestResponseCookieAction(
418 linked_ptr<ResponseCookieModification> response_cookie_modification); 428 linked_ptr<ResponseCookieModification> response_cookie_modification);
419 429
420 // Implementation of WebRequestAction: 430 // Implementation of WebRequestAction:
421 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 431 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
432 virtual std::string GetName() const OVERRIDE;
422 virtual LinkedPtrEventResponseDelta CreateDelta( 433 virtual LinkedPtrEventResponseDelta CreateDelta(
423 const WebRequestData& request_data, 434 const WebRequestData& request_data,
424 const std::string& extension_id, 435 const std::string& extension_id,
425 const base::Time& extension_install_time) const OVERRIDE; 436 const base::Time& extension_install_time) const OVERRIDE;
426 437
427 private: 438 private:
428 virtual ~WebRequestResponseCookieAction(); 439 virtual ~WebRequestResponseCookieAction();
429 440
430 linked_ptr<ResponseCookieModification> response_cookie_modification_; 441 linked_ptr<ResponseCookieModification> response_cookie_modification_;
431 DISALLOW_COPY_AND_ASSIGN(WebRequestResponseCookieAction); 442 DISALLOW_COPY_AND_ASSIGN(WebRequestResponseCookieAction);
432 }; 443 };
433 444
434 // Action that triggers the chrome.declarativeWebRequest.onMessage event in 445 // Action that triggers the chrome.declarativeWebRequest.onMessage event in
435 // the background/event/... pages of the extension. 446 // the background/event/... pages of the extension.
436 class WebRequestSendMessageToExtensionAction : public WebRequestAction { 447 class WebRequestSendMessageToExtensionAction : public WebRequestAction {
437 public: 448 public:
438 explicit WebRequestSendMessageToExtensionAction(const std::string& message); 449 explicit WebRequestSendMessageToExtensionAction(const std::string& message);
439 450
440 // Implementation of WebRequestAction: 451 // Implementation of WebRequestAction:
441 virtual bool Equals(const WebRequestAction* other) const OVERRIDE; 452 virtual bool Equals(const WebRequestAction* other) const OVERRIDE;
453 virtual std::string GetName() const OVERRIDE;
442 virtual LinkedPtrEventResponseDelta CreateDelta( 454 virtual LinkedPtrEventResponseDelta CreateDelta(
443 const WebRequestData& request_data, 455 const WebRequestData& request_data,
444 const std::string& extension_id, 456 const std::string& extension_id,
445 const base::Time& extension_install_time) const OVERRIDE; 457 const base::Time& extension_install_time) const OVERRIDE;
446 458
447 private: 459 private:
448 virtual ~WebRequestSendMessageToExtensionAction(); 460 virtual ~WebRequestSendMessageToExtensionAction();
449 461
450 std::string message_; 462 std::string message_;
451 DISALLOW_COPY_AND_ASSIGN(WebRequestSendMessageToExtensionAction); 463 DISALLOW_COPY_AND_ASSIGN(WebRequestSendMessageToExtensionAction);
452 }; 464 };
453 465
454 } // namespace extensions 466 } // namespace extensions
455 467
456 #endif // CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_WEBREQUEST_WEBREQUEST_ACTIO N_H_ 468 #endif // CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_WEBREQUEST_WEBREQUEST_ACTIO N_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/extensions/api/declarative_webrequest/webrequest_action.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698