blob: 8d8dbb8c7bda1d41d28c0f2180092880f3dd5502 [file] [log] [blame]
// Copyright 2018 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.
#ifndef CHROME_BROWSER_UI_WEBUI_PRINT_PREVIEW_CLOUD_PRINTER_HANDLER_H_
#define CHROME_BROWSER_UI_WEBUI_PRINT_PREVIEW_CLOUD_PRINTER_HANDLER_H_
#include <memory>
#include <string>
#include "base/macros.h"
#include "chrome/browser/ui/webui/print_preview/printer_handler.h"
namespace printing {
// Implementation of PrinterHandler interface
class CloudPrinterHandler : public PrinterHandler {
public:
CloudPrinterHandler();
~CloudPrinterHandler() override;
// PrinterHandler implementation:
void Reset() override;
void StartGetPrinters(AddedPrintersCallback added_printers_callback,
GetPrintersDoneCallback done_callback) override;
void StartGetCapability(const std::string& destination_id,
GetCapabilityCallback calback) override;
void StartPrint(const base::string16& job_title,
base::Value settings,
scoped_refptr<base::RefCountedMemory> print_data,
PrintCallback callback) override;
private:
DISALLOW_COPY_AND_ASSIGN(CloudPrinterHandler);
};
} // namespace printing
#endif // CHROME_BROWSER_UI_WEBUI_PRINT_PREVIEW_CLOUD_PRINTER_HANDLER_H_