| 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
|
|
|