Files
archive-control-proto/proto/archive_control/v1/inventory.proto
T

56 lines
1.3 KiB
Protocol Buffer

syntax = "proto3";
package archive_control.v1;
import "archive_control/v1/common.proto";
import "archive_control/v1/resource.proto";
enum InventoryScope {
INVENTORY_SCOPE_UNSPECIFIED = 0;
INVENTORY_SCOPE_RESOURCE_SUMMARIES = 1;
INVENTORY_SCOPE_RESOURCE_LOOKUP = 2;
INVENTORY_SCOPE_CONTENT_TREE = 3;
INVENTORY_SCOPE_PLACEMENTS = 4;
}
message InventoryQuery {
string query_id = 1;
InventoryScope scope = 2;
repeated ResourceId resource_ids = 3;
PageRequest page = 4;
string page_filter = 5;
bool selected_complete_only = 6;
string expected_revision = 7;
}
message ResourceSummaryChunk {
repeated ResourceSummary resources = 1;
}
message ContentTreeChunk {
ResourceId resource_id = 1;
repeated ContentTreeEntry entries = 2;
string resource_content_revision = 3;
}
message PlacementChunk {
repeated Placement placements = 1;
}
// InventoryChunk is an atomic-snapshot stream. Receivers commit results only
// after a last_chunk=true chunk arrives for the same snapshot and revision.
message InventoryChunk {
string query_id = 1;
string snapshot_id = 2;
string revision = 3;
uint32 chunk_index = 4;
bool last_chunk = 5;
string next_page_token = 6;
Error error = 7;
oneof payload {
ResourceSummaryChunk resource_summaries = 10;
ContentTreeChunk content_tree = 11;
PlacementChunk placements = 12;
}
}