blob: 8e724a31916b367da696b8021c11feab393c0ba8 [file] [log] [blame]
// Copyright (c) 2012 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 extensions.
// Update proto_value_conversions{.h,.cc,_unittest.cc} if you change
// any fields in this file.
syntax = "proto2";
option optimize_for = LITE_RUNTIME;
option retain_unknown_fields = true;
package sync_pb;
// Properties of extension sync objects.
//
// Merge policy: the settings for the higher version number win; in
// the case of a tie, server wins.
message ExtensionSpecifics {
// Globally unique id for this extension.
optional string id = 1;
// The known installed version.
optional string version = 2;
// Auto-update URL to use for this extension. May be blank, in
// which case the default one (i.e., the one for the Chrome
// Extensions Gallery) is used.
optional string update_url = 3;
// Whether or not this extension is enabled.
optional bool enabled = 4;
// Whether or not this extension is enabled in incognito mode.
optional bool incognito_enabled = 5;
// The name of the extension. Used for bookmark apps.
optional string name = 6;
// Whether this extension was installed remotely, and hasn't been approved by
// a user in chrome yet.
optional bool remote_install = 7;
// Whether this extension was installed by the custodian of a supervised user.
optional bool installed_by_custodian = 8;
// Whether this extension has explicit user consent access to all urls.
// This is a tri-state boolean, so, unlike most fields here, it really *is*
// optional and may be absent. We need this for the time being because we need
// to know if a user has not set an explicit preference.
optional bool all_urls_enabled = 9;
}