13551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
23551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
33551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// found in the LICENSE file.
43551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
53551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#ifndef CLOUD_PRINT_GCP20_PROTOTYPE_LOCAL_PRINT_JOB_H_
63551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#define CLOUD_PRINT_GCP20_PROTOTYPE_LOCAL_PRINT_JOB_H_
73551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
83551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include <string>
93551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
103551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)struct LocalPrintJob {
113551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  enum CreateResult {
123551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    CREATE_SUCCESS,
133551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    CREATE_INVALID_TICKET,
143551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    CREATE_PRINTER_BUSY,
153551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    CREATE_PRINTER_ERROR,
163551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  };
173551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
183551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  enum SaveResult {
193551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    SAVE_SUCCESS,
203551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    SAVE_INVALID_PRINT_JOB,
213551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    SAVE_INVALID_DOCUMENT_TYPE,
223551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    SAVE_INVALID_DOCUMENT,
233551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    SAVE_DOCUMENT_TOO_LARGE,
243551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    SAVE_PRINTER_BUSY,
253551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    SAVE_PRINTER_ERROR,
263551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  };
273551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
283551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  enum State {
293551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    STATE_DRAFT,
303551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    STATE_ABORTED,
313551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    STATE_DONE,
323551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  };
333551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
343551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  struct Info {
353551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    Info();
363551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    ~Info();
373551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
383551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    State state;
393551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    int expires_in;
403551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  };
413551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
423551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  LocalPrintJob();
433551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  ~LocalPrintJob();
443551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
453551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  std::string user_name;
463551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  std::string client_name;
473551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  std::string job_name;
483551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  std::string content;
493551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  std::string content_type;
503551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  bool offline;
513551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)};
523551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
533551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#endif  // CLOUD_PRINT_GCP20_PROTOTYPE_LOCAL_PRINT_JOB_H_
543551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
55