Home | History | Annotate | Download | only in backend
      1 // Copyright (c) 2012 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.
      4 
      5 #include "printing/backend/print_backend.h"
      6 
      7 #include "base/logging.h"
      8 
      9 namespace printing {
     10 
     11 // Provides a stubbed out PrintBackend implementation for use on ChromeOS.
     12 class PrintBackendChromeOS : public PrintBackend {
     13  public:
     14   PrintBackendChromeOS();
     15 
     16   // PrintBackend implementation.
     17   virtual bool EnumeratePrinters(PrinterList* printer_list) OVERRIDE;
     18   virtual std::string GetDefaultPrinterName() OVERRIDE;
     19   virtual bool GetPrinterSemanticCapsAndDefaults(
     20       const std::string& printer_name,
     21       PrinterSemanticCapsAndDefaults* printer_info) OVERRIDE;
     22   virtual bool GetPrinterCapsAndDefaults(
     23       const std::string& printer_name,
     24       PrinterCapsAndDefaults* printer_info) OVERRIDE;
     25   virtual std::string GetPrinterDriverInfo(
     26       const std::string& printer_name) OVERRIDE;
     27   virtual bool IsValidPrinter(const std::string& printer_name) OVERRIDE;
     28 
     29  protected:
     30   virtual ~PrintBackendChromeOS() {}
     31 };
     32 
     33 PrintBackendChromeOS::PrintBackendChromeOS() {}
     34 
     35 bool PrintBackendChromeOS::EnumeratePrinters(PrinterList* printer_list) {
     36   return true;
     37 }
     38 
     39 bool PrintBackendChromeOS::GetPrinterSemanticCapsAndDefaults(
     40     const std::string& printer_name,
     41     PrinterSemanticCapsAndDefaults* printer_info) {
     42   NOTREACHED();
     43   return false;
     44 }
     45 
     46 bool PrintBackendChromeOS::GetPrinterCapsAndDefaults(
     47     const std::string& printer_name,
     48     PrinterCapsAndDefaults* printer_info) {
     49   NOTREACHED();
     50   return false;
     51 }
     52 
     53 std::string PrintBackendChromeOS::GetPrinterDriverInfo(
     54     const std::string& printer_name) {
     55   NOTREACHED();
     56   return std::string();
     57 }
     58 
     59 std::string PrintBackendChromeOS::GetDefaultPrinterName() {
     60   return std::string();
     61 }
     62 
     63 bool PrintBackendChromeOS::IsValidPrinter(const std::string& printer_name) {
     64   NOTREACHED();
     65   return true;
     66 }
     67 
     68 scoped_refptr<PrintBackend> PrintBackend::CreateInstance(
     69     const base::DictionaryValue* print_backend_settings) {
     70   return new PrintBackendChromeOS();
     71 }
     72 
     73 }  // namespace printing
     74 
     75