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

Unified Diff: chrome/browser/local_discovery/cloud_print_printer_list.cc

Issue 284223004: List cloud devices in chrome://devices page. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/local_discovery/cloud_print_printer_list.cc
diff --git a/chrome/browser/local_discovery/cloud_print_printer_list.cc b/chrome/browser/local_discovery/cloud_print_printer_list.cc
index 8849073ae2f0bd8ab10d03005ca14ceb847a5f47..d4ad9ba4dd1d80f92ae648c321ed77a367e373a4 100644
--- a/chrome/browser/local_discovery/cloud_print_printer_list.cc
+++ b/chrome/browser/local_discovery/cloud_print_printer_list.cc
@@ -2,10 +2,11 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "chrome/browser/local_discovery/cloud_print_printer_list.h"
+
#include <utility>
#include "base/strings/stringprintf.h"
-#include "chrome/browser/local_discovery/cloud_print_printer_list.h"
#include "chrome/common/cloud_print/cloud_print_constants.h"
#include "components/cloud_devices/common/cloud_devices_urls.h"
@@ -15,7 +16,7 @@ CloudPrintPrinterList::CloudPrintPrinterList(
net::URLRequestContextGetter* request_context,
OAuth2TokenService* token_service,
const std::string& account_id,
- Delegate* delegate)
+ CloudDeviceListDelegate* delegate)
: request_context_(request_context),
delegate_(delegate),
api_flow_(request_context_,
@@ -32,19 +33,9 @@ void CloudPrintPrinterList::Start() {
api_flow_.Start();
}
-const CloudPrintPrinterList::PrinterDetails*
-CloudPrintPrinterList::GetDetailsFor(const std::string& id) {
- PrinterIDMap::iterator found = printer_id_map_.find(id);
- if (found != printer_id_map_.end()) {
- return &printer_list_[found->second];
- }
-
- return NULL;
-}
-
void CloudPrintPrinterList::OnGCDAPIFlowError(GCDBaseApiFlow* flow,
GCDBaseApiFlow::Status status) {
- delegate_->OnCloudPrintPrinterListUnavailable();
+ delegate_->OnDeviceListUnavailable();
}
void CloudPrintPrinterList::OnGCDAPIFlowComplete(
@@ -53,7 +44,7 @@ void CloudPrintPrinterList::OnGCDAPIFlowComplete(
const base::ListValue* printers;
if (!value->GetList(cloud_print::kPrinterListValue, &printers)) {
- delegate_->OnCloudPrintPrinterListUnavailable();
+ delegate_->OnDeviceListUnavailable();
return;
}
@@ -61,30 +52,25 @@ void CloudPrintPrinterList::OnGCDAPIFlowComplete(
i != printers->end();
i++) {
base::DictionaryValue* printer;
- PrinterDetails printer_details;
+ CloudDeviceListDelegate::Device printer_details;
if (!(*i)->GetAsDictionary(&printer))
continue;
- if (!FillPrinterDetails(printer, &printer_details)) continue;
-
- std::pair<PrinterIDMap::iterator, bool> inserted =
- printer_id_map_.insert(
- make_pair(printer_details.id, printer_list_.size()) );
+ if (!FillPrinterDetails(printer, &printer_details))
+ continue;
- if (inserted.second) { // ID is new.
- printer_list_.push_back(printer_details);
- }
+ printer_list_.push_back(printer_details);
}
- delegate_->OnCloudPrintPrinterListReady();
+ delegate_->OnDeviceListReady();
}
bool CloudPrintPrinterList::GCDIsCloudPrint() { return true; }
bool CloudPrintPrinterList::FillPrinterDetails(
const base::DictionaryValue* printer_value,
- PrinterDetails* printer_details) {
+ CloudDeviceListDelegate::Device* printer_details) {
if (!printer_value->GetString(cloud_print::kIdValue, &printer_details->id))
return false;
@@ -97,13 +83,9 @@ bool CloudPrintPrinterList::FillPrinterDetails(
printer_value->GetString(cloud_print::kPrinterDescValue,
&printer_details->description);
- return true;
-}
+ printer_details->type = CloudDeviceListDelegate::kDeviceTypePrinter;
-CloudPrintPrinterList::PrinterDetails::PrinterDetails() {
-}
-
-CloudPrintPrinterList::PrinterDetails::~PrinterDetails() {
+ return true;
}
} // namespace local_discovery

Powered by Google App Engine
This is Rietveld 408576698