#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SchedulerJobData {
#[prost(bytes = "vec", tag = "1")]
pub custom_data: ::prost::alloc::vec::Vec<u8>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HttpTarget {
#[prost(string, tag = "1")]
pub uri: ::prost::alloc::string::String,
#[prost(enumeration = "HttpMethod", tag = "2")]
pub http_method: i32,
#[prost(map = "string, string", tag = "3")]
pub headers: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(bytes = "vec", tag = "4")]
pub body: ::prost::alloc::vec::Vec<u8>,
#[prost(oneof = "http_target::AuthorizationHeader", tags = "5, 6")]
pub authorization_header: ::core::option::Option<http_target::AuthorizationHeader>,
}
pub mod http_target {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum AuthorizationHeader {
#[prost(message, tag = "5")]
OauthToken(super::OAuthToken),
#[prost(message, tag = "6")]
OidcToken(super::OidcToken),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AppEngineHttpTarget {
#[prost(enumeration = "HttpMethod", tag = "1")]
pub http_method: i32,
#[prost(message, optional, tag = "2")]
pub app_engine_routing: ::core::option::Option<AppEngineRouting>,
#[prost(string, tag = "3")]
pub relative_uri: ::prost::alloc::string::String,
#[prost(map = "string, string", tag = "4")]
pub headers: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(bytes = "vec", tag = "5")]
pub body: ::prost::alloc::vec::Vec<u8>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PubsubTarget {
#[prost(string, tag = "1")]
pub topic_name: ::prost::alloc::string::String,
#[prost(bytes = "vec", tag = "3")]
pub data: ::prost::alloc::vec::Vec<u8>,
#[prost(map = "string, string", tag = "4")]
pub attributes: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AppEngineRouting {
#[prost(string, tag = "1")]
pub service: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub version: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub instance: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub host: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OAuthToken {
#[prost(string, tag = "1")]
pub service_account_email: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub scope: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OidcToken {
#[prost(string, tag = "1")]
pub service_account_email: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub audience: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Job {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub description: ::prost::alloc::string::String,
#[prost(string, tag = "20")]
pub schedule: ::prost::alloc::string::String,
#[prost(string, tag = "21")]
pub time_zone: ::prost::alloc::string::String,
#[prost(message, optional, tag = "9")]
pub user_update_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(enumeration = "job::State", tag = "10")]
pub state: i32,
#[prost(message, optional, tag = "11")]
pub status: ::core::option::Option<super::super::super::super::rpc::Status>,
#[prost(message, optional, tag = "17")]
pub schedule_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "18")]
pub last_attempt_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "19")]
pub retry_config: ::core::option::Option<RetryConfig>,
#[prost(message, optional, tag = "22")]
pub attempt_deadline: ::core::option::Option<::pbjson_types::Duration>,
#[prost(oneof = "job::Target", tags = "4, 5, 6")]
pub target: ::core::option::Option<job::Target>,
}
pub mod job {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Enabled = 1,
Paused = 2,
Disabled = 3,
UpdateFailed = 4,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "STATE_UNSPECIFIED",
Self::Enabled => "ENABLED",
Self::Paused => "PAUSED",
Self::Disabled => "DISABLED",
Self::UpdateFailed => "UPDATE_FAILED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"ENABLED" => Some(Self::Enabled),
"PAUSED" => Some(Self::Paused),
"DISABLED" => Some(Self::Disabled),
"UPDATE_FAILED" => Some(Self::UpdateFailed),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Target {
#[prost(message, tag = "4")]
PubsubTarget(super::PubsubTarget),
#[prost(message, tag = "5")]
AppEngineHttpTarget(super::AppEngineHttpTarget),
#[prost(message, tag = "6")]
HttpTarget(super::HttpTarget),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct RetryConfig {
#[prost(int32, tag = "1")]
pub retry_count: i32,
#[prost(message, optional, tag = "2")]
pub max_retry_duration: ::core::option::Option<::pbjson_types::Duration>,
#[prost(message, optional, tag = "3")]
pub min_backoff_duration: ::core::option::Option<::pbjson_types::Duration>,
#[prost(message, optional, tag = "4")]
pub max_backoff_duration: ::core::option::Option<::pbjson_types::Duration>,
#[prost(int32, tag = "5")]
pub max_doublings: i32,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JobEventData {
#[prost(message, optional, tag = "1")]
pub payload: ::core::option::Option<Job>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum HttpMethod {
Unspecified = 0,
Post = 1,
Get = 2,
Head = 3,
Put = 4,
Delete = 5,
Patch = 6,
Options = 7,
}
impl HttpMethod {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "HTTP_METHOD_UNSPECIFIED",
Self::Post => "POST",
Self::Get => "GET",
Self::Head => "HEAD",
Self::Put => "PUT",
Self::Delete => "DELETE",
Self::Patch => "PATCH",
Self::Options => "OPTIONS",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"HTTP_METHOD_UNSPECIFIED" => Some(Self::Unspecified),
"POST" => Some(Self::Post),
"GET" => Some(Self::Get),
"HEAD" => Some(Self::Head),
"PUT" => Some(Self::Put),
"DELETE" => Some(Self::Delete),
"PATCH" => Some(Self::Patch),
"OPTIONS" => Some(Self::Options),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JobCreatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<JobEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JobUpdatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<JobEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JobDeletedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<JobEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JobExecutedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<SchedulerJobData>,
}