blob: f16e1b85152294f64b8b06a2c1fc336d28605715 [file] [log] [blame]
// Copyright 2018 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
syntax = "proto3";
option optimize_for = LITE_RUNTIME;
package dlcservice;
// This message is used to query the DLCs that have data on disk. This allows
// Chrome UI to show this list to the users and users can decide whether to
// delete unused DLCs or not.
message DlcsWithContent {
message DlcInfo {
// The unique ID of the DLC.
string id = 1;
// The human readable name of the DLC.
string name = 2;
// The human readable description of the DLC.
string description = 3;
// The amount of disk space used by this DLC (bytes).
uint64 used_bytes_on_disk = 4;
// True if the DLC can be purged by anyone other than its users.
bool is_removable = 5;
}
// The list of DLCs that have used disk space.
repeated DlcInfo dlc_infos = 1;
}
// This is the message that is returned from DLC Service via |GetState| method
// and indicates what state a DLC is in.
// TODO(crbug.com/1056269): Propagate error code as well to know reason for
// failure when state is |NOT_INSTALLED|.
message DlcState {
// Indicates what state a DLC is in.
enum State {
NOT_INSTALLED = 0;
INSTALLING = 1;
INSTALLED = 2;
}
State state = 1;
// The unique identifier of a DLC.
string id = 2;
// The path that DLC user can access their content. This path is available
// only when the state is INSTALLED.
string root_path = 3;
// The progress of installation. The value is between 0.0 and 1.0.
double progress = 4;
// The last error code happened on for this DLC.
string last_error_code = 5;
// Indicates whether DLC is marked verified. Can be used to determine
// whether DLC is available on disk and can be mounted immediately.
bool is_verified = 6;
}