1#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct Plan {
4 #[prost(string, tag = "1")]
5 pub rid: ::prost::alloc::string::String,
6 #[prost(message, optional, tag = "2")]
7 pub metadata: ::core::option::Option<PlanMetadata>,
8 #[prost(message, optional, tag = "3")]
9 pub commit: ::core::option::Option<super::super::versioning::v1::Commit>,
10 #[prost(message, optional, tag = "4")]
11 pub content: ::core::option::Option<PlanContent>,
12}
13#[derive(Clone, PartialEq, ::prost::Message)]
14pub struct PlanSummary {
15 #[prost(string, tag = "1")]
16 pub rid: ::prost::alloc::string::String,
17 #[prost(message, optional, tag = "2")]
18 pub metadata: ::core::option::Option<PlanMetadata>,
19 #[prost(message, optional, tag = "3")]
20 pub start: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
21 #[prost(message, optional, tag = "4")]
22 pub end: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
23 #[prost(message, optional, tag = "5")]
24 pub earliest_scheduled_start: ::core::option::Option<
25 super::super::super::google::protobuf::Timestamp,
26 >,
27 #[prost(message, optional, tag = "6")]
28 pub latest_scheduled_end: ::core::option::Option<
29 super::super::super::google::protobuf::Timestamp,
30 >,
31}
32#[derive(Clone, PartialEq, ::prost::Message)]
33pub struct PlanMetadata {
34 #[prost(string, tag = "1")]
35 pub title: ::prost::alloc::string::String,
36 #[prost(string, tag = "2")]
37 pub description: ::prost::alloc::string::String,
38 #[prost(string, repeated, tag = "3")]
39 pub labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
40 #[prost(map = "string, string", tag = "4")]
41 pub properties: ::std::collections::HashMap<
42 ::prost::alloc::string::String,
43 ::prost::alloc::string::String,
44 >,
45 #[prost(bool, tag = "5")]
46 pub is_archived: bool,
47 #[prost(bool, optional, tag = "6")]
48 pub is_published: ::core::option::Option<bool>,
49 #[prost(string, tag = "7")]
50 pub created_by: ::prost::alloc::string::String,
51 #[prost(message, optional, tag = "8")]
52 pub created_at: ::core::option::Option<
53 super::super::super::google::protobuf::Timestamp,
54 >,
55 #[prost(message, optional, tag = "9")]
56 pub updated_at: ::core::option::Option<
57 super::super::super::google::protobuf::Timestamp,
58 >,
59 #[prost(message, optional, tag = "10")]
60 pub edited_at: ::core::option::Option<
61 super::super::super::google::protobuf::Timestamp,
62 >,
63 #[prost(string, tag = "11")]
64 pub workspace_rid: ::prost::alloc::string::String,
65 #[prost(string, tag = "12")]
66 pub updated_by: ::prost::alloc::string::String,
67 #[prost(message, optional, tag = "13")]
68 pub status: ::core::option::Option<PlanStatus>,
69}
70#[derive(Clone, Copy, PartialEq, ::prost::Message)]
71pub struct PlanStatus {
72 #[prost(oneof = "plan_status::PlanStatus", tags = "1, 2, 3")]
73 pub plan_status: ::core::option::Option<plan_status::PlanStatus>,
74}
75pub mod plan_status {
77 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
78 pub enum PlanStatus {
79 #[prost(message, tag = "1")]
80 Open(super::OpenPlan),
81 #[prost(message, tag = "2")]
82 Completed(super::CompletedPlan),
83 #[prost(message, tag = "3")]
84 Cancelled(super::CancelledPlan),
85 }
86}
87#[derive(Clone, Copy, PartialEq, ::prost::Message)]
88pub struct OpenPlan {}
89#[derive(Clone, Copy, PartialEq, ::prost::Message)]
90pub struct CompletedPlan {}
91#[derive(Clone, Copy, PartialEq, ::prost::Message)]
92pub struct CancelledPlan {}
93#[derive(Clone, PartialEq, ::prost::Message)]
94pub struct PlanContent {
95 #[prost(oneof = "plan_content::PlanContent", tags = "1")]
96 pub plan_content: ::core::option::Option<plan_content::PlanContent>,
97}
98pub mod plan_content {
100 #[derive(Clone, PartialEq, ::prost::Oneof)]
101 pub enum PlanContent {
102 #[prost(message, tag = "1")]
103 V1(super::PlanContentV1),
104 }
105}
106#[derive(Clone, PartialEq, ::prost::Message)]
107pub struct PlanContentV1 {
108 #[prost(message, optional, tag = "1")]
109 pub start: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
110 #[prost(message, optional, tag = "2")]
111 pub end: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
112 #[prost(message, repeated, tag = "3")]
113 pub objectives: ::prost::alloc::vec::Vec<Objective>,
114 #[prost(message, repeated, tag = "4")]
115 pub activities: ::prost::alloc::vec::Vec<Activity>,
116 #[prost(message, repeated, tag = "5")]
117 pub segments: ::prost::alloc::vec::Vec<Segment>,
118 #[prost(message, repeated, tag = "6")]
119 pub asset_groups: ::prost::alloc::vec::Vec<AssetGroup>,
120 #[prost(message, repeated, tag = "7")]
121 pub milestones: ::prost::alloc::vec::Vec<Milestone>,
122 #[prost(message, repeated, tag = "8")]
123 pub constraints: ::prost::alloc::vec::Vec<Constraint>,
124 #[prost(string, optional, tag = "9")]
125 pub timezone: ::core::option::Option<::prost::alloc::string::String>,
126 #[prost(message, optional, tag = "10")]
127 pub base_asset_pool: ::core::option::Option<AssetGroup>,
128}
129#[derive(Clone, PartialEq, ::prost::Message)]
130pub struct Milestone {
131 #[prost(string, tag = "1")]
132 pub id: ::prost::alloc::string::String,
133 #[prost(string, tag = "2")]
134 pub name: ::prost::alloc::string::String,
135 #[prost(string, optional, tag = "3")]
136 pub description: ::core::option::Option<::prost::alloc::string::String>,
137}
138#[derive(Clone, PartialEq, ::prost::Message)]
139pub struct Activity {
140 #[prost(string, tag = "1")]
141 pub id: ::prost::alloc::string::String,
142 #[prost(string, tag = "2")]
143 pub name: ::prost::alloc::string::String,
144 #[prost(string, optional, tag = "3")]
145 pub description: ::core::option::Option<::prost::alloc::string::String>,
146 #[prost(message, optional, tag = "4")]
147 pub details: ::core::option::Option<ActivityDetails>,
148 #[prost(message, optional, tag = "5")]
149 pub planned_duration: ::core::option::Option<MinuteDuration>,
150 #[prost(string, repeated, tag = "6")]
151 pub labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
152 #[prost(map = "string, string", tag = "7")]
153 pub properties: ::std::collections::HashMap<
154 ::prost::alloc::string::String,
155 ::prost::alloc::string::String,
156 >,
157 #[prost(string, repeated, tag = "8")]
158 pub attachment_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
159 #[prost(message, repeated, tag = "9")]
160 pub links: ::prost::alloc::vec::Vec<Link>,
161}
162#[derive(Clone, PartialEq, ::prost::Message)]
163pub struct ActivityDetails {
164 #[prost(oneof = "activity_details::ActivityDetails", tags = "1")]
165 pub activity_details: ::core::option::Option<activity_details::ActivityDetails>,
166}
167pub mod activity_details {
169 #[derive(Clone, PartialEq, ::prost::Oneof)]
170 pub enum ActivityDetails {
171 #[prost(message, tag = "1")]
172 Single(super::SingleActivity),
173 }
174}
175#[derive(Clone, PartialEq, ::prost::Message)]
176pub struct SingleActivity {
177 #[prost(message, optional, tag = "1")]
178 pub start: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
179 #[prost(message, optional, tag = "2")]
180 pub end: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
181 #[prost(string, optional, tag = "3")]
182 pub segment_id: ::core::option::Option<::prost::alloc::string::String>,
183 #[prost(string, repeated, tag = "4")]
184 pub objective_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
185 #[prost(message, optional, tag = "5")]
186 pub status: ::core::option::Option<ActivityStatus>,
187 #[prost(message, repeated, tag = "7")]
188 pub asset_assignments: ::prost::alloc::vec::Vec<AssetAssignment>,
189 #[prost(message, optional, tag = "8")]
190 pub pin: ::core::option::Option<ActivityPin>,
191}
192#[derive(Clone, PartialEq, ::prost::Message)]
193pub struct AssetAssignment {
194 #[prost(string, tag = "1")]
195 pub asset_rid: ::prost::alloc::string::String,
196 #[prost(string, repeated, tag = "2")]
197 pub resource_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
198}
199#[derive(Clone, PartialEq, ::prost::Message)]
200pub struct ActivityStatus {
201 #[prost(oneof = "activity_status::ActivityStatus", tags = "1, 2, 3, 4, 5")]
202 pub activity_status: ::core::option::Option<activity_status::ActivityStatus>,
203}
204pub mod activity_status {
206 #[derive(Clone, PartialEq, ::prost::Oneof)]
207 pub enum ActivityStatus {
208 #[prost(message, tag = "1")]
209 Created(super::CreatedActivity),
210 #[prost(message, tag = "2")]
211 Finalized(super::FinalizedActivity),
212 #[prost(message, tag = "3")]
213 InProgress(super::InProgressActivity),
214 #[prost(message, tag = "4")]
215 Completed(super::CompletedActivity),
216 #[prost(message, tag = "5")]
217 Cancelled(super::CancelledActivity),
218 }
219}
220#[derive(Clone, Copy, PartialEq, ::prost::Message)]
221pub struct CreatedActivity {}
222#[derive(Clone, Copy, PartialEq, ::prost::Message)]
223pub struct FinalizedActivity {}
224#[derive(Clone, Copy, PartialEq, ::prost::Message)]
225pub struct InProgressActivity {}
226#[derive(Clone, PartialEq, ::prost::Message)]
227pub struct CompletedActivity {
228 #[prost(string, optional, tag = "1")]
229 pub notes: ::core::option::Option<::prost::alloc::string::String>,
230}
231#[derive(Clone, PartialEq, ::prost::Message)]
232pub struct CancelledActivity {
233 #[prost(string, tag = "1")]
234 pub reason: ::prost::alloc::string::String,
235 #[prost(string, optional, tag = "2")]
236 pub notes: ::core::option::Option<::prost::alloc::string::String>,
237}
238#[derive(Clone, Copy, PartialEq, ::prost::Message)]
239pub struct ActivityPin {
240 #[prost(oneof = "activity_pin::ActivityPin", tags = "1")]
241 pub activity_pin: ::core::option::Option<activity_pin::ActivityPin>,
242}
243pub mod activity_pin {
245 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
246 pub enum ActivityPin {
247 #[prost(message, tag = "1")]
248 Pinned(super::PinnedActivity),
249 }
250}
251#[derive(Clone, Copy, PartialEq, ::prost::Message)]
252pub struct PinnedActivity {}
253#[derive(Clone, PartialEq, ::prost::Message)]
254pub struct Objective {
255 #[prost(string, tag = "1")]
256 pub id: ::prost::alloc::string::String,
257 #[prost(string, tag = "2")]
258 pub name: ::prost::alloc::string::String,
259 #[prost(string, tag = "3")]
260 pub creator: ::prost::alloc::string::String,
261 #[prost(message, optional, tag = "4")]
262 pub created_at: ::core::option::Option<
263 super::super::super::google::protobuf::Timestamp,
264 >,
265 #[prost(enumeration = "super::super::types::Priority", tag = "5")]
266 pub priority: i32,
267 #[prost(string, repeated, tag = "6")]
268 pub milestone_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
269 #[prost(string, optional, tag = "7")]
270 pub description: ::core::option::Option<::prost::alloc::string::String>,
271 #[prost(message, optional, tag = "8")]
272 pub details: ::core::option::Option<ObjectiveDetails>,
273 #[prost(message, optional, tag = "9")]
274 pub status: ::core::option::Option<ObjectiveStatus>,
275 #[prost(message, optional, tag = "10")]
276 pub planned_duration: ::core::option::Option<MinuteDuration>,
277 #[prost(string, repeated, tag = "11")]
278 pub labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
279 #[prost(map = "string, string", tag = "12")]
280 pub properties: ::std::collections::HashMap<
281 ::prost::alloc::string::String,
282 ::prost::alloc::string::String,
283 >,
284 #[prost(string, repeated, tag = "13")]
285 pub attachment_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
286 #[prost(message, repeated, tag = "14")]
287 pub links: ::prost::alloc::vec::Vec<Link>,
288}
289#[derive(Clone, PartialEq, ::prost::Message)]
290pub struct ObjectiveStatus {
291 #[prost(oneof = "objective_status::ObjectiveStatus", tags = "1, 2, 3, 4, 5")]
292 pub objective_status: ::core::option::Option<objective_status::ObjectiveStatus>,
293}
294pub mod objective_status {
296 #[derive(Clone, PartialEq, ::prost::Oneof)]
297 pub enum ObjectiveStatus {
298 #[prost(message, tag = "1")]
299 Draft(super::DraftObjective),
300 #[prost(message, tag = "2")]
301 Proposed(super::ProposedObjective),
302 #[prost(message, tag = "3")]
303 Finalized(super::FinalizedObjective),
304 #[prost(message, tag = "4")]
305 Completed(super::CompletedObjective),
306 #[prost(message, tag = "5")]
307 Rejected(super::RejectedObjective),
308 }
309}
310#[derive(Clone, Copy, PartialEq, ::prost::Message)]
311pub struct DraftObjective {}
312#[derive(Clone, Copy, PartialEq, ::prost::Message)]
313pub struct ProposedObjective {}
314#[derive(Clone, Copy, PartialEq, ::prost::Message)]
315pub struct FinalizedObjective {}
316#[derive(Clone, PartialEq, ::prost::Message)]
317pub struct CompletedObjective {
318 #[prost(message, optional, tag = "1")]
319 pub disposition: ::core::option::Option<ObjectiveDisposition>,
320}
321#[derive(Clone, PartialEq, ::prost::Message)]
322pub struct RejectedObjective {
323 #[prost(string, tag = "1")]
324 pub reason: ::prost::alloc::string::String,
325}
326#[derive(Clone, PartialEq, ::prost::Message)]
327pub struct ObjectiveDisposition {
328 #[prost(oneof = "objective_disposition::ObjectiveDisposition", tags = "1, 2")]
329 pub objective_disposition: ::core::option::Option<
330 objective_disposition::ObjectiveDisposition,
331 >,
332}
333pub mod objective_disposition {
335 #[derive(Clone, PartialEq, ::prost::Oneof)]
336 pub enum ObjectiveDisposition {
337 #[prost(message, tag = "1")]
338 Successful(super::SuccessfulObjective),
339 #[prost(message, tag = "2")]
340 Failed(super::FailedObjective),
341 }
342}
343#[derive(Clone, PartialEq, ::prost::Message)]
344pub struct SuccessfulObjective {
345 #[prost(string, optional, tag = "1")]
346 pub notes: ::core::option::Option<::prost::alloc::string::String>,
347}
348#[derive(Clone, PartialEq, ::prost::Message)]
349pub struct FailedObjective {
350 #[prost(string, tag = "1")]
351 pub reason: ::prost::alloc::string::String,
352 #[prost(string, optional, tag = "2")]
353 pub notes: ::core::option::Option<::prost::alloc::string::String>,
354}
355#[derive(Clone, PartialEq, ::prost::Message)]
356pub struct ObjectiveDetails {
357 #[prost(oneof = "objective_details::ObjectiveDetails", tags = "1")]
358 pub objective_details: ::core::option::Option<objective_details::ObjectiveDetails>,
359}
360pub mod objective_details {
362 #[derive(Clone, PartialEq, ::prost::Oneof)]
363 pub enum ObjectiveDetails {
364 #[prost(message, tag = "1")]
365 Simple(super::SimpleObjective),
366 }
367}
368#[derive(Clone, PartialEq, ::prost::Message)]
369pub struct SimpleObjective {
370 #[prost(message, repeated, tag = "1")]
371 pub resources: ::prost::alloc::vec::Vec<Resource>,
372 #[prost(string, repeated, tag = "2")]
373 pub checklist_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
374 #[prost(string, repeated, tag = "3")]
375 pub procedure_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
376}
377#[derive(Clone, PartialEq, ::prost::Message)]
378pub struct Resource {
379 #[prost(string, tag = "1")]
380 pub name: ::prost::alloc::string::String,
381 #[prost(string, optional, tag = "2")]
382 pub description: ::core::option::Option<::prost::alloc::string::String>,
383 #[prost(int32, optional, tag = "3")]
384 pub count: ::core::option::Option<i32>,
385 #[prost(message, optional, tag = "4")]
386 pub candidate_assets: ::core::option::Option<CandidateAssetGroup>,
387 #[prost(string, tag = "6")]
388 pub id: ::prost::alloc::string::String,
389 #[prost(string, repeated, tag = "7")]
390 pub labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
391 #[prost(map = "string, string", tag = "8")]
392 pub properties: ::std::collections::HashMap<
393 ::prost::alloc::string::String,
394 ::prost::alloc::string::String,
395 >,
396}
397#[derive(Clone, PartialEq, ::prost::Message)]
398pub struct CandidateAssetGroup {
399 #[prost(oneof = "candidate_asset_group::CandidateAssetGroup", tags = "1, 2")]
400 pub candidate_asset_group: ::core::option::Option<
401 candidate_asset_group::CandidateAssetGroup,
402 >,
403}
404pub mod candidate_asset_group {
406 #[derive(Clone, PartialEq, ::prost::Oneof)]
407 pub enum CandidateAssetGroup {
408 #[prost(message, tag = "1")]
409 Sources(super::AssetSourceList),
410 #[prost(string, tag = "2")]
411 AssetGroupId(::prost::alloc::string::String),
412 }
413}
414#[derive(Clone, PartialEq, ::prost::Message)]
415pub struct AssetSourceList {
416 #[prost(message, repeated, tag = "1")]
417 pub sources: ::prost::alloc::vec::Vec<AssetSource>,
418}
419#[derive(Clone, PartialEq, ::prost::Message)]
420pub struct AssetGroup {
421 #[prost(string, tag = "1")]
422 pub id: ::prost::alloc::string::String,
423 #[prost(string, tag = "2")]
424 pub name: ::prost::alloc::string::String,
425 #[prost(string, optional, tag = "3")]
426 pub description: ::core::option::Option<::prost::alloc::string::String>,
427 #[prost(message, repeated, tag = "4")]
428 pub sources: ::prost::alloc::vec::Vec<AssetSource>,
429 #[prost(bool, tag = "5")]
430 pub is_exempt_from_base_pool: bool,
431}
432#[derive(Clone, PartialEq, ::prost::Message)]
433pub struct AssetSource {
434 #[prost(oneof = "asset_source::AssetSource", tags = "1, 2")]
435 pub asset_source: ::core::option::Option<asset_source::AssetSource>,
436}
437pub mod asset_source {
439 #[derive(Clone, PartialEq, ::prost::Oneof)]
440 pub enum AssetSource {
441 #[prost(message, tag = "1")]
442 AssetSearch(super::super::super::asset::v2::SearchAssetsQuery),
443 #[prost(string, tag = "2")]
444 AssetRid(::prost::alloc::string::String),
445 }
446}
447#[derive(Clone, PartialEq, ::prost::Message)]
448pub struct Segment {
449 #[prost(string, tag = "1")]
450 pub id: ::prost::alloc::string::String,
451 #[prost(string, tag = "2")]
452 pub name: ::prost::alloc::string::String,
453 #[prost(message, optional, tag = "3")]
454 pub start: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
455 #[prost(message, optional, tag = "4")]
456 pub end: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
457 #[prost(message, optional, tag = "5")]
458 pub status: ::core::option::Option<SegmentStatus>,
459 #[prost(string, repeated, tag = "6")]
460 pub labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
461 #[prost(map = "string, string", tag = "7")]
462 pub properties: ::std::collections::HashMap<
463 ::prost::alloc::string::String,
464 ::prost::alloc::string::String,
465 >,
466}
467#[derive(Clone, Copy, PartialEq, ::prost::Message)]
468pub struct SegmentStatus {
469 #[prost(oneof = "segment_status::SegmentStatus", tags = "1, 2")]
470 pub segment_status: ::core::option::Option<segment_status::SegmentStatus>,
471}
472pub mod segment_status {
474 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
475 pub enum SegmentStatus {
476 #[prost(message, tag = "1")]
477 Draft(super::DraftSegment),
478 #[prost(message, tag = "2")]
479 Finalized(super::FinalizedSegment),
480 }
481}
482#[derive(Clone, Copy, PartialEq, ::prost::Message)]
483pub struct DraftSegment {}
484#[derive(Clone, Copy, PartialEq, ::prost::Message)]
485pub struct FinalizedSegment {}
486#[derive(Clone, PartialEq, ::prost::Message)]
487pub struct Link {
488 #[prost(string, optional, tag = "1")]
489 pub title: ::core::option::Option<::prost::alloc::string::String>,
490 #[prost(string, tag = "2")]
491 pub url: ::prost::alloc::string::String,
492}
493#[derive(Clone, Copy, PartialEq, ::prost::Message)]
494pub struct MinuteDuration {
495 #[prost(message, optional, tag = "1")]
496 pub value: ::core::option::Option<super::super::types::Duration>,
497}
498#[derive(Clone, PartialEq, ::prost::Message)]
499pub struct Constraint {
500 #[prost(string, tag = "1")]
501 pub id: ::prost::alloc::string::String,
502 #[prost(string, tag = "2")]
503 pub name: ::prost::alloc::string::String,
504 #[prost(message, repeated, tag = "3")]
505 pub subjects: ::prost::alloc::vec::Vec<ConstraintSubject>,
506 #[prost(message, optional, tag = "4")]
507 pub kind: ::core::option::Option<ConstraintKind>,
508}
509#[derive(Clone, PartialEq, ::prost::Message)]
510pub struct ConstraintSubject {
511 #[prost(oneof = "constraint_subject::Subject", tags = "1, 2, 3, 4, 5, 6, 7")]
512 pub subject: ::core::option::Option<constraint_subject::Subject>,
513}
514pub mod constraint_subject {
516 #[derive(Clone, PartialEq, ::prost::Oneof)]
517 pub enum Subject {
518 #[prost(string, tag = "1")]
519 ActivityId(::prost::alloc::string::String),
520 #[prost(string, tag = "2")]
521 ObjectiveId(::prost::alloc::string::String),
522 #[prost(string, tag = "3")]
523 ResourceId(::prost::alloc::string::String),
524 #[prost(string, tag = "4")]
525 AssetGroupId(::prost::alloc::string::String),
526 #[prost(string, tag = "5")]
527 AssetRid(::prost::alloc::string::String),
528 #[prost(message, tag = "6")]
529 PlanWide(super::PlanWide),
530 #[prost(string, tag = "7")]
531 SegmentId(::prost::alloc::string::String),
532 }
533}
534#[derive(Clone, Copy, PartialEq, ::prost::Message)]
535pub struct PlanWide {}
536#[derive(Clone, PartialEq, ::prost::Message)]
537pub struct ConstraintKind {
538 #[prost(oneof = "constraint_kind::Kind", tags = "1, 2, 3, 4, 5, 6")]
539 pub kind: ::core::option::Option<constraint_kind::Kind>,
540}
541pub mod constraint_kind {
543 #[derive(Clone, PartialEq, ::prost::Oneof)]
544 pub enum Kind {
545 #[prost(message, tag = "1")]
546 AllowedWindows(super::AllowedWindowsConstraint),
547 #[prost(message, tag = "2")]
548 Capacity(super::CapacityConstraint),
549 #[prost(message, tag = "3")]
550 Buffer(super::BufferConstraint),
551 #[prost(message, tag = "4")]
552 UsageCeiling(super::UsageCeilingConstraint),
553 #[prost(message, tag = "5")]
554 Precedence(super::PrecedenceConstraint),
555 #[prost(message, tag = "6")]
556 MutualExclusion(super::MutualExclusionConstraint),
557 }
558}
559#[derive(Clone, PartialEq, ::prost::Message)]
560pub struct AllowedWindowsConstraint {
561 #[prost(oneof = "allowed_windows_constraint::AllowedWindowsConstraint", tags = "1")]
562 pub allowed_windows_constraint: ::core::option::Option<
563 allowed_windows_constraint::AllowedWindowsConstraint,
564 >,
565}
566pub mod allowed_windows_constraint {
568 #[derive(Clone, PartialEq, ::prost::Oneof)]
569 pub enum AllowedWindowsConstraint {
570 #[prost(message, tag = "1")]
571 Explicit(super::ExplicitWindows),
572 }
573}
574#[derive(Clone, PartialEq, ::prost::Message)]
575pub struct ExplicitWindows {
576 #[prost(string, repeated, tag = "1")]
577 pub segment_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
578 #[prost(message, repeated, tag = "2")]
579 pub ranges: ::prost::alloc::vec::Vec<TimeRange>,
580}
581#[derive(Clone, Copy, PartialEq, ::prost::Message)]
582pub struct TimeRange {
583 #[prost(message, optional, tag = "1")]
584 pub start: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
585 #[prost(message, optional, tag = "2")]
586 pub end: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
587}
588#[derive(Clone, Copy, PartialEq, ::prost::Message)]
589pub struct CapacityConstraint {
590 #[prost(oneof = "capacity_constraint::CapacityConstraint", tags = "1")]
591 pub capacity_constraint: ::core::option::Option<
592 capacity_constraint::CapacityConstraint,
593 >,
594}
595pub mod capacity_constraint {
597 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
598 pub enum CapacityConstraint {
599 #[prost(message, tag = "1")]
600 Uniform(super::UniformCapacity),
601 }
602}
603#[derive(Clone, Copy, PartialEq, ::prost::Message)]
604pub struct UniformCapacity {
605 #[prost(int32, tag = "1")]
606 pub capacity: i32,
607}
608#[derive(Clone, Copy, PartialEq, ::prost::Message)]
609pub struct BufferConstraint {
610 #[prost(oneof = "buffer_constraint::BufferConstraint", tags = "1")]
611 pub buffer_constraint: ::core::option::Option<buffer_constraint::BufferConstraint>,
612}
613pub mod buffer_constraint {
615 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
616 pub enum BufferConstraint {
617 #[prost(message, tag = "1")]
618 Fixed(super::FixedBuffer),
619 }
620}
621#[derive(Clone, Copy, PartialEq, ::prost::Message)]
622pub struct FixedBuffer {
623 #[prost(message, optional, tag = "1")]
624 pub min_gap: ::core::option::Option<MinuteDuration>,
625}
626#[derive(Clone, Copy, PartialEq, ::prost::Message)]
627pub struct UsageCeilingConstraint {
628 #[prost(oneof = "usage_ceiling_constraint::UsageCeilingConstraint", tags = "1")]
629 pub usage_ceiling_constraint: ::core::option::Option<
630 usage_ceiling_constraint::UsageCeilingConstraint,
631 >,
632}
633pub mod usage_ceiling_constraint {
635 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
636 pub enum UsageCeilingConstraint {
637 #[prost(message, tag = "1")]
638 PerCalendarDay(super::DailyUsageCeiling),
639 }
640}
641#[derive(Clone, Copy, PartialEq, ::prost::Message)]
642pub struct DailyUsageCeiling {
643 #[prost(message, optional, tag = "1")]
644 pub max_duration: ::core::option::Option<MinuteDuration>,
645 #[prost(int32, optional, tag = "2")]
646 pub max_count: ::core::option::Option<i32>,
647}
648#[derive(Clone, PartialEq, ::prost::Message)]
649pub struct PrecedenceConstraint {
650 #[prost(oneof = "precedence_constraint::PrecedenceConstraint", tags = "1")]
651 pub precedence_constraint: ::core::option::Option<
652 precedence_constraint::PrecedenceConstraint,
653 >,
654}
655pub mod precedence_constraint {
657 #[derive(Clone, PartialEq, ::prost::Oneof)]
658 pub enum PrecedenceConstraint {
659 #[prost(message, tag = "1")]
660 After(super::ConstraintSubject),
661 }
662}
663#[derive(Clone, Copy, PartialEq, ::prost::Message)]
664pub struct MutualExclusionConstraint {
665 #[prost(
666 oneof = "mutual_exclusion_constraint::MutualExclusionConstraint",
667 tags = "1"
668 )]
669 pub mutual_exclusion_constraint: ::core::option::Option<
670 mutual_exclusion_constraint::MutualExclusionConstraint,
671 >,
672}
673pub mod mutual_exclusion_constraint {
675 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
676 pub enum MutualExclusionConstraint {
677 #[prost(message, tag = "1")]
678 NoOverlap(super::NoOverlap),
679 }
680}
681#[derive(Clone, Copy, PartialEq, ::prost::Message)]
682pub struct NoOverlap {}
683#[derive(Clone, PartialEq, ::prost::Message)]
684pub struct CreatePlanRequest {
685 #[prost(message, optional, tag = "1")]
686 pub plan: ::core::option::Option<Plan>,
687 #[prost(string, tag = "2")]
688 pub message: ::prost::alloc::string::String,
689}
690#[derive(Clone, PartialEq, ::prost::Message)]
691pub struct CreatePlanResponse {
692 #[prost(message, optional, tag = "1")]
693 pub plan: ::core::option::Option<Plan>,
694 #[prost(message, repeated, tag = "2")]
695 pub warnings: ::prost::alloc::vec::Vec<PlanViolation>,
696 #[prost(bool, tag = "3")]
697 pub is_warnings_truncated: bool,
698}
699#[derive(Clone, PartialEq, ::prost::Message)]
700pub struct GetPlanRequest {
701 #[prost(string, tag = "1")]
702 pub plan_rid: ::prost::alloc::string::String,
703 #[prost(message, optional, tag = "2")]
704 pub at: ::core::option::Option<super::super::versioning::v1::BranchOrCommit>,
705}
706#[derive(Clone, PartialEq, ::prost::Message)]
707pub struct GetPlanResponse {
708 #[prost(message, optional, tag = "1")]
709 pub plan: ::core::option::Option<Plan>,
710}
711#[derive(Clone, PartialEq, ::prost::Message)]
712pub struct BatchGetPlansRequest {
713 #[prost(string, repeated, tag = "1")]
714 pub plan_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
715}
716#[derive(Clone, PartialEq, ::prost::Message)]
717pub struct BatchGetPlansResponse {
718 #[prost(message, repeated, tag = "1")]
719 pub plans: ::prost::alloc::vec::Vec<Plan>,
720}
721#[derive(Clone, PartialEq, ::prost::Message)]
722pub struct BatchGetPlanSummariesRequest {
723 #[prost(string, repeated, tag = "1")]
724 pub plan_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
725}
726#[derive(Clone, PartialEq, ::prost::Message)]
727pub struct BatchGetPlanSummariesResponse {
728 #[prost(message, repeated, tag = "1")]
729 pub plans: ::prost::alloc::vec::Vec<PlanSummary>,
730}
731#[derive(Clone, PartialEq, ::prost::Message)]
732pub struct CreatePlanCommitRequest {
733 #[prost(string, tag = "1")]
734 pub plan_rid: ::prost::alloc::string::String,
735 #[prost(message, optional, tag = "2")]
736 pub content: ::core::option::Option<PlanContent>,
737 #[prost(string, optional, tag = "3")]
738 pub branch: ::core::option::Option<::prost::alloc::string::String>,
739 #[prost(string, tag = "4")]
740 pub message: ::prost::alloc::string::String,
741 #[prost(bool, tag = "5")]
742 pub is_working_state: bool,
743 #[prost(string, optional, tag = "6")]
744 pub expected_latest_commit: ::core::option::Option<::prost::alloc::string::String>,
745}
746#[derive(Clone, PartialEq, ::prost::Message)]
747pub struct CreatePlanCommitResponse {
748 #[prost(message, optional, tag = "1")]
749 pub plan: ::core::option::Option<Plan>,
750 #[prost(message, repeated, tag = "2")]
751 pub warnings: ::prost::alloc::vec::Vec<PlanViolation>,
752 #[prost(bool, tag = "3")]
753 pub is_warnings_truncated: bool,
754}
755#[derive(Clone, PartialEq, ::prost::Message)]
756pub struct UpdatePlanMetadataRequest {
757 #[prost(string, tag = "1")]
758 pub plan_rid: ::prost::alloc::string::String,
759 #[prost(string, optional, tag = "2")]
760 pub title: ::core::option::Option<::prost::alloc::string::String>,
761 #[prost(string, optional, tag = "3")]
762 pub description: ::core::option::Option<::prost::alloc::string::String>,
763 #[prost(message, optional, tag = "4")]
764 pub labels: ::core::option::Option<super::super::types::LabelUpdateWrapper>,
765 #[prost(message, optional, tag = "5")]
766 pub properties: ::core::option::Option<super::super::types::PropertyUpdateWrapper>,
767 #[prost(bool, optional, tag = "6")]
768 pub is_archived: ::core::option::Option<bool>,
769 #[prost(bool, optional, tag = "7")]
770 pub is_published: ::core::option::Option<bool>,
771 #[prost(message, optional, tag = "8")]
772 pub status: ::core::option::Option<PlanStatus>,
773}
774#[derive(Clone, PartialEq, ::prost::Message)]
775pub struct UpdatePlanMetadataResponse {
776 #[prost(message, optional, tag = "1")]
777 pub metadata: ::core::option::Option<PlanMetadata>,
778}
779#[derive(Clone, PartialEq, ::prost::Message)]
780pub struct SearchPlansQuery {
781 #[prost(
782 oneof = "search_plans_query::Query",
783 tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15"
784 )]
785 pub query: ::core::option::Option<search_plans_query::Query>,
786}
787pub mod search_plans_query {
789 #[derive(Clone, PartialEq, ::prost::Oneof)]
790 pub enum Query {
791 #[prost(message, tag = "1")]
792 And(super::SearchPlansQueryList),
793 #[prost(message, tag = "2")]
794 Or(super::SearchPlansQueryList),
795 #[prost(message, tag = "3")]
796 Not(::prost::alloc::boxed::Box<super::SearchPlansQuery>),
797 #[prost(string, tag = "4")]
798 ExactMatch(::prost::alloc::string::String),
799 #[prost(string, tag = "5")]
800 SearchText(::prost::alloc::string::String),
801 #[prost(message, tag = "6")]
802 Labels(super::super::super::types::LabelsFilter),
803 #[prost(message, tag = "7")]
804 Properties(super::super::super::types::PropertiesFilter),
805 #[prost(string, tag = "8")]
806 CreatedBy(::prost::alloc::string::String),
807 #[prost(bool, tag = "9")]
808 IsArchived(bool),
809 #[prost(bool, tag = "10")]
810 IsPublished(bool),
811 #[prost(bool, tag = "11")]
812 AuthorIsCurrentUser(bool),
813 #[prost(message, tag = "12")]
814 AuthorRids(super::UserRidList),
815 #[prost(string, tag = "13")]
816 WorkspaceRid(::prost::alloc::string::String),
817 #[prost(message, tag = "14")]
818 DateRangeOverlaps(super::PlanDateRangeFilter),
819 #[prost(message, tag = "15")]
820 Status(super::PlanStatus),
821 }
822}
823#[derive(Clone, Copy, PartialEq, ::prost::Message)]
824pub struct PlanDateRangeFilter {
825 #[prost(message, optional, tag = "1")]
826 pub start: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
827 #[prost(message, optional, tag = "2")]
828 pub end: ::core::option::Option<super::super::super::google::protobuf::Timestamp>,
829}
830#[derive(Clone, PartialEq, ::prost::Message)]
831pub struct SearchPlansQueryList {
832 #[prost(message, repeated, tag = "1")]
833 pub queries: ::prost::alloc::vec::Vec<SearchPlansQuery>,
834}
835#[derive(Clone, PartialEq, ::prost::Message)]
836pub struct UserRidList {
837 #[prost(string, repeated, tag = "1")]
838 pub user_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
839}
840#[derive(Clone, Copy, PartialEq, ::prost::Message)]
841pub struct PlanSortOptions {
842 #[prost(enumeration = "PlanSortField", tag = "1")]
843 pub field: i32,
844 #[prost(bool, tag = "2")]
845 pub is_descending: bool,
846}
847#[derive(Clone, PartialEq, ::prost::Message)]
848pub struct SearchPlansRequest {
849 #[prost(message, optional, tag = "1")]
850 pub query: ::core::option::Option<SearchPlansQuery>,
851 #[prost(message, optional, tag = "2")]
852 pub sort: ::core::option::Option<PlanSortOptions>,
853 #[prost(string, optional, tag = "3")]
854 pub page_token: ::core::option::Option<::prost::alloc::string::String>,
855 #[prost(int32, optional, tag = "4")]
856 pub page_size: ::core::option::Option<i32>,
857}
858#[derive(Clone, PartialEq, ::prost::Message)]
859pub struct SearchPlansResponse {
860 #[prost(message, repeated, tag = "1")]
861 pub results: ::prost::alloc::vec::Vec<PlanSummary>,
862 #[prost(string, optional, tag = "2")]
863 pub next_page_token: ::core::option::Option<::prost::alloc::string::String>,
864}
865#[derive(Clone, PartialEq, ::prost::Message)]
866pub struct ValidatePlanRequest {
867 #[prost(oneof = "validate_plan_request::Source", tags = "1, 2")]
868 pub source: ::core::option::Option<validate_plan_request::Source>,
869}
870pub mod validate_plan_request {
872 #[derive(Clone, PartialEq, ::prost::Oneof)]
873 pub enum Source {
874 #[prost(message, tag = "1")]
875 Plan(super::StoredPlanRevision),
876 #[prost(message, tag = "2")]
877 Content(super::PlanContent),
878 }
879}
880#[derive(Clone, PartialEq, ::prost::Message)]
881pub struct StoredPlanRevision {
882 #[prost(string, tag = "1")]
883 pub plan_rid: ::prost::alloc::string::String,
884 #[prost(message, optional, tag = "2")]
885 pub at: ::core::option::Option<super::super::versioning::v1::BranchOrCommit>,
886}
887#[derive(Clone, PartialEq, ::prost::Message)]
888pub struct ValidatePlanResponse {
889 #[prost(message, repeated, tag = "1")]
890 pub violations: ::prost::alloc::vec::Vec<PlanViolation>,
891 #[prost(bool, tag = "2")]
892 pub is_truncated: bool,
893 #[prost(message, optional, tag = "3")]
894 pub commit: ::core::option::Option<super::super::versioning::v1::Commit>,
895}
896#[derive(Clone, PartialEq, ::prost::Message)]
897pub struct PlanViolation {
898 #[prost(enumeration = "PlanViolationSeverity", tag = "1")]
899 pub severity: i32,
900 #[prost(string, tag = "2")]
901 pub code: ::prost::alloc::string::String,
902 #[prost(string, tag = "3")]
903 pub message: ::prost::alloc::string::String,
904 #[prost(message, repeated, tag = "4")]
905 pub subjects: ::prost::alloc::vec::Vec<PlanViolationSubject>,
906}
907#[derive(Clone, PartialEq, ::prost::Message)]
908pub struct PlanViolationSubject {
909 #[prost(enumeration = "PlanElementKind", tag = "1")]
910 pub kind: i32,
911 #[prost(string, tag = "2")]
912 pub id: ::prost::alloc::string::String,
913 #[prost(string, tag = "3")]
914 pub path: ::prost::alloc::string::String,
915}
916#[derive(Clone, PartialEq, ::prost::Message)]
917pub struct ListPlanAssetGroupSummariesRequest {
918 #[prost(string, tag = "1")]
919 pub plan_rid: ::prost::alloc::string::String,
920 #[prost(message, optional, tag = "2")]
921 pub at: ::core::option::Option<super::super::versioning::v1::BranchOrCommit>,
922 #[prost(string, optional, tag = "3")]
923 pub containing_asset_rid: ::core::option::Option<::prost::alloc::string::String>,
924}
925#[derive(Clone, PartialEq, ::prost::Message)]
926pub struct ListPlanAssetGroupSummariesResponse {
927 #[prost(message, repeated, tag = "1")]
928 pub asset_group_summaries: ::prost::alloc::vec::Vec<AssetGroupSummary>,
929 #[prost(message, optional, tag = "2")]
930 pub commit: ::core::option::Option<super::super::versioning::v1::Commit>,
931}
932#[derive(Clone, PartialEq, ::prost::Message)]
933pub struct AssetGroupSummary {
934 #[prost(string, tag = "1")]
935 pub asset_group_id: ::prost::alloc::string::String,
936 #[prost(int32, tag = "2")]
937 pub asset_count: i32,
938}
939#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
940#[repr(i32)]
941pub enum PlanSortField {
942 Unspecified = 0,
943 Name = 1,
944 CreatedAt = 2,
945 EditedAt = 3,
946 StartDate = 4,
947 EndDate = 5,
948}
949impl PlanSortField {
950 pub fn as_str_name(&self) -> &'static str {
955 match self {
956 Self::Unspecified => "PLAN_SORT_FIELD_UNSPECIFIED",
957 Self::Name => "NAME",
958 Self::CreatedAt => "CREATED_AT",
959 Self::EditedAt => "EDITED_AT",
960 Self::StartDate => "START_DATE",
961 Self::EndDate => "END_DATE",
962 }
963 }
964 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
966 match value {
967 "PLAN_SORT_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
968 "NAME" => Some(Self::Name),
969 "CREATED_AT" => Some(Self::CreatedAt),
970 "EDITED_AT" => Some(Self::EditedAt),
971 "START_DATE" => Some(Self::StartDate),
972 "END_DATE" => Some(Self::EndDate),
973 _ => None,
974 }
975 }
976}
977#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
978#[repr(i32)]
979pub enum PlanViolationSeverity {
980 Unspecified = 0,
981 Error = 1,
982 Warning = 2,
983}
984impl PlanViolationSeverity {
985 pub fn as_str_name(&self) -> &'static str {
990 match self {
991 Self::Unspecified => "PLAN_VIOLATION_SEVERITY_UNSPECIFIED",
992 Self::Error => "PLAN_VIOLATION_SEVERITY_ERROR",
993 Self::Warning => "PLAN_VIOLATION_SEVERITY_WARNING",
994 }
995 }
996 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
998 match value {
999 "PLAN_VIOLATION_SEVERITY_UNSPECIFIED" => Some(Self::Unspecified),
1000 "PLAN_VIOLATION_SEVERITY_ERROR" => Some(Self::Error),
1001 "PLAN_VIOLATION_SEVERITY_WARNING" => Some(Self::Warning),
1002 _ => None,
1003 }
1004 }
1005}
1006#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1007#[repr(i32)]
1008pub enum PlanElementKind {
1009 Unspecified = 0,
1010 Plan = 1,
1011 Objective = 2,
1012 Activity = 3,
1013 Segment = 4,
1014 Milestone = 5,
1015 AssetGroup = 6,
1016 Constraint = 7,
1017 Resource = 8,
1018}
1019impl PlanElementKind {
1020 pub fn as_str_name(&self) -> &'static str {
1025 match self {
1026 Self::Unspecified => "PLAN_ELEMENT_KIND_UNSPECIFIED",
1027 Self::Plan => "PLAN_ELEMENT_KIND_PLAN",
1028 Self::Objective => "PLAN_ELEMENT_KIND_OBJECTIVE",
1029 Self::Activity => "PLAN_ELEMENT_KIND_ACTIVITY",
1030 Self::Segment => "PLAN_ELEMENT_KIND_SEGMENT",
1031 Self::Milestone => "PLAN_ELEMENT_KIND_MILESTONE",
1032 Self::AssetGroup => "PLAN_ELEMENT_KIND_ASSET_GROUP",
1033 Self::Constraint => "PLAN_ELEMENT_KIND_CONSTRAINT",
1034 Self::Resource => "PLAN_ELEMENT_KIND_RESOURCE",
1035 }
1036 }
1037 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1039 match value {
1040 "PLAN_ELEMENT_KIND_UNSPECIFIED" => Some(Self::Unspecified),
1041 "PLAN_ELEMENT_KIND_PLAN" => Some(Self::Plan),
1042 "PLAN_ELEMENT_KIND_OBJECTIVE" => Some(Self::Objective),
1043 "PLAN_ELEMENT_KIND_ACTIVITY" => Some(Self::Activity),
1044 "PLAN_ELEMENT_KIND_SEGMENT" => Some(Self::Segment),
1045 "PLAN_ELEMENT_KIND_MILESTONE" => Some(Self::Milestone),
1046 "PLAN_ELEMENT_KIND_ASSET_GROUP" => Some(Self::AssetGroup),
1047 "PLAN_ELEMENT_KIND_CONSTRAINT" => Some(Self::Constraint),
1048 "PLAN_ELEMENT_KIND_RESOURCE" => Some(Self::Resource),
1049 _ => None,
1050 }
1051 }
1052}
1053#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1054#[repr(i32)]
1055pub enum PlanError {
1056 PlanNotFound = 0,
1057 BranchOrCommitNotFound = 1,
1058 CommitConflict = 2,
1059 PlanArchived = 3,
1060}
1061impl PlanError {
1062 pub fn as_str_name(&self) -> &'static str {
1067 match self {
1068 Self::PlanNotFound => "PLAN_ERROR_PLAN_NOT_FOUND",
1069 Self::BranchOrCommitNotFound => "PLAN_ERROR_BRANCH_OR_COMMIT_NOT_FOUND",
1070 Self::CommitConflict => "PLAN_ERROR_COMMIT_CONFLICT",
1071 Self::PlanArchived => "PLAN_ERROR_PLAN_ARCHIVED",
1072 }
1073 }
1074 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1076 match value {
1077 "PLAN_ERROR_PLAN_NOT_FOUND" => Some(Self::PlanNotFound),
1078 "PLAN_ERROR_BRANCH_OR_COMMIT_NOT_FOUND" => Some(Self::BranchOrCommitNotFound),
1079 "PLAN_ERROR_COMMIT_CONFLICT" => Some(Self::CommitConflict),
1080 "PLAN_ERROR_PLAN_ARCHIVED" => Some(Self::PlanArchived),
1081 _ => None,
1082 }
1083 }
1084}
1085pub mod plan_service_client {
1087 #![allow(
1088 unused_variables,
1089 dead_code,
1090 missing_docs,
1091 clippy::wildcard_imports,
1092 clippy::let_unit_value,
1093 )]
1094 use tonic::codegen::*;
1095 use tonic::codegen::http::Uri;
1096 #[derive(Debug, Clone)]
1097 pub struct PlanServiceClient<T> {
1098 inner: tonic::client::Grpc<T>,
1099 }
1100 impl PlanServiceClient<tonic::transport::Channel> {
1101 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
1103 where
1104 D: TryInto<tonic::transport::Endpoint>,
1105 D::Error: Into<StdError>,
1106 {
1107 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
1108 Ok(Self::new(conn))
1109 }
1110 }
1111 impl<T> PlanServiceClient<T>
1112 where
1113 T: tonic::client::GrpcService<tonic::body::Body>,
1114 T::Error: Into<StdError>,
1115 T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
1116 <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
1117 {
1118 pub fn new(inner: T) -> Self {
1119 let inner = tonic::client::Grpc::new(inner);
1120 Self { inner }
1121 }
1122 pub fn with_origin(inner: T, origin: Uri) -> Self {
1123 let inner = tonic::client::Grpc::with_origin(inner, origin);
1124 Self { inner }
1125 }
1126 pub fn with_interceptor<F>(
1127 inner: T,
1128 interceptor: F,
1129 ) -> PlanServiceClient<InterceptedService<T, F>>
1130 where
1131 F: tonic::service::Interceptor,
1132 T::ResponseBody: Default,
1133 T: tonic::codegen::Service<
1134 http::Request<tonic::body::Body>,
1135 Response = http::Response<
1136 <T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody,
1137 >,
1138 >,
1139 <T as tonic::codegen::Service<
1140 http::Request<tonic::body::Body>,
1141 >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
1142 {
1143 PlanServiceClient::new(InterceptedService::new(inner, interceptor))
1144 }
1145 #[must_use]
1150 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
1151 self.inner = self.inner.send_compressed(encoding);
1152 self
1153 }
1154 #[must_use]
1156 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
1157 self.inner = self.inner.accept_compressed(encoding);
1158 self
1159 }
1160 #[must_use]
1164 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
1165 self.inner = self.inner.max_decoding_message_size(limit);
1166 self
1167 }
1168 #[must_use]
1172 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
1173 self.inner = self.inner.max_encoding_message_size(limit);
1174 self
1175 }
1176 pub async fn create_plan(
1177 &mut self,
1178 request: impl tonic::IntoRequest<super::CreatePlanRequest>,
1179 ) -> std::result::Result<
1180 tonic::Response<super::CreatePlanResponse>,
1181 tonic::Status,
1182 > {
1183 self.inner
1184 .ready()
1185 .await
1186 .map_err(|e| {
1187 tonic::Status::unknown(
1188 format!("Service was not ready: {}", e.into()),
1189 )
1190 })?;
1191 let codec = tonic::codec::ProstCodec::default();
1192 let path = http::uri::PathAndQuery::from_static(
1193 "/nominal.plan.v1.PlanService/CreatePlan",
1194 );
1195 let mut req = request.into_request();
1196 req.extensions_mut()
1197 .insert(GrpcMethod::new("nominal.plan.v1.PlanService", "CreatePlan"));
1198 self.inner.unary(req, path, codec).await
1199 }
1200 pub async fn get_plan(
1201 &mut self,
1202 request: impl tonic::IntoRequest<super::GetPlanRequest>,
1203 ) -> std::result::Result<
1204 tonic::Response<super::GetPlanResponse>,
1205 tonic::Status,
1206 > {
1207 self.inner
1208 .ready()
1209 .await
1210 .map_err(|e| {
1211 tonic::Status::unknown(
1212 format!("Service was not ready: {}", e.into()),
1213 )
1214 })?;
1215 let codec = tonic::codec::ProstCodec::default();
1216 let path = http::uri::PathAndQuery::from_static(
1217 "/nominal.plan.v1.PlanService/GetPlan",
1218 );
1219 let mut req = request.into_request();
1220 req.extensions_mut()
1221 .insert(GrpcMethod::new("nominal.plan.v1.PlanService", "GetPlan"));
1222 self.inner.unary(req, path, codec).await
1223 }
1224 pub async fn batch_get_plans(
1225 &mut self,
1226 request: impl tonic::IntoRequest<super::BatchGetPlansRequest>,
1227 ) -> std::result::Result<
1228 tonic::Response<super::BatchGetPlansResponse>,
1229 tonic::Status,
1230 > {
1231 self.inner
1232 .ready()
1233 .await
1234 .map_err(|e| {
1235 tonic::Status::unknown(
1236 format!("Service was not ready: {}", e.into()),
1237 )
1238 })?;
1239 let codec = tonic::codec::ProstCodec::default();
1240 let path = http::uri::PathAndQuery::from_static(
1241 "/nominal.plan.v1.PlanService/BatchGetPlans",
1242 );
1243 let mut req = request.into_request();
1244 req.extensions_mut()
1245 .insert(GrpcMethod::new("nominal.plan.v1.PlanService", "BatchGetPlans"));
1246 self.inner.unary(req, path, codec).await
1247 }
1248 pub async fn batch_get_plan_summaries(
1249 &mut self,
1250 request: impl tonic::IntoRequest<super::BatchGetPlanSummariesRequest>,
1251 ) -> std::result::Result<
1252 tonic::Response<super::BatchGetPlanSummariesResponse>,
1253 tonic::Status,
1254 > {
1255 self.inner
1256 .ready()
1257 .await
1258 .map_err(|e| {
1259 tonic::Status::unknown(
1260 format!("Service was not ready: {}", e.into()),
1261 )
1262 })?;
1263 let codec = tonic::codec::ProstCodec::default();
1264 let path = http::uri::PathAndQuery::from_static(
1265 "/nominal.plan.v1.PlanService/BatchGetPlanSummaries",
1266 );
1267 let mut req = request.into_request();
1268 req.extensions_mut()
1269 .insert(
1270 GrpcMethod::new(
1271 "nominal.plan.v1.PlanService",
1272 "BatchGetPlanSummaries",
1273 ),
1274 );
1275 self.inner.unary(req, path, codec).await
1276 }
1277 pub async fn create_plan_commit(
1278 &mut self,
1279 request: impl tonic::IntoRequest<super::CreatePlanCommitRequest>,
1280 ) -> std::result::Result<
1281 tonic::Response<super::CreatePlanCommitResponse>,
1282 tonic::Status,
1283 > {
1284 self.inner
1285 .ready()
1286 .await
1287 .map_err(|e| {
1288 tonic::Status::unknown(
1289 format!("Service was not ready: {}", e.into()),
1290 )
1291 })?;
1292 let codec = tonic::codec::ProstCodec::default();
1293 let path = http::uri::PathAndQuery::from_static(
1294 "/nominal.plan.v1.PlanService/CreatePlanCommit",
1295 );
1296 let mut req = request.into_request();
1297 req.extensions_mut()
1298 .insert(
1299 GrpcMethod::new("nominal.plan.v1.PlanService", "CreatePlanCommit"),
1300 );
1301 self.inner.unary(req, path, codec).await
1302 }
1303 pub async fn update_plan_metadata(
1304 &mut self,
1305 request: impl tonic::IntoRequest<super::UpdatePlanMetadataRequest>,
1306 ) -> std::result::Result<
1307 tonic::Response<super::UpdatePlanMetadataResponse>,
1308 tonic::Status,
1309 > {
1310 self.inner
1311 .ready()
1312 .await
1313 .map_err(|e| {
1314 tonic::Status::unknown(
1315 format!("Service was not ready: {}", e.into()),
1316 )
1317 })?;
1318 let codec = tonic::codec::ProstCodec::default();
1319 let path = http::uri::PathAndQuery::from_static(
1320 "/nominal.plan.v1.PlanService/UpdatePlanMetadata",
1321 );
1322 let mut req = request.into_request();
1323 req.extensions_mut()
1324 .insert(
1325 GrpcMethod::new("nominal.plan.v1.PlanService", "UpdatePlanMetadata"),
1326 );
1327 self.inner.unary(req, path, codec).await
1328 }
1329 pub async fn search_plans(
1330 &mut self,
1331 request: impl tonic::IntoRequest<super::SearchPlansRequest>,
1332 ) -> std::result::Result<
1333 tonic::Response<super::SearchPlansResponse>,
1334 tonic::Status,
1335 > {
1336 self.inner
1337 .ready()
1338 .await
1339 .map_err(|e| {
1340 tonic::Status::unknown(
1341 format!("Service was not ready: {}", e.into()),
1342 )
1343 })?;
1344 let codec = tonic::codec::ProstCodec::default();
1345 let path = http::uri::PathAndQuery::from_static(
1346 "/nominal.plan.v1.PlanService/SearchPlans",
1347 );
1348 let mut req = request.into_request();
1349 req.extensions_mut()
1350 .insert(GrpcMethod::new("nominal.plan.v1.PlanService", "SearchPlans"));
1351 self.inner.unary(req, path, codec).await
1352 }
1353 pub async fn validate_plan(
1354 &mut self,
1355 request: impl tonic::IntoRequest<super::ValidatePlanRequest>,
1356 ) -> std::result::Result<
1357 tonic::Response<super::ValidatePlanResponse>,
1358 tonic::Status,
1359 > {
1360 self.inner
1361 .ready()
1362 .await
1363 .map_err(|e| {
1364 tonic::Status::unknown(
1365 format!("Service was not ready: {}", e.into()),
1366 )
1367 })?;
1368 let codec = tonic::codec::ProstCodec::default();
1369 let path = http::uri::PathAndQuery::from_static(
1370 "/nominal.plan.v1.PlanService/ValidatePlan",
1371 );
1372 let mut req = request.into_request();
1373 req.extensions_mut()
1374 .insert(GrpcMethod::new("nominal.plan.v1.PlanService", "ValidatePlan"));
1375 self.inner.unary(req, path, codec).await
1376 }
1377 pub async fn list_plan_asset_group_summaries(
1378 &mut self,
1379 request: impl tonic::IntoRequest<super::ListPlanAssetGroupSummariesRequest>,
1380 ) -> std::result::Result<
1381 tonic::Response<super::ListPlanAssetGroupSummariesResponse>,
1382 tonic::Status,
1383 > {
1384 self.inner
1385 .ready()
1386 .await
1387 .map_err(|e| {
1388 tonic::Status::unknown(
1389 format!("Service was not ready: {}", e.into()),
1390 )
1391 })?;
1392 let codec = tonic::codec::ProstCodec::default();
1393 let path = http::uri::PathAndQuery::from_static(
1394 "/nominal.plan.v1.PlanService/ListPlanAssetGroupSummaries",
1395 );
1396 let mut req = request.into_request();
1397 req.extensions_mut()
1398 .insert(
1399 GrpcMethod::new(
1400 "nominal.plan.v1.PlanService",
1401 "ListPlanAssetGroupSummaries",
1402 ),
1403 );
1404 self.inner.unary(req, path, codec).await
1405 }
1406 }
1407}