Index: device/nfc/nfc_tag_chromeos.cc |
diff --git a/device/nfc/nfc_tag_chromeos.cc b/device/nfc/nfc_tag_chromeos.cc |
deleted file mode 100644 |
index e2390fa04fbe135415e75d7a21536d8802ec07a2..0000000000000000000000000000000000000000 |
--- a/device/nfc/nfc_tag_chromeos.cc |
+++ /dev/null |
@@ -1,164 +0,0 @@ |
-// Copyright 2014 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. |
- |
-#include "device/nfc/nfc_tag_chromeos.h" |
- |
-#include "chromeos/dbus/dbus_thread_manager.h" |
-#include "device/nfc/nfc_tag_technology_chromeos.h" |
-#include "third_party/cros_system_api/dbus/service_constants.h" |
- |
-using device::NfcTag; |
-using device::NfcTagTechnology; |
-using device::NfcNdefTagTechnology; |
- |
-namespace chromeos { |
- |
-namespace { |
- |
-// Converts an NFC tag type value returned by neard to a NfcTag::TagType enum |
-// value. |
-NfcTag::TagType DBusTypePropertyToTagType(const std::string& type) { |
- if (type == nfc_tag::kTagType1) |
- return NfcTag::kTagType1; |
- if (type == nfc_tag::kTagType2) |
- return NfcTag::kTagType2; |
- if (type == nfc_tag::kTagType3) |
- return NfcTag::kTagType3; |
- if (type == nfc_tag::kTagType4) |
- return NfcTag::kTagType4; |
- return NfcTag::kTagTypeUnknown; |
-} |
- |
-// Converts an NFC tag protocol value returned by neard to a NfcTag::Protocol |
-// enum value. |
-NfcTag::Protocol DBusProtocolPropertyToTagProtocol( |
- const std::string& protocol) { |
- if (protocol == nfc_common::kProtocolFelica) |
- return NfcTag::kProtocolFelica; |
- if (protocol == nfc_common::kProtocolIsoDep) |
- return NfcTag::kProtocolIsoDep; |
- if (protocol == nfc_common::kProtocolJewel) |
- return NfcTag::kProtocolJewel; |
- if (protocol == nfc_common::kProtocolMifare) |
- return NfcTag::kProtocolMifare; |
- if (protocol == nfc_common::kProtocolNfcDep) |
- return NfcTag::kProtocolNfcDep; |
- return NfcTag::kProtocolUnknown; |
-} |
- |
-} // namespace |
- |
-NfcTagChromeOS::NfcTagChromeOS(const dbus::ObjectPath& object_path) |
- : object_path_(object_path), |
- is_ready_(false), |
- ndef_technology_(new NfcNdefTagTechnologyChromeOS(this)) { |
- DBusThreadManager::Get()->GetNfcTagClient()->AddObserver(this); |
-} |
- |
-NfcTagChromeOS::~NfcTagChromeOS() { |
- DBusThreadManager::Get()->GetNfcTagClient()->RemoveObserver(this); |
-} |
- |
-void NfcTagChromeOS::AddObserver(NfcTag::Observer* observer) { |
- observers_.AddObserver(observer); |
-} |
- |
-void NfcTagChromeOS::RemoveObserver(NfcTag::Observer* observer) { |
- observers_.RemoveObserver(observer); |
-} |
- |
-std::string NfcTagChromeOS::GetIdentifier() const { |
- return object_path_.value(); |
-} |
- |
-NfcTag::TagType NfcTagChromeOS::GetType() const { |
- DCHECK(object_path_.IsValid()); |
- return DBusTypePropertyToTagType( |
- DBusThreadManager::Get()->GetNfcTagClient()-> |
- GetProperties(object_path_)->type.value()); |
-} |
- |
-bool NfcTagChromeOS::IsReadOnly() const { |
- DCHECK(object_path_.IsValid()); |
- return DBusThreadManager::Get()->GetNfcTagClient()-> |
- GetProperties(object_path_)->read_only.value(); |
-} |
- |
-NfcTag::Protocol NfcTagChromeOS::GetSupportedProtocol() const { |
- DCHECK(object_path_.IsValid()); |
- return DBusProtocolPropertyToTagProtocol( |
- DBusThreadManager::Get()->GetNfcTagClient()-> |
- GetProperties(object_path_)->protocol.value()); |
-} |
- |
-NfcTagTechnology::TechnologyTypeMask |
-NfcTagChromeOS::GetSupportedTechnologies() const { |
- // Determine supported technologies based on the tag's protocol and |
- // type. |
- NfcTag::TagType type = GetType(); |
- NfcTag::Protocol protocol = GetSupportedProtocol(); |
- if (type == NfcTag::kTagTypeUnknown || protocol == kProtocolUnknown) { |
- VLOG(1) << "Tag type and protocol unknown."; |
- return 0; |
- } |
- |
- NfcTagTechnology::TechnologyTypeMask technologies = 0; |
- technologies |= NfcTagTechnology::kTechnologyTypeNdef; |
- if (type == NfcTag::kTagType3) { |
- DCHECK(protocol == NfcTag::kProtocolFelica); |
- return technologies | NfcTagTechnology::kTechnologyTypeNfcF; |
- } |
- |
- if (protocol == NfcTag::kProtocolIsoDep) { |
- DCHECK(type == NfcTag::kTagType4); |
- technologies |= NfcTagTechnology::kTechnologyTypeIsoDep; |
- // TODO(armansito): Neard doesn't provide enough information to determine |
- // if the underlying wave-form is type A or type B. For now, report |
- // neither. |
- return technologies; |
- } |
- |
- return technologies | NfcTagTechnology::kTechnologyTypeNfcA; |
-} |
- |
-bool NfcTagChromeOS::IsReady() const { |
- return is_ready_; |
-} |
- |
-NfcNdefTagTechnology* NfcTagChromeOS::GetNdefTagTechnology() { |
- return ndef_technology_.get(); |
-} |
- |
-void NfcTagChromeOS::TagPropertyChanged(const dbus::ObjectPath& object_path, |
- const std::string& property_name) { |
- if (object_path != object_path_) |
- return; |
- |
- NfcTagClient::Properties* properties = |
- DBusThreadManager::Get()->GetNfcTagClient()->GetProperties(object_path_); |
- DCHECK(properties); |
- |
- if (property_name == properties->type.name()) { |
- FOR_EACH_OBSERVER(NfcTag::Observer, observers_, |
- TagTypeChanged(this, GetType())); |
- } else if (property_name == properties->read_only.name()) { |
- FOR_EACH_OBSERVER(NfcTag::Observer, observers_, |
- TagWritePermissionChanged(this, IsReadOnly())); |
- } else if (property_name == properties->protocol.name()) { |
- FOR_EACH_OBSERVER( |
- NfcTag::Observer, observers_, |
- TagSupportedProtocolChanged(this, GetSupportedProtocol())); |
- } |
-} |
- |
-void NfcTagChromeOS::TagPropertiesReceived( |
- const dbus::ObjectPath& object_path) { |
- if (is_ready_ || object_path != object_path_) |
- return; |
- |
- is_ready_ = true; |
- FOR_EACH_OBSERVER(NfcTag::Observer, observers_, TagReady(this)); |
-} |
- |
-} // namespace chromeos |