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

Side by Side Diff: chrome/common/extensions/url_pattern.h

Issue 6749021: Added new fileBrowserPrivate and fileHandler extension APIs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 8 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
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #ifndef CHROME_COMMON_EXTENSIONS_URL_PATTERN_H_ 4 #ifndef CHROME_COMMON_EXTENSIONS_URL_PATTERN_H_
5 #define CHROME_COMMON_EXTENSIONS_URL_PATTERN_H_ 5 #define CHROME_COMMON_EXTENSIONS_URL_PATTERN_H_
6 #pragma once 6 #pragma once
7 7
8 #include <functional> 8 #include <functional>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
11 11
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 // 70 //
71 // So, we can support at least half of current @include lines without supporting 71 // So, we can support at least half of current @include lines without supporting
72 // subdomain matching. We can pick up at least another 10% by supporting 72 // subdomain matching. We can pick up at least another 10% by supporting
73 // subdomain matching. It is probably possible to coerce more of the existing 73 // subdomain matching. It is probably possible to coerce more of the existing
74 // patterns to URLPattern, but the resulting pattern will be more restrictive 74 // patterns to URLPattern, but the resulting pattern will be more restrictive
75 // than the original glob, which is probably better than nothing. 75 // than the original glob, which is probably better than nothing.
76 class URLPattern { 76 class URLPattern {
77 public: 77 public:
78 // A collection of scheme bitmasks for use with valid_schemes. 78 // A collection of scheme bitmasks for use with valid_schemes.
79 enum SchemeMasks { 79 enum SchemeMasks {
80 SCHEME_NONE = 0, 80 SCHEME_NONE = 0,
81 SCHEME_HTTP = 1 << 0, 81 SCHEME_HTTP = 1 << 0,
82 SCHEME_HTTPS = 1 << 1, 82 SCHEME_HTTPS = 1 << 1,
83 SCHEME_FILE = 1 << 2, 83 SCHEME_FILE = 1 << 2,
84 SCHEME_FTP = 1 << 3, 84 SCHEME_FTP = 1 << 3,
85 SCHEME_CHROMEUI = 1 << 4, 85 SCHEME_CHROMEUI = 1 << 4,
86 SCHEME_FILESYSTEM = 1 << 5,
86 // SCHEME_ALL will match every scheme, including chrome://, chrome- 87 // SCHEME_ALL will match every scheme, including chrome://, chrome-
87 // extension://, about:, etc. Because this has lots of security 88 // extension://, about:, etc. Because this has lots of security
88 // implications, third-party extensions should never be able to get access 89 // implications, third-party extensions should never be able to get access
89 // to URL patterns initialized this way. It should only be used for internal 90 // to URL patterns initialized this way. It should only be used for internal
90 // Chrome code. 91 // Chrome code.
91 SCHEME_ALL = -1, 92 SCHEME_ALL = -1,
92 }; 93 };
93 94
94 // Options for URLPattern::Parse(). 95 // Options for URLPattern::Parse().
95 enum ParseOption { 96 enum ParseOption {
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 std::string path_; 258 std::string path_;
258 259
259 // The path with "?" and "\" characters escaped for use with the 260 // The path with "?" and "\" characters escaped for use with the
260 // MatchPattern() function. 261 // MatchPattern() function.
261 std::string path_escaped_; 262 std::string path_escaped_;
262 }; 263 };
263 264
264 typedef std::vector<URLPattern> URLPatternList; 265 typedef std::vector<URLPattern> URLPatternList;
265 266
266 #endif // CHROME_COMMON_EXTENSIONS_URL_PATTERN_H_ 267 #endif // CHROME_COMMON_EXTENSIONS_URL_PATTERN_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698