#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GatewaySpec {
#[prost(message, repeated, tag = "1")]
pub endpoints: ::prost::alloc::vec::Vec<EndpointBinding>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EndpointBinding {
#[prost(string, tag = "1")]
pub selector: ::prost::alloc::string::String,
#[prost(string, tag = "8")]
pub body: ::prost::alloc::string::String,
#[prost(string, tag = "9")]
pub response_body: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "10")]
pub query_params: ::prost::alloc::vec::Vec<QueryParameterBinding>,
#[prost(message, repeated, tag = "11")]
pub additional_bindings: ::prost::alloc::vec::Vec<AdditionalEndpointBinding>,
#[prost(bool, tag = "12")]
pub disable_query_param_discovery: bool,
#[prost(message, optional, tag = "13")]
pub stream: ::core::option::Option<StreamConfig>,
#[prost(oneof = "endpoint_binding::Pattern", tags = "2, 3, 4, 5, 6, 7")]
pub pattern: ::core::option::Option<endpoint_binding::Pattern>,
}
pub mod endpoint_binding {
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
pub enum Pattern {
#[prost(string, tag = "2")]
Get(::prost::alloc::string::String),
#[prost(string, tag = "3")]
Put(::prost::alloc::string::String),
#[prost(string, tag = "4")]
Post(::prost::alloc::string::String),
#[prost(string, tag = "5")]
Delete(::prost::alloc::string::String),
#[prost(string, tag = "6")]
Patch(::prost::alloc::string::String),
#[prost(message, tag = "7")]
Custom(super::CustomPattern),
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AdditionalEndpointBinding {
#[prost(string, tag = "8")]
pub body: ::prost::alloc::string::String,
#[prost(string, tag = "9")]
pub response_body: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "10")]
pub query_params: ::prost::alloc::vec::Vec<QueryParameterBinding>,
#[prost(bool, tag = "11")]
pub disable_query_param_discovery: bool,
#[prost(message, optional, tag = "12")]
pub stream: ::core::option::Option<StreamConfig>,
#[prost(
oneof = "additional_endpoint_binding::Pattern",
tags = "2, 3, 4, 5, 6, 7"
)]
pub pattern: ::core::option::Option<additional_endpoint_binding::Pattern>,
}
pub mod additional_endpoint_binding {
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
pub enum Pattern {
#[prost(string, tag = "2")]
Get(::prost::alloc::string::String),
#[prost(string, tag = "3")]
Put(::prost::alloc::string::String),
#[prost(string, tag = "4")]
Post(::prost::alloc::string::String),
#[prost(string, tag = "5")]
Delete(::prost::alloc::string::String),
#[prost(string, tag = "6")]
Patch(::prost::alloc::string::String),
#[prost(message, tag = "7")]
Custom(super::CustomPattern),
}
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct CustomPattern {
#[prost(string, tag = "1")]
pub method: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub path: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct QueryParameterBinding {
#[prost(string, tag = "1")]
pub selector: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub name: ::prost::alloc::string::String,
#[prost(bool, tag = "3")]
pub ignore: bool,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct StreamConfig {
#[prost(bool, tag = "1")]
pub disable_websockets: bool,
#[prost(bool, tag = "2")]
pub disable_sse: bool,
#[prost(bool, tag = "3")]
pub disable_chunked_transfer: bool,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ProtoEndpointBinding {
#[prost(string, tag = "8")]
pub body: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "9")]
pub query_params: ::prost::alloc::vec::Vec<QueryParameterBinding>,
#[prost(message, repeated, tag = "10")]
pub additional_bindings: ::prost::alloc::vec::Vec<AdditionalEndpointBinding>,
#[prost(bool, tag = "11")]
pub disable_query_param_discovery: bool,
#[prost(message, optional, tag = "12")]
pub stream: ::core::option::Option<StreamConfig>,
#[prost(oneof = "proto_endpoint_binding::Pattern", tags = "2, 3, 4, 5, 6, 7")]
pub pattern: ::core::option::Option<proto_endpoint_binding::Pattern>,
}
pub mod proto_endpoint_binding {
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
pub enum Pattern {
#[prost(string, tag = "2")]
Get(::prost::alloc::string::String),
#[prost(string, tag = "3")]
Put(::prost::alloc::string::String),
#[prost(string, tag = "4")]
Post(::prost::alloc::string::String),
#[prost(string, tag = "5")]
Delete(::prost::alloc::string::String),
#[prost(string, tag = "6")]
Patch(::prost::alloc::string::String),
#[prost(message, tag = "7")]
Custom(super::CustomPattern),
}
}