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

Unified Diff: device/nfc/nfc_tag_technology_chromeos.cc

Issue 2292703002: chromeos: Remove unused NFC D-Bus client library (Closed)
Patch Set: rebase Created 4 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « device/nfc/nfc_tag_technology_chromeos.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: device/nfc/nfc_tag_technology_chromeos.cc
diff --git a/device/nfc/nfc_tag_technology_chromeos.cc b/device/nfc/nfc_tag_technology_chromeos.cc
deleted file mode 100644
index 7689e1f465e7e3fec07a2af34a83759fec92cc60..0000000000000000000000000000000000000000
--- a/device/nfc/nfc_tag_technology_chromeos.cc
+++ /dev/null
@@ -1,186 +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_technology_chromeos.h"
-
-#include "base/stl_util.h"
-#include "chromeos/dbus/dbus_thread_manager.h"
-#include "device/nfc/nfc_ndef_record_utils_chromeos.h"
-#include "device/nfc/nfc_tag_chromeos.h"
-
-using device::NfcNdefMessage;
-using device::NfcNdefRecord;
-
-namespace chromeos {
-
-namespace {
-
-typedef std::vector<dbus::ObjectPath> ObjectPathVector;
-
-} // namespace
-
-NfcNdefTagTechnologyChromeOS::NfcNdefTagTechnologyChromeOS(NfcTagChromeOS* tag)
- : NfcNdefTagTechnology(tag),
- object_path_(tag->object_path()),
- weak_ptr_factory_(this) {
- DCHECK(tag);
- // Create record objects for all records that were received before.
- const ObjectPathVector& records =
- DBusThreadManager::Get()->GetNfcRecordClient()->
- GetRecordsForTag(object_path_);
- for (ObjectPathVector::const_iterator iter = records.begin();
- iter != records.end(); ++iter) {
- AddRecord(*iter);
- }
- DBusThreadManager::Get()->GetNfcRecordClient()->AddObserver(this);
-}
-
-NfcNdefTagTechnologyChromeOS::~NfcNdefTagTechnologyChromeOS() {
- DBusThreadManager::Get()->GetNfcRecordClient()->RemoveObserver(this);
- base::STLDeleteValues(&records_);
-}
-
-void NfcNdefTagTechnologyChromeOS::AddObserver(
- NfcNdefTagTechnology::Observer* observer) {
- observers_.AddObserver(observer);
-}
-
-void NfcNdefTagTechnologyChromeOS::RemoveObserver(
- NfcNdefTagTechnology::Observer* observer) {
- observers_.RemoveObserver(observer);
-}
-
-const NfcNdefMessage& NfcNdefTagTechnologyChromeOS::GetNdefMessage() const {
- return message_;
-}
-
-void NfcNdefTagTechnologyChromeOS::WriteNdef(
- const device::NfcNdefMessage& message,
- const base::Closure& callback,
- const ErrorCallback& error_callback) {
- if (message.records().empty()) {
- LOG(ERROR) << "Given NDEF message is empty. Cannot write it.";
- error_callback.Run();
- return;
- }
- if (!tag()->IsReady()) {
- LOG(ERROR) << "The tag is not ready yet: " << tag()->GetIdentifier();
- error_callback.Run();
- return;
- }
- // TODO(armansito): neard currently supports writing only one NDEF record
- // to a tag and won't support multiple records until 0.15. Until then, report
- // failure if |message| contains more than one record.
- if (message.records().size() > 1) {
- LOG(ERROR) << "Currently, writing only 1 NDEF record is supported.";
- error_callback.Run();
- return;
- }
- const NfcNdefRecord* record = message.records()[0];
- base::DictionaryValue attributes;
- if (!nfc_ndef_record_utils::NfcNdefRecordToDBusAttributes(
- record, &attributes)) {
- LOG(ERROR) << "Failed to extract NDEF record fields for NDEF push.";
- error_callback.Run();
- return;
- }
- DBusThreadManager::Get()->GetNfcTagClient()->Write(
- object_path_,
- attributes,
- base::Bind(&NfcNdefTagTechnologyChromeOS::OnWriteNdefMessage,
- weak_ptr_factory_.GetWeakPtr(), callback),
- base::Bind(&NfcNdefTagTechnologyChromeOS::OnWriteNdefMessageError,
- weak_ptr_factory_.GetWeakPtr(), error_callback));
-}
-
-void NfcNdefTagTechnologyChromeOS::RecordAdded(
- const dbus::ObjectPath& object_path) {
- // Don't create the record object yet. Instead, wait until all record
- // properties have been received and construct the object and notify observers
- // then.
- VLOG(1) << "Record added: " << object_path.value() << ". Waiting until "
- "all properties have been fetched to create record object.";
-}
-
-void NfcNdefTagTechnologyChromeOS::RecordRemoved(
- const dbus::ObjectPath& object_path) {
- NdefRecordMap::iterator iter = records_.find(object_path);
- if (iter == records_.end())
- return;
- VLOG(1) << "Lost remote NDEF record object: " << object_path.value()
- << ", removing record.";
- NfcNdefRecord* record = iter->second;
- message_.RemoveRecord(record);
- delete record;
- records_.erase(iter);
-}
-
-void NfcNdefTagTechnologyChromeOS::RecordPropertiesReceived(
- const dbus::ObjectPath& object_path) {
- VLOG(1) << "Record properties received for: " << object_path.value();
-
- // Check if the found record belongs to this tag.
- bool record_found = false;
- const ObjectPathVector& records =
- DBusThreadManager::Get()->GetNfcRecordClient()->
- GetRecordsForTag(object_path_);
- for (ObjectPathVector::const_iterator iter = records.begin();
- iter != records.end(); ++iter) {
- if (*iter == object_path) {
- record_found = true;
- break;
- }
- }
- if (!record_found) {
- VLOG(1) << "Record \"" << object_path.value() << "\" doesn't belong to this"
- << " tag. Ignoring.";
- return;
- }
- AddRecord(object_path);
-}
-
-void NfcNdefTagTechnologyChromeOS::OnWriteNdefMessage(
- const base::Closure& callback) {
- callback.Run();
-}
-
-void NfcNdefTagTechnologyChromeOS::OnWriteNdefMessageError(
- const ErrorCallback& error_callback,
- const std::string& error_name,
- const std::string& error_message) {
- LOG(ERROR) << object_path_.value() << ": Failed to Push NDEF message: "
- << error_name << ": " << error_message;
- error_callback.Run();
-}
-
-void NfcNdefTagTechnologyChromeOS::AddRecord(
- const dbus::ObjectPath& object_path) {
- // Ignore this call if an entry for this record already exists.
- if (records_.find(object_path) != records_.end()) {
- VLOG(1) << "Record object for remote \"" << object_path.value()
- << "\" already exists.";
- return;
- }
-
- NfcRecordClient::Properties* record_properties =
- DBusThreadManager::Get()->GetNfcRecordClient()->
- GetProperties(object_path);
- DCHECK(record_properties);
-
- NfcNdefRecord* record = new NfcNdefRecord();
- if (!nfc_ndef_record_utils::RecordPropertiesToNfcNdefRecord(
- record_properties, record)) {
- LOG(ERROR) << "Failed to create record object for record with object "
- << "path \"" << object_path.value() << "\"";
- delete record;
- return;
- }
-
- message_.AddRecord(record);
- records_[object_path] = record;
- FOR_EACH_OBSERVER(NfcNdefTagTechnology::Observer, observers_,
- RecordReceived(tag(), record));
-}
-
-} // namespace chromeos
« no previous file with comments | « device/nfc/nfc_tag_technology_chromeos.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698