1#[derive(Clone, PartialEq, ::prost::Message)]
4pub struct JobType {
5 #[prost(string, tag = "1")]
7 pub id: ::prost::alloc::string::String,
8 #[prost(string, optional, tag = "2")]
10 pub name: ::core::option::Option<::prost::alloc::string::String>,
11 #[prost(string, optional, tag = "3")]
13 pub description: ::core::option::Option<::prost::alloc::string::String>,
14 #[prost(string, optional, tag = "4")]
16 pub input_schema_json: ::core::option::Option<::prost::alloc::string::String>,
17 #[prost(string, optional, tag = "5")]
19 pub output_schema_json: ::core::option::Option<::prost::alloc::string::String>,
20}
21impl ::prost::Name for JobType {
22 const NAME: &'static str = "JobType";
23 const PACKAGE: &'static str = "ora.common.v1";
24 fn full_name() -> ::prost::alloc::string::String {
25 "ora.common.v1.JobType".into()
26 }
27 fn type_url() -> ::prost::alloc::string::String {
28 "/ora.common.v1.JobType".into()
29 }
30}
31#[derive(Clone, PartialEq, ::prost::Message)]
33pub struct JobDefinition {
34 #[prost(string, tag = "1")]
36 pub job_type_id: ::prost::alloc::string::String,
37 #[prost(message, optional, tag = "2")]
41 pub target_execution_time: ::core::option::Option<::prost_types::Timestamp>,
42 #[prost(string, tag = "3")]
44 pub input_payload_json: ::prost::alloc::string::String,
45 #[prost(message, repeated, tag = "4")]
47 pub labels: ::prost::alloc::vec::Vec<JobLabel>,
48 #[prost(message, optional, tag = "5")]
50 pub timeout_policy: ::core::option::Option<JobTimeoutPolicy>,
51 #[prost(message, optional, tag = "6")]
53 pub retry_policy: ::core::option::Option<JobRetryPolicy>,
54 #[prost(string, optional, tag = "7")]
56 pub metadata_json: ::core::option::Option<::prost::alloc::string::String>,
57}
58impl ::prost::Name for JobDefinition {
59 const NAME: &'static str = "JobDefinition";
60 const PACKAGE: &'static str = "ora.common.v1";
61 fn full_name() -> ::prost::alloc::string::String {
62 "ora.common.v1.JobDefinition".into()
63 }
64 fn type_url() -> ::prost::alloc::string::String {
65 "/ora.common.v1.JobDefinition".into()
66 }
67}
68#[derive(Clone, PartialEq, ::prost::Message)]
75pub struct JobLabel {
76 #[prost(string, tag = "1")]
82 pub key: ::prost::alloc::string::String,
83 #[prost(string, tag = "2")]
85 pub value: ::prost::alloc::string::String,
86}
87impl ::prost::Name for JobLabel {
88 const NAME: &'static str = "JobLabel";
89 const PACKAGE: &'static str = "ora.common.v1";
90 fn full_name() -> ::prost::alloc::string::String {
91 "ora.common.v1.JobLabel".into()
92 }
93 fn type_url() -> ::prost::alloc::string::String {
94 "/ora.common.v1.JobLabel".into()
95 }
96}
97#[derive(Clone, Copy, PartialEq, ::prost::Message)]
99pub struct JobTimeoutPolicy {
100 #[prost(message, optional, tag = "1")]
102 pub timeout: ::core::option::Option<::prost_types::Duration>,
103 #[prost(enumeration = "JobTimeoutBaseTime", tag = "2")]
107 pub base_time: i32,
108}
109impl ::prost::Name for JobTimeoutPolicy {
110 const NAME: &'static str = "JobTimeoutPolicy";
111 const PACKAGE: &'static str = "ora.common.v1";
112 fn full_name() -> ::prost::alloc::string::String {
113 "ora.common.v1.JobTimeoutPolicy".into()
114 }
115 fn type_url() -> ::prost::alloc::string::String {
116 "/ora.common.v1.JobTimeoutPolicy".into()
117 }
118}
119#[derive(Clone, Copy, PartialEq, ::prost::Message)]
121pub struct JobRetryPolicy {
122 #[prost(uint64, tag = "1")]
126 pub retries: u64,
127}
128impl ::prost::Name for JobRetryPolicy {
129 const NAME: &'static str = "JobRetryPolicy";
130 const PACKAGE: &'static str = "ora.common.v1";
131 fn full_name() -> ::prost::alloc::string::String {
132 "ora.common.v1.JobRetryPolicy".into()
133 }
134 fn type_url() -> ::prost::alloc::string::String {
135 "/ora.common.v1.JobRetryPolicy".into()
136 }
137}
138#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
140#[repr(i32)]
141pub enum JobTimeoutBaseTime {
142 Unspecified = 0,
144 TargetExecutionTime = 1,
152 StartTime = 2,
154}
155impl JobTimeoutBaseTime {
156 pub fn as_str_name(&self) -> &'static str {
161 match self {
162 Self::Unspecified => "JOB_TIMEOUT_BASE_TIME_UNSPECIFIED",
163 Self::TargetExecutionTime => "JOB_TIMEOUT_BASE_TIME_TARGET_EXECUTION_TIME",
164 Self::StartTime => "JOB_TIMEOUT_BASE_TIME_START_TIME",
165 }
166 }
167 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
169 match value {
170 "JOB_TIMEOUT_BASE_TIME_UNSPECIFIED" => Some(Self::Unspecified),
171 "JOB_TIMEOUT_BASE_TIME_TARGET_EXECUTION_TIME" => Some(Self::TargetExecutionTime),
172 "JOB_TIMEOUT_BASE_TIME_START_TIME" => Some(Self::StartTime),
173 _ => None,
174 }
175 }
176}
177#[derive(Clone, Copy, PartialEq, ::prost::Message)]
183pub struct TimeRange {
184 #[prost(message, optional, tag = "1")]
188 pub start: ::core::option::Option<::prost_types::Timestamp>,
189 #[prost(message, optional, tag = "2")]
193 pub end: ::core::option::Option<::prost_types::Timestamp>,
194}
195impl ::prost::Name for TimeRange {
196 const NAME: &'static str = "TimeRange";
197 const PACKAGE: &'static str = "ora.common.v1";
198 fn full_name() -> ::prost::alloc::string::String {
199 "ora.common.v1.TimeRange".into()
200 }
201 fn type_url() -> ::prost::alloc::string::String {
202 "/ora.common.v1.TimeRange".into()
203 }
204}
205#[derive(Clone, Copy, PartialEq, ::prost::Message)]
211pub struct InclusiveTimeRange {
212 #[prost(message, optional, tag = "1")]
216 pub start: ::core::option::Option<::prost_types::Timestamp>,
217 #[prost(message, optional, tag = "2")]
221 pub end: ::core::option::Option<::prost_types::Timestamp>,
222}
223impl ::prost::Name for InclusiveTimeRange {
224 const NAME: &'static str = "InclusiveTimeRange";
225 const PACKAGE: &'static str = "ora.common.v1";
226 fn full_name() -> ::prost::alloc::string::String {
227 "ora.common.v1.InclusiveTimeRange".into()
228 }
229 fn type_url() -> ::prost::alloc::string::String {
230 "/ora.common.v1.InclusiveTimeRange".into()
231 }
232}
233#[derive(Clone, PartialEq, ::prost::Message)]
237pub struct ScheduleDefinition {
238 #[prost(message, optional, tag = "1")]
240 pub job_timing_policy: ::core::option::Option<ScheduleJobTimingPolicy>,
241 #[prost(message, optional, tag = "2")]
243 pub job_creation_policy: ::core::option::Option<ScheduleJobCreationPolicy>,
244 #[prost(message, repeated, tag = "3")]
246 pub labels: ::prost::alloc::vec::Vec<ScheduleLabel>,
247 #[prost(message, optional, tag = "4")]
253 pub time_range: ::core::option::Option<TimeRange>,
254 #[prost(string, optional, tag = "5")]
256 pub metadata_json: ::core::option::Option<::prost::alloc::string::String>,
257}
258impl ::prost::Name for ScheduleDefinition {
259 const NAME: &'static str = "ScheduleDefinition";
260 const PACKAGE: &'static str = "ora.common.v1";
261 fn full_name() -> ::prost::alloc::string::String {
262 "ora.common.v1.ScheduleDefinition".into()
263 }
264 fn type_url() -> ::prost::alloc::string::String {
265 "/ora.common.v1.ScheduleDefinition".into()
266 }
267}
268#[derive(Clone, PartialEq, ::prost::Message)]
269pub struct ScheduleJobTimingPolicy {
270 #[prost(oneof = "schedule_job_timing_policy::JobTiming", tags = "1, 2")]
272 pub job_timing: ::core::option::Option<schedule_job_timing_policy::JobTiming>,
273}
274pub mod schedule_job_timing_policy {
276 #[derive(Clone, PartialEq, ::prost::Oneof)]
278 pub enum JobTiming {
279 #[prost(message, tag = "1")]
281 Repeat(super::ScheduleJobTimingPolicyRepeat),
282 #[prost(message, tag = "2")]
284 Cron(super::ScheduleJobTimingPolicyCron),
285 }
286}
287impl ::prost::Name for ScheduleJobTimingPolicy {
288 const NAME: &'static str = "ScheduleJobTimingPolicy";
289 const PACKAGE: &'static str = "ora.common.v1";
290 fn full_name() -> ::prost::alloc::string::String {
291 "ora.common.v1.ScheduleJobTimingPolicy".into()
292 }
293 fn type_url() -> ::prost::alloc::string::String {
294 "/ora.common.v1.ScheduleJobTimingPolicy".into()
295 }
296}
297#[derive(Clone, Copy, PartialEq, ::prost::Message)]
299pub struct ScheduleJobTimingPolicyRepeat {
300 #[prost(message, optional, tag = "1")]
302 pub interval: ::core::option::Option<::prost_types::Duration>,
303 #[prost(bool, tag = "2")]
306 pub immediate: bool,
307 #[prost(enumeration = "ScheduleMissedTimePolicy", tag = "3")]
309 pub missed_time_policy: i32,
310}
311impl ::prost::Name for ScheduleJobTimingPolicyRepeat {
312 const NAME: &'static str = "ScheduleJobTimingPolicyRepeat";
313 const PACKAGE: &'static str = "ora.common.v1";
314 fn full_name() -> ::prost::alloc::string::String {
315 "ora.common.v1.ScheduleJobTimingPolicyRepeat".into()
316 }
317 fn type_url() -> ::prost::alloc::string::String {
318 "/ora.common.v1.ScheduleJobTimingPolicyRepeat".into()
319 }
320}
321#[derive(Clone, PartialEq, ::prost::Message)]
323pub struct ScheduleJobTimingPolicyCron {
324 #[prost(string, tag = "1")]
329 pub cron_expression: ::prost::alloc::string::String,
330 #[prost(bool, tag = "2")]
333 pub immediate: bool,
334 #[prost(enumeration = "ScheduleMissedTimePolicy", tag = "3")]
336 pub missed_time_policy: i32,
337}
338impl ::prost::Name for ScheduleJobTimingPolicyCron {
339 const NAME: &'static str = "ScheduleJobTimingPolicyCron";
340 const PACKAGE: &'static str = "ora.common.v1";
341 fn full_name() -> ::prost::alloc::string::String {
342 "ora.common.v1.ScheduleJobTimingPolicyCron".into()
343 }
344 fn type_url() -> ::prost::alloc::string::String {
345 "/ora.common.v1.ScheduleJobTimingPolicyCron".into()
346 }
347}
348#[derive(Clone, PartialEq, ::prost::Message)]
350pub struct ScheduleJobCreationPolicy {
351 #[prost(oneof = "schedule_job_creation_policy::JobCreation", tags = "1")]
353 pub job_creation: ::core::option::Option<schedule_job_creation_policy::JobCreation>,
354}
355pub mod schedule_job_creation_policy {
357 #[derive(Clone, PartialEq, ::prost::Oneof)]
359 pub enum JobCreation {
360 #[prost(message, tag = "1")]
363 JobDefinition(super::JobDefinition),
364 }
365}
366impl ::prost::Name for ScheduleJobCreationPolicy {
367 const NAME: &'static str = "ScheduleJobCreationPolicy";
368 const PACKAGE: &'static str = "ora.common.v1";
369 fn full_name() -> ::prost::alloc::string::String {
370 "ora.common.v1.ScheduleJobCreationPolicy".into()
371 }
372 fn type_url() -> ::prost::alloc::string::String {
373 "/ora.common.v1.ScheduleJobCreationPolicy".into()
374 }
375}
376#[derive(Clone, PartialEq, ::prost::Message)]
383pub struct ScheduleLabel {
384 #[prost(string, tag = "1")]
390 pub key: ::prost::alloc::string::String,
391 #[prost(string, tag = "2")]
393 pub value: ::prost::alloc::string::String,
394}
395impl ::prost::Name for ScheduleLabel {
396 const NAME: &'static str = "ScheduleLabel";
397 const PACKAGE: &'static str = "ora.common.v1";
398 fn full_name() -> ::prost::alloc::string::String {
399 "ora.common.v1.ScheduleLabel".into()
400 }
401 fn type_url() -> ::prost::alloc::string::String {
402 "/ora.common.v1.ScheduleLabel".into()
403 }
404}
405#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
406#[repr(i32)]
407pub enum ScheduleMissedTimePolicy {
408 Unspecified = 0,
410 Skip = 1,
412 Create = 2,
414}
415impl ScheduleMissedTimePolicy {
416 pub fn as_str_name(&self) -> &'static str {
421 match self {
422 Self::Unspecified => "SCHEDULE_MISSED_TIME_POLICY_UNSPECIFIED",
423 Self::Skip => "SCHEDULE_MISSED_TIME_POLICY_SKIP",
424 Self::Create => "SCHEDULE_MISSED_TIME_POLICY_CREATE",
425 }
426 }
427 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
429 match value {
430 "SCHEDULE_MISSED_TIME_POLICY_UNSPECIFIED" => Some(Self::Unspecified),
431 "SCHEDULE_MISSED_TIME_POLICY_SKIP" => Some(Self::Skip),
432 "SCHEDULE_MISSED_TIME_POLICY_CREATE" => Some(Self::Create),
433 _ => None,
434 }
435 }
436}