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