| Index: device/nfc/nfc_ndef_record.h
|
| diff --git a/device/nfc/nfc_ndef_record.h b/device/nfc/nfc_ndef_record.h
|
| deleted file mode 100644
|
| index 05c019cd1c2ceae7b1b16232f94311252b87427c..0000000000000000000000000000000000000000
|
| --- a/device/nfc/nfc_ndef_record.h
|
| +++ /dev/null
|
| @@ -1,168 +0,0 @@
|
| -// Copyright 2013 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef DEVICE_NFC_NFC_NDEF_RECORD_H_
|
| -#define DEVICE_NFC_NFC_NDEF_RECORD_H_
|
| -
|
| -#include <string>
|
| -#include <vector>
|
| -
|
| -#include "base/macros.h"
|
| -#include "base/values.h"
|
| -
|
| -namespace device {
|
| -
|
| -// NfcNdefRecord represents an NDEF (NFC Data Exchange Format) record. NDEF is
|
| -// a light-weight binary format specified by the NFC Forum for transmission and
|
| -// storage of typed data over NFC. NDEF defines two constructs: NDEF records and
|
| -// messages. An NDEF record contains typed data, such as MIME-type media, a URI,
|
| -// or a custom application payload, whereas an NDEF message is a container for
|
| -// one or more NDEF records.
|
| -class NfcNdefRecord {
|
| - public:
|
| - // NDEF record types that define the payload of the NDEF record.
|
| - enum Type {
|
| - kTypeHandoverCarrier,
|
| - kTypeHandoverRequest,
|
| - kTypeHandoverSelect,
|
| - kTypeSmartPoster,
|
| - kTypeText,
|
| - kTypeURI,
|
| - kTypeUnknown
|
| - };
|
| -
|
| - // The following are strings that define a possible field of an NDEF record.
|
| - // These strings are used as the keys in the dictionary returned by |data|.
|
| - // Not all fields are always present in an NDEF record, where the presence
|
| - // of a field depends on the type of the record. While some fields are
|
| - // required for a specific record type, others can be optional and won't
|
| - // always be present.
|
| -
|
| - // Fields for type "Text".
|
| -
|
| - // The character encoding. When present, the value is one of |kEncodingUtf8|
|
| - // and |kEncodingUtf16|. Otherwise, this field is optional.
|
| - static const char kFieldEncoding[];
|
| -
|
| - // The ISO/IANA language code (e.g. "en" or "jp"). This field is optional.
|
| - static const char kFieldLanguageCode[];
|
| -
|
| - // The human readable representation of a text. This field is mandatory.
|
| - static const char kFieldText[];
|
| -
|
| - // Fields for type "URI".
|
| -
|
| - // The complete URI, including the scheme and the resource. This field is
|
| - // required.
|
| - static const char kFieldURI[];
|
| -
|
| - // The URI object MIME type. This is a description of the MIME type of the
|
| - // object the URI points at. This field is optional.
|
| - static const char kFieldMimeType[];
|
| -
|
| - // The size of the object the URI points at. This field is optional.
|
| - // If present, the value is an unsigned integer. Since base/values.h does not
|
| - // define an unsigned integer type, use a base::DoubleValue to store this.
|
| - static const char kFieldTargetSize[];
|
| -
|
| - // Fields for type "SmartPoster". A SmartPoster can contain all possible
|
| - // fields of a "URI" record, in addition to the following:
|
| -
|
| - // The "title" of the SmartPoster. This is an optional field. If present, the
|
| - // value of this field is a list of dictionaries, where each dictionary
|
| - // contains the possible fields of a "Text" record. If the list contains
|
| - // more than one element, each element usually represents the same "title"
|
| - // text in a different language.
|
| - static const char kFieldTitles[];
|
| -
|
| - // The suggested course of action. The value of this field is one of
|
| - // |kSmartPosterAction*|. This field is optional.
|
| - static const char kFieldAction[];
|
| -
|
| - // Possible values for character encoding.
|
| - static const char kEncodingUtf8[];
|
| - static const char kEncodingUtf16[];
|
| -
|
| - // Possible actions defined by the NFC forum SmartPoster record type. Each
|
| - // action is a suggestion to the application indicating the action it should
|
| - // take with the contents of the record.
|
| -
|
| - // Do the action. e.g. open a URI, send an SMS, dial a phone number.
|
| - static const char kSmartPosterActionDo[];
|
| -
|
| - // Store data, e.g. store an SMS, bookmark a URI, etc.
|
| - static const char kSmartPosterActionSave[];
|
| -
|
| - // Open the data for editing.
|
| - static const char kSmartPosterActionOpen[];
|
| -
|
| - NfcNdefRecord();
|
| - virtual ~NfcNdefRecord();
|
| -
|
| - // Returns the type that defines the payload of this NDEF record.
|
| - Type type() const { return type_; }
|
| -
|
| - // Returns the contents of this record in the form of a mapping from keys
|
| - // declared above to their stored values.
|
| - const base::DictionaryValue& data() const { return data_; }
|
| -
|
| - // Returns true, if this record has been populated via a call to "Populate".
|
| - bool IsPopulated() const;
|
| -
|
| - // Populates the record with the contents of |data| and sets its type to
|
| - // |type|. Returns true, if the record was successfully populated. If a
|
| - // failure occurs, e.g. |data| contains values that are not allowed in
|
| - // records of type |type| or if |data| does not contain mandatory fields of
|
| - // |type|, this method returns false. Populating an instance of an
|
| - // NfcNdefRecord is allowed only once and after a successful call to this
|
| - // method, all subsequent calls to this method will fail. Use IsPopulated()
|
| - // to determine if this record can be populated.
|
| - bool Populate(Type type, const base::DictionaryValue* data);
|
| -
|
| - private:
|
| - // The type of this record.
|
| - Type type_;
|
| -
|
| - // The contents of the record.
|
| - base::DictionaryValue data_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(NfcNdefRecord);
|
| -};
|
| -
|
| -// NfcNdefMessage represent an NDEF message. An NDEF message, contains one or
|
| -// more NDEF records and the order in which the records are stored dictates the
|
| -// order in which applications are meant to interpret them. For example, a
|
| -// client may decide to dispatch to applications based on the first record in
|
| -// the sequence.
|
| -class NfcNdefMessage {
|
| - public:
|
| - // Typedef for a list of NDEF records.
|
| - typedef std::vector<NfcNdefRecord*> RecordList;
|
| -
|
| - NfcNdefMessage();
|
| - virtual ~NfcNdefMessage();
|
| -
|
| - // The NDEF records that are contained in this message.
|
| - const RecordList& records() const { return records_; }
|
| -
|
| - // Adds the NDEF record |record| to the sequence of records that this
|
| - // NfcNdefMessage contains. This method simply adds the record to this message
|
| - // and does NOT take ownership of it.
|
| - void AddRecord(NfcNdefRecord* record);
|
| -
|
| - // Removes the NDEF record |record| from this message. Returns true, if the
|
| - // record was removed, otherwise returns false if |record| was not contained
|
| - // in this message.
|
| - bool RemoveRecord(NfcNdefRecord* record);
|
| -
|
| - private:
|
| - // The NDEF records that are contained by this message.
|
| - RecordList records_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(NfcNdefMessage);
|
| -};
|
| -
|
| -} // namespace device
|
| -
|
| -#endif // DEVICE_NFC_NFC_NDEF_RECORD_H_
|
|
|