OLD | NEW |
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 #include "modules/nfc/NFC.h" | 5 #include "modules/nfc/NFC.h" |
6 | 6 |
7 #include "bindings/core/v8/JSONValuesForV8.h" | 7 #include "bindings/core/v8/JSONValuesForV8.h" |
8 #include "bindings/core/v8/ScriptPromiseResolver.h" | 8 #include "bindings/core/v8/ScriptPromiseResolver.h" |
9 #include "bindings/core/v8/V8ArrayBuffer.h" | 9 #include "bindings/core/v8/V8ArrayBuffer.h" |
10 #include "core/dom/DOMArrayBuffer.h" | 10 #include "core/dom/DOMArrayBuffer.h" |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
95 if (value->IsArrayBuffer()) { | 95 if (value->IsArrayBuffer()) { |
96 return NFCRecordType::OPAQUE_RECORD; | 96 return NFCRecordType::OPAQUE_RECORD; |
97 } | 97 } |
98 } | 98 } |
99 | 99 |
100 return NFCRecordType::EMPTY; | 100 return NFCRecordType::EMPTY; |
101 } | 101 } |
102 | 102 |
103 void setMediaType(NFCRecordPtr& recordPtr, const WTF::String& recordMediaType, c
onst WTF::String& defaultMediaType) | 103 void setMediaType(NFCRecordPtr& recordPtr, const WTF::String& recordMediaType, c
onst WTF::String& defaultMediaType) |
104 { | 104 { |
105 recordPtr->mediaType = recordMediaType.isEmpty() ? defaultMediaType : record
MediaType; | 105 recordPtr->media_type = recordMediaType.isEmpty() ? defaultMediaType : recor
dMediaType; |
106 } | 106 } |
107 | 107 |
108 template <> | 108 template <> |
109 struct TypeConverter<mojo::WTFArray<uint8_t>, WTF::String> { | 109 struct TypeConverter<mojo::WTFArray<uint8_t>, WTF::String> { |
110 static mojo::WTFArray<uint8_t> Convert(const WTF::String& string) | 110 static mojo::WTFArray<uint8_t> Convert(const WTF::String& string) |
111 { | 111 { |
112 WTF::CString utf8String = string.utf8(); | 112 WTF::CString utf8String = string.utf8(); |
113 WTF::Vector<uint8_t> array; | 113 WTF::Vector<uint8_t> array; |
114 array.append(utf8String.data(), utf8String.length()); | 114 array.append(utf8String.data(), utf8String.length()); |
115 return mojo::WTFArray<uint8_t>(std::move(array)); | 115 return mojo::WTFArray<uint8_t>(std::move(array)); |
116 } | 116 } |
117 }; | 117 }; |
118 | 118 |
119 template <> | 119 template <> |
120 struct TypeConverter<mojo::WTFArray<uint8_t>, blink::DOMArrayBuffer*> { | 120 struct TypeConverter<mojo::WTFArray<uint8_t>, blink::DOMArrayBuffer*> { |
121 static mojo::WTFArray<uint8_t> Convert(blink::DOMArrayBuffer* buffer) | 121 static mojo::WTFArray<uint8_t> Convert(blink::DOMArrayBuffer* buffer) |
122 { | 122 { |
123 WTF::Vector<uint8_t> array; | 123 WTF::Vector<uint8_t> array; |
124 array.append(static_cast<uint8_t*>(buffer->data()), buffer->byteLength()
); | 124 array.append(static_cast<uint8_t*>(buffer->data()), buffer->byteLength()
); |
125 return mojo::WTFArray<uint8_t>(std::move(array)); | 125 return mojo::WTFArray<uint8_t>(std::move(array)); |
126 } | 126 } |
127 }; | 127 }; |
128 | 128 |
129 template <> | 129 template <> |
130 struct TypeConverter<NFCRecordPtr, WTF::String> { | 130 struct TypeConverter<NFCRecordPtr, WTF::String> { |
131 static NFCRecordPtr Convert(const WTF::String& string) | 131 static NFCRecordPtr Convert(const WTF::String& string) |
132 { | 132 { |
133 NFCRecordPtr record = NFCRecord::New(); | 133 NFCRecordPtr record = NFCRecord::New(); |
134 record->recordType = NFCRecordType::TEXT; | 134 record->record_type = NFCRecordType::TEXT; |
135 record->mediaType = kPlainTextMimeType; | 135 record->media_type = kPlainTextMimeType; |
136 record->mediaType.append(kCharSetUTF8); | 136 record->media_type.append(kCharSetUTF8); |
137 record->data = mojo::WTFArray<uint8_t>::From(string); | 137 record->data = mojo::WTFArray<uint8_t>::From(string); |
138 return record; | 138 return record; |
139 } | 139 } |
140 }; | 140 }; |
141 | 141 |
142 template <> | 142 template <> |
143 struct TypeConverter<NFCRecordPtr, blink::DOMArrayBuffer*> { | 143 struct TypeConverter<NFCRecordPtr, blink::DOMArrayBuffer*> { |
144 static NFCRecordPtr Convert(blink::DOMArrayBuffer* buffer) | 144 static NFCRecordPtr Convert(blink::DOMArrayBuffer* buffer) |
145 { | 145 { |
146 NFCRecordPtr record = NFCRecord::New(); | 146 NFCRecordPtr record = NFCRecord::New(); |
147 record->recordType = NFCRecordType::OPAQUE_RECORD; | 147 record->record_type = NFCRecordType::OPAQUE_RECORD; |
148 record->mediaType = kOpaqueMimeType; | 148 record->media_type = kOpaqueMimeType; |
149 record->data = mojo::WTFArray<uint8_t>::From(buffer); | 149 record->data = mojo::WTFArray<uint8_t>::From(buffer); |
150 return record; | 150 return record; |
151 } | 151 } |
152 }; | 152 }; |
153 | 153 |
154 template <> | 154 template <> |
155 struct TypeConverter<NFCMessagePtr, WTF::String> { | 155 struct TypeConverter<NFCMessagePtr, WTF::String> { |
156 static NFCMessagePtr Convert(const WTF::String& string) | 156 static NFCMessagePtr Convert(const WTF::String& string) |
157 { | 157 { |
158 NFCMessagePtr message = NFCMessage::New(); | 158 NFCMessagePtr message = NFCMessage::New(); |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
190 } | 190 } |
191 }; | 191 }; |
192 | 192 |
193 template <> | 193 template <> |
194 struct TypeConverter<NFCRecordPtr, blink::NFCRecord> { | 194 struct TypeConverter<NFCRecordPtr, blink::NFCRecord> { |
195 static NFCRecordPtr Convert(const blink::NFCRecord& record) | 195 static NFCRecordPtr Convert(const blink::NFCRecord& record) |
196 { | 196 { |
197 NFCRecordPtr recordPtr = NFCRecord::New(); | 197 NFCRecordPtr recordPtr = NFCRecord::New(); |
198 | 198 |
199 if (record.hasRecordType()) | 199 if (record.hasRecordType()) |
200 recordPtr->recordType = toNFCRecordType(record.recordType()); | 200 recordPtr->record_type = toNFCRecordType(record.recordType()); |
201 else | 201 else |
202 recordPtr->recordType = deduceRecordTypeFromDataType(record); | 202 recordPtr->record_type = deduceRecordTypeFromDataType(record); |
203 | 203 |
204 // If record type is "empty", no need to set media type or data. | 204 // If record type is "empty", no need to set media type or data. |
205 // https://w3c.github.io/web-nfc/#creating-web-nfc-message | 205 // https://w3c.github.io/web-nfc/#creating-web-nfc-message |
206 if (recordPtr->recordType == NFCRecordType::EMPTY) | 206 if (recordPtr->record_type == NFCRecordType::EMPTY) |
207 return recordPtr; | 207 return recordPtr; |
208 | 208 |
209 switch (recordPtr->recordType) { | 209 switch (recordPtr->record_type) { |
210 case NFCRecordType::TEXT: | 210 case NFCRecordType::TEXT: |
211 case NFCRecordType::URL: | 211 case NFCRecordType::URL: |
212 setMediaType(recordPtr, record.mediaType(), kPlainTextMimeType); | 212 setMediaType(recordPtr, record.mediaType(), kPlainTextMimeType); |
213 recordPtr->mediaType.append(kCharSetUTF8); | 213 recordPtr->media_type.append(kCharSetUTF8); |
214 break; | 214 break; |
215 case NFCRecordType::JSON: | 215 case NFCRecordType::JSON: |
216 setMediaType(recordPtr, record.mediaType(), kJsonMimeType); | 216 setMediaType(recordPtr, record.mediaType(), kJsonMimeType); |
217 break; | 217 break; |
218 case NFCRecordType::OPAQUE_RECORD: | 218 case NFCRecordType::OPAQUE_RECORD: |
219 setMediaType(recordPtr, record.mediaType(), kOpaqueMimeType); | 219 setMediaType(recordPtr, record.mediaType(), kOpaqueMimeType); |
220 break; | 220 break; |
221 default: | 221 default: |
222 NOTREACHED(); | 222 NOTREACHED(); |
223 break; | 223 break; |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
296 pushOptionsPtr->target = toNFCPushTarget(pushOptions.target()); | 296 pushOptionsPtr->target = toNFCPushTarget(pushOptions.target()); |
297 else | 297 else |
298 pushOptionsPtr->target = NFCPushTarget::ANY; | 298 pushOptionsPtr->target = NFCPushTarget::ANY; |
299 | 299 |
300 if (pushOptions.hasTimeout()) | 300 if (pushOptions.hasTimeout()) |
301 pushOptionsPtr->timeout = pushOptions.timeout(); | 301 pushOptionsPtr->timeout = pushOptions.timeout(); |
302 else | 302 else |
303 pushOptionsPtr->timeout = std::numeric_limits<double>::infinity(); | 303 pushOptionsPtr->timeout = std::numeric_limits<double>::infinity(); |
304 | 304 |
305 if (pushOptions.hasIgnoreRead()) | 305 if (pushOptions.hasIgnoreRead()) |
306 pushOptionsPtr->ignoreRead = pushOptions.ignoreRead(); | 306 pushOptionsPtr->ignore_read = pushOptions.ignoreRead(); |
307 else | 307 else |
308 pushOptionsPtr->ignoreRead = true; | 308 pushOptionsPtr->ignore_read = true; |
309 | 309 |
310 return pushOptionsPtr; | 310 return pushOptionsPtr; |
311 } | 311 } |
312 }; | 312 }; |
313 | 313 |
314 } // namespace mojo | 314 } // namespace mojo |
315 | 315 |
316 namespace blink { | 316 namespace blink { |
317 namespace { | 317 namespace { |
318 | 318 |
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
580 } | 580 } |
581 | 581 |
582 DEFINE_TRACE(NFC) | 582 DEFINE_TRACE(NFC) |
583 { | 583 { |
584 PageVisibilityObserver::trace(visitor); | 584 PageVisibilityObserver::trace(visitor); |
585 ContextLifecycleObserver::trace(visitor); | 585 ContextLifecycleObserver::trace(visitor); |
586 visitor->trace(m_requests); | 586 visitor->trace(m_requests); |
587 } | 587 } |
588 | 588 |
589 } // namespace blink | 589 } // namespace blink |
OLD | NEW |