1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_LOCAL_DISCOVERY_CLOUD_PRINT_PRINTER_LIST_H_
6 #define CHROME_BROWSER_LOCAL_DISCOVERY_CLOUD_PRINT_PRINTER_LIST_H_
11 #include "base/values.h"
12 #include "chrome/browser/local_discovery/cloud_device_list_delegate.h"
13 #include "chrome/browser/local_discovery/gcd_api_flow.h"
15 namespace local_discovery
{
17 class CloudPrintPrinterList
: public CloudPrintApiFlowRequest
{
19 explicit CloudPrintPrinterList(CloudDeviceListDelegate
* delegate
);
20 virtual ~CloudPrintPrinterList();
22 virtual void OnGCDAPIFlowError(GCDApiFlow::Status status
) OVERRIDE
;
24 virtual void OnGCDAPIFlowComplete(
25 const base::DictionaryValue
& value
) OVERRIDE
;
27 virtual GURL
GetURL() OVERRIDE
;
30 bool FillPrinterDetails(const base::DictionaryValue
& printer_value
,
31 CloudDeviceListDelegate::Device
* printer_details
);
33 CloudDeviceListDelegate
* delegate_
;
36 } // namespace local_discovery
38 #endif // CHROME_BROWSER_LOCAL_DISCOVERY_CLOUD_PRINT_PRINTER_LIST_H_