OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_SERVICE_CLOUD_PRINT_PRINTER_JOB_HANDLER_H_ | 5 #ifndef CHROME_SERVICE_CLOUD_PRINT_PRINTER_JOB_HANDLER_H_ |
6 #define CHROME_SERVICE_CLOUD_PRINT_PRINTER_JOB_HANDLER_H_ | 6 #define CHROME_SERVICE_CLOUD_PRINT_PRINTER_JOB_HANDLER_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <list> | 9 #include <list> |
10 #include <string> | 10 #include <string> |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 public JobStatusUpdaterDelegate, | 66 public JobStatusUpdaterDelegate, |
67 public cloud_print::PrinterWatcherDelegate, | 67 public cloud_print::PrinterWatcherDelegate, |
68 public cloud_print::JobSpoolerDelegate { | 68 public cloud_print::JobSpoolerDelegate { |
69 enum PrintJobError { | 69 enum PrintJobError { |
70 SUCCESS, | 70 SUCCESS, |
71 JOB_DOWNLOAD_FAILED, | 71 JOB_DOWNLOAD_FAILED, |
72 INVALID_JOB_DATA, | 72 INVALID_JOB_DATA, |
73 PRINT_FAILED, | 73 PRINT_FAILED, |
74 }; | 74 }; |
75 struct JobDetails { | 75 struct JobDetails { |
| 76 JobDetails(); |
| 77 ~JobDetails(); |
| 78 void Clear(); |
| 79 |
76 std::string job_id_; | 80 std::string job_id_; |
77 std::string job_title_; | 81 std::string job_title_; |
78 std::string print_ticket_; | 82 std::string print_ticket_; |
79 FilePath print_data_file_path_; | 83 FilePath print_data_file_path_; |
80 std::string print_data_mime_type_; | 84 std::string print_data_mime_type_; |
81 std::vector<std::string> tags_; | 85 std::vector<std::string> tags_; |
82 void Clear() { | |
83 job_id_.clear(); | |
84 job_title_.clear(); | |
85 print_ticket_.clear(); | |
86 print_data_mime_type_.clear(); | |
87 print_data_file_path_ = FilePath(); | |
88 tags_.clear(); | |
89 } | |
90 }; | 86 }; |
91 | 87 |
92 public: | 88 public: |
93 class Delegate { | 89 class Delegate { |
94 public: | 90 public: |
95 virtual void OnPrinterJobHandlerShutdown( | 91 virtual void OnPrinterJobHandlerShutdown( |
96 PrinterJobHandler* job_handler, const std::string& printer_id) = 0; | 92 PrinterJobHandler* job_handler, const std::string& printer_id) = 0; |
97 virtual void OnAuthError() = 0; | 93 virtual void OnAuthError() = 0; |
98 | 94 |
99 protected: | 95 protected: |
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
289 DISALLOW_COPY_AND_ASSIGN(PrinterJobHandler); | 285 DISALLOW_COPY_AND_ASSIGN(PrinterJobHandler); |
290 }; | 286 }; |
291 | 287 |
292 // This typedef is to workaround the issue with certain versions of | 288 // This typedef is to workaround the issue with certain versions of |
293 // Visual Studio where it gets confused between multiple Delegate | 289 // Visual Studio where it gets confused between multiple Delegate |
294 // classes and gives a C2500 error. (I saw this error on the try bots - | 290 // classes and gives a C2500 error. (I saw this error on the try bots - |
295 // the workaround was not needed for my machine). | 291 // the workaround was not needed for my machine). |
296 typedef PrinterJobHandler::Delegate PrinterJobHandlerDelegate; | 292 typedef PrinterJobHandler::Delegate PrinterJobHandlerDelegate; |
297 | 293 |
298 #endif // CHROME_SERVICE_CLOUD_PRINT_PRINTER_JOB_HANDLER_H_ | 294 #endif // CHROME_SERVICE_CLOUD_PRINT_PRINTER_JOB_HANDLER_H_ |
OLD | NEW |