diff options
Diffstat (limited to 'chrome/service/cloud_print/print_system.h')
-rw-r--r-- | chrome/service/cloud_print/print_system.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/chrome/service/cloud_print/print_system.h b/chrome/service/cloud_print/print_system.h index 517a665..32fa8f8 100644 --- a/chrome/service/cloud_print/print_system.h +++ b/chrome/service/cloud_print/print_system.h @@ -131,6 +131,20 @@ class PrintSystem : public base::RefCountedThreadSafe<PrintSystem> { JobSpooler::Delegate* delegate) = 0; }; + class PrintSystemResult { + public: + PrintSystemResult(bool succeeded, const std::string& message) + : succeeded_(succeeded), message_(message) { } + bool succeeded() const { return succeeded_; } + std::string message() const { return message_; } + + private: + bool succeeded_; + std::string message_; + + PrintSystemResult() { } + }; + typedef Callback3< bool, const std::string&, @@ -141,7 +155,7 @@ class PrintSystem : public base::RefCountedThreadSafe<PrintSystem> { // Initialize print system. This need to be called before any other function // of PrintSystem. - virtual void Init() = 0; + virtual PrintSystemResult Init() = 0; // Enumerates the list of installed local and network printers. virtual void EnumeratePrinters(printing::PrinterList* printer_list) = 0; |