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

Side by Side Diff: Source/core/loader/LinkHeader.h

Issue 1135203002: Add <link rel=preconnect> crossorigin attribute (take 2) (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Todo Created 5 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
« no previous file with comments | « Source/core/html/CrossOriginAttribute.cpp ('k') | Source/core/loader/LinkHeader.cpp » ('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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 LinkHeader_h 5 #ifndef LinkHeader_h
6 #define LinkHeader_h 6 #define LinkHeader_h
7 7
8 #include "core/CoreExport.h" 8 #include "core/CoreExport.h"
9 #include "core/html/CrossOriginAttribute.h"
9 #include "wtf/text/WTFString.h" 10 #include "wtf/text/WTFString.h"
10 11
11 namespace blink { 12 namespace blink {
12 13
13 class LinkHeader { 14 class LinkHeader {
14 public: 15 public:
15 template <typename CharType> 16 template <typename CharType>
16 LinkHeader(CharType*& position, CharType* end); 17 LinkHeader(CharType*& position, CharType* end);
17 18
18 const String url() const { return m_url; }; 19 const String url() const { return m_url; };
19 const String rel() const { return m_rel; }; 20 const String rel() const { return m_rel; };
21 CrossOriginAttributeValue crossOrigin() const { return m_crossOrigin; }
20 bool valid() const { return m_isValid; }; 22 bool valid() const { return m_isValid; };
21 23
22 enum LinkParameterName { 24 enum LinkParameterName {
23 LinkParameterUnknown, 25 LinkParameterUnknown,
24 LinkParameterRel, 26 LinkParameterRel,
25 LinkParameterAnchor, 27 LinkParameterAnchor,
28 LinkParameterCrossOrigin,
26 }; 29 };
27 30
28 private: 31 private:
29 void setValue(LinkParameterName, String value); 32 void setValue(LinkParameterName, String value);
30 33
31 String m_url; 34 String m_url;
32 String m_rel; 35 String m_rel;
36 CrossOriginAttributeValue m_crossOrigin;
33 bool m_isValid; 37 bool m_isValid;
34 }; 38 };
35 39
36 class CORE_EXPORT LinkHeaderSet { 40 class CORE_EXPORT LinkHeaderSet {
37 public: 41 public:
38 LinkHeaderSet(const String& header); 42 LinkHeaderSet(const String& header);
39 43
40 Vector<LinkHeader>::const_iterator begin() const { return m_headerSet.begin( ); } 44 Vector<LinkHeader>::const_iterator begin() const { return m_headerSet.begin( ); }
41 Vector<LinkHeader>::const_iterator end() const { return m_headerSet.end(); } 45 Vector<LinkHeader>::const_iterator end() const { return m_headerSet.end(); }
42 LinkHeader& operator[](size_t i) { return m_headerSet[i]; } 46 LinkHeader& operator[](size_t i) { return m_headerSet[i]; }
43 size_t size() { return m_headerSet.size(); } 47 size_t size() { return m_headerSet.size(); }
44 48
45 private: 49 private:
46 template <typename CharType> 50 template <typename CharType>
47 void init(CharType* headerValue, unsigned len); 51 void init(CharType* headerValue, unsigned len);
48 52
49 Vector<LinkHeader> m_headerSet; 53 Vector<LinkHeader> m_headerSet;
50 }; 54 };
51 55
52 } 56 }
53 57
54 #endif 58 #endif
OLDNEW
« no previous file with comments | « Source/core/html/CrossOriginAttribute.cpp ('k') | Source/core/loader/LinkHeader.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698