blob: b4fb9b5536414516f242d506b4b09bc6558ade0c [file] [log] [blame]
// Copyright 2016 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.
//
// Sync protocol datatype extension for printer data.
// If you change or add any fields in this file, update proto_visitors.h and
// potentially proto_enum_conversions.{h, cc}.
syntax = "proto2";
option optimize_for = LITE_RUNTIME;
package sync_pb;
// User PPD configuration
message PrinterPPDReference {
// Url for user provided file. Overrides other fields.
optional string user_supplied_ppd_url = 1;
// Retired fields
optional string effective_manufacturer = 2 [deprecated = true];
optional string effective_model = 3 [deprecated = true];
// String identifying the type of printer, used to look up a ppd to drive the
// printer.
optional string effective_make_and_model = 4;
// True if the printer should be automatically configured, false otherwise.
optional bool autoconf = 5 [default = false];
}
message PrinterSpecifics {
// Printer record GUID
optional string id = 1;
// User visible name. Any string.
optional string display_name = 2;
// User visible description. Any string.
optional string description = 3;
// Printer manufacturer. Should be a known manufacturuer.
// Deprecated in favor of make_and_model.
optional string manufacturer = 4 [deprecated = true];
// Printer model. Should match a known model for the manufacturer.
// Deprecated in favor of make_and_model.
optional string model = 5 [deprecated = true];
// Universal Resource Identifier for the printer on the network. usb:// will
// be the scheme for USB printers. Example
// ipp://address.example:port/queue/queue/queue.
optional string uri = 6;
// Universally Unique Identifier provided by the printer. Used for unique
// identification of printers in a zeroconf environment.
optional string uuid = 7;
// PPDData was deprecated in favor of PPDReference format.
optional bytes ppd = 8 [deprecated = true];
// Structure representing the user's ppd configuration.
optional PrinterPPDReference ppd_reference = 9;
// Timestamp when printer was last updated.
optional int64 updated_timestamp = 10;
// The make and model of the printer in one string. The typical arrangement
// for this is '<make> <model>'. This aligns with the typical formatting of
// the IPP attribute printer-make-and-model.
optional string make_and_model = 11;
}