1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Document {
    #[prost(bytes="vec", tag="1")]
    pub id: ::prost::alloc::vec::Vec<u8>,
    #[prost(bytes="vec", tag="2")]
    pub source: ::prost::alloc::vec::Vec<u8>,
}
///
/// A term represents an indexed term value
/// and a posting link that relates to the source
/// document it indexes.
/// 
/// Term and bits should be a oneof, but protobuf does not
/// support repeated fields within a oneof. Wrapping these
/// fields within another message as a oneof and adding that as a repeated
/// field would work, but would be a breaking change.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Term {
    #[prost(bytes="vec", repeated, tag="1")]
    pub term: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
    #[prost(bytes="vec", tag="2")]
    pub link: ::prost::alloc::vec::Vec<u8>,
    #[prost(uint32, repeated, tag="3")]
    pub bits: ::prost::alloc::vec::Vec<u32>,
}
///
/// A vector represents a set of ciphertext terms
/// generated for the document by the Index (indexId)
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Vector {
    #[prost(bytes="vec", tag="1")]
    pub index_id: ::prost::alloc::vec::Vec<u8>,
    #[prost(message, repeated, tag="2")]
    pub terms: ::prost::alloc::vec::Vec<Term>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PutRequest {
    #[prost(bytes="vec", tag="1")]
    pub collection_id: ::prost::alloc::vec::Vec<u8>,
    #[prost(message, optional, tag="2")]
    pub source: ::core::option::Option<Document>,
    #[prost(message, repeated, tag="3")]
    pub vectors: ::prost::alloc::vec::Vec<Vector>,
    #[prost(uint32, tag="4")]
    pub first_schema_version: u32,
    #[prost(uint32, tag="5")]
    pub last_schema_version: u32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PutReply {
    #[prost(enumeration="put_reply::PutError", tag="2048")]
    pub error: i32,
}
/// Nested message and enum types in `PutReply`.
pub mod put_reply {
    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
    #[repr(i32)]
    pub enum PutError {
        NoError = 0,
        ErrUnknownSchemaVersion = 1,
        ErrIncompleteSchemaVersionCoverage = 3,
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamingPutBegin {
    #[prost(bytes="vec", tag="1")]
    pub collection_id: ::prost::alloc::vec::Vec<u8>,
    #[prost(uint32, tag="2")]
    pub first_schema_version: u32,
    #[prost(uint32, tag="3")]
    pub last_schema_version: u32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamingPutDocument {
    #[prost(message, optional, tag="2")]
    pub source: ::core::option::Option<Document>,
    #[prost(message, repeated, tag="3")]
    pub vectors: ::prost::alloc::vec::Vec<Vector>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamingPutRequest {
    #[prost(oneof="streaming_put_request::Payload", tags="1, 2")]
    pub payload: ::core::option::Option<streaming_put_request::Payload>,
}
/// Nested message and enum types in `StreamingPutRequest`.
pub mod streaming_put_request {
    #[derive(Clone, PartialEq, ::prost::Oneof)]
    pub enum Payload {
        #[prost(message, tag="1")]
        Begin(super::StreamingPutBegin),
        #[prost(message, tag="2")]
        Document(super::StreamingPutDocument),
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamingPutReply {
    #[prost(uint32, tag="1")]
    pub num_inserted: u32,
    #[prost(enumeration="streaming_put_reply::StreamingPutError", tag="2048")]
    pub error: i32,
}
/// Nested message and enum types in `StreamingPutReply`.
pub mod streaming_put_reply {
    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
    #[repr(i32)]
    pub enum StreamingPutError {
        NoError = 0,
        ErrUnknownSchemaVersion = 1,
        ErrIncompleteSchemaVersionCoverage = 3,
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetRequest {
    #[prost(bytes="vec", tag="1")]
    pub collection_id: ::prost::alloc::vec::Vec<u8>,
    #[prost(bytes="vec", tag="2")]
    pub id: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetReply {
    #[prost(message, optional, tag="1")]
    pub source: ::core::option::Option<Document>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAllRequest {
    #[prost(bytes="vec", tag="1")]
    pub collection_id: ::prost::alloc::vec::Vec<u8>,
    #[prost(bytes="vec", repeated, tag="2")]
    pub ids: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAllReply {
    #[prost(message, repeated, tag="1")]
    pub documents: ::prost::alloc::vec::Vec<Document>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeleteRequest {
    #[prost(bytes="vec", tag="1")]
    pub collection_id: ::prost::alloc::vec::Vec<u8>,
    #[prost(bytes="vec", tag="2")]
    pub id: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeleteReply {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MigrateRequest {
    #[prost(enumeration="migrate_request::MigrateRequestType", tag="1")]
    pub r#type: i32,
    /// Used when type == Record
    #[prost(message, optional, tag="2")]
    pub record: ::core::option::Option<Document>,
    #[prost(message, repeated, tag="3")]
    pub vectors: ::prost::alloc::vec::Vec<Vector>,
    /// Used when type == Init
    #[prost(bytes="vec", tag="16")]
    pub collection_id: ::prost::alloc::vec::Vec<u8>,
    #[prost(uint32, tag="17")]
    pub first_schema_version: u32,
    #[prost(uint32, tag="18")]
    pub last_schema_version: u32,
}
/// Nested message and enum types in `MigrateRequest`.
pub mod migrate_request {
    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
    #[repr(i32)]
    pub enum MigrateRequestType {
        Invalid = 0,
        Init = 1,
        Record = 2,
        Barrier = 3,
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MigrateReply {
    #[prost(enumeration="migrate_reply::MigrateReplyType", tag="1")]
    pub r#type: i32,
    /// Used when type == Record
    #[prost(message, optional, tag="2")]
    pub record: ::core::option::Option<Document>,
    #[prost(enumeration="migrate_reply::MigrateError", tag="2048")]
    pub error: i32,
}
/// Nested message and enum types in `MigrateReply`.
pub mod migrate_reply {
    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
    #[repr(i32)]
    pub enum MigrateReplyType {
        Invalid = 0,
        Done = 1,
        Record = 2,
        Barrier = 3,
        Error = 16,
    }
    /// Used when type == Error
    #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
    #[repr(i32)]
    pub enum MigrateError {
        NoError = 0,
        ErrUnknownSchemaVersion = 1,
        ErrIncompleteSchemaVersionCoverage = 3,
    }
}