Skip to content

Protocol Documentation

Table of Contents

Top

api/types/snapshot/device/types.proto

DeviceSnapshot

DeviceSnapshot is a device snapshot

Field Type Label Description
id string 'id' is the unique snapshot identifier
device_id string 'device_id' is the device to which the snapshot applies
device_version string 'device_version' is the version to which the snapshot applies
device_type string 'device_type' is an optional device type to which to apply this change
revision uint64 'revision' is the request revision number
network_snapshot NetworkSnapshotRef 'network_snapshot' is a reference to the network snapshot from which this snapshot was created
max_network_change_index uint64 'max_network_change_index' is the maximum network change index to be snapshotted for the device
status onos.config.snapshot.Status 'status' is the snapshot status
created google.protobuf.Timestamp 'created' is the time at which the configuration was created
updated google.protobuf.Timestamp 'updated' is the time at which the configuration was last updated

NetworkSnapshotRef

NetworkSnapshotRef is a back reference to the NetworkSnapshot that created a DeviceSnapshot

Field Type Label Description
id string 'id' is the identifier of the network snapshot from which this snapshot was created
index uint64 'index' is the index of the network snapshot from which this snapshot was created

Snapshot

Snapshot is a snapshot of the state of a single device

Field Type Label Description
id string 'id' is a unique snapshot identifier
device_id string 'device_id' is the device to which the snapshot applies
device_version string 'device_version' is the version to which the snapshot applies
device_type string 'device_type' is an optional device type to which to apply this change
snapshot_id string 'snapshot_id' is the ID of the snapshot
change_index uint64 'change_index' is the change index at which the snapshot ended
values onos.config.change.device.PathValue repeated 'values' is a list of values to set

Scalar Value Types

.proto Type Notes C++ Type Java Type Python Type
double double double float
float float float float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long
uint32 Uses variable-length encoding. uint32 int int/long
uint64 Uses variable-length encoding. uint64 long int/long
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long
sfixed32 Always four bytes. int32 int int
sfixed64 Always eight bytes. int64 long int/long
bool bool boolean boolean
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode
bytes May contain any arbitrary sequence of bytes. string ByteString str