PushConfig

Struct PushConfig 

Source
#[non_exhaustive]
pub struct PushConfig { pub push_endpoint: String, pub attributes: HashMap<String, String>, pub authentication_method: Option<AuthenticationMethod>, pub wrapper: Option<Wrapper>, /* private fields */ }
Expand description

Configuration for a push delivery endpoint.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§push_endpoint: String

Optional. A URL locating the endpoint to which messages should be pushed. For example, a Webhook endpoint might use <https://example.com/push>.

§attributes: HashMap<String, String>

Optional. Endpoint configuration attributes that can be used to control different aspects of the message delivery.

The only currently supported attribute is x-goog-version, which you can use to change the format of the pushed message. This attribute indicates the version of the data expected by the endpoint. This controls the shape of the pushed message (i.e., its fields and metadata).

If not present during the CreateSubscription call, it will default to the version of the Pub/Sub API used to make such call. If not present in a ModifyPushConfig call, its value will not be changed. GetSubscription calls will always return a valid version, even if the subscription was created without this attribute.

The only supported values for the x-goog-version attribute are:

  • v1beta1: uses the push format defined in the v1beta1 Pub/Sub API.
  • v1 or v1beta2: uses the push format defined in the v1 Pub/Sub API.

For example: attributes { "x-goog-version": "v1" }

§authentication_method: Option<AuthenticationMethod>

An authentication method used by push endpoints to verify the source of push requests. This can be used with push endpoints that are private by default to allow requests only from the Pub/Sub system, for example. This field is optional and should be set only by users interested in authenticated push.

§wrapper: Option<Wrapper>

The format of the delivered message to the push endpoint is defined by the chosen wrapper. When unset, PubsubWrapper is used.

Implementations§

Source§

impl PushConfig

Source

pub fn new() -> Self

Source

pub fn set_push_endpoint<T: Into<String>>(self, v: T) -> Self

Sets the value of push_endpoint.

§Example
let x = PushConfig::new().set_push_endpoint("example");
Source

pub fn set_attributes<T, K, V>(self, v: T) -> Self
where T: IntoIterator<Item = (K, V)>, K: Into<String>, V: Into<String>,

Sets the value of attributes.

§Example
let x = PushConfig::new().set_attributes([
    ("key0", "abc"),
    ("key1", "xyz"),
]);
Source

pub fn set_authentication_method<T: Into<Option<AuthenticationMethod>>>( self, v: T, ) -> Self

Sets the value of authentication_method.

Note that all the setters affecting authentication_method are mutually exclusive.

§Example
use google_cloud_pubsub::model::push_config::OidcToken;
let x = PushConfig::new().set_authentication_method(Some(
    google_cloud_pubsub::model::push_config::AuthenticationMethod::OidcToken(OidcToken::default().into())));
Source

pub fn oidc_token(&self) -> Option<&Box<OidcToken>>

The value of authentication_method if it holds a OidcToken, None if the field is not set or holds a different branch.

Source

pub fn set_oidc_token<T: Into<Box<OidcToken>>>(self, v: T) -> Self

Sets the value of authentication_method to hold a OidcToken.

Note that all the setters affecting authentication_method are mutually exclusive.

§Example
use google_cloud_pubsub::model::push_config::OidcToken;
let x = PushConfig::new().set_oidc_token(OidcToken::default()/* use setters */);
assert!(x.oidc_token().is_some());
Source

pub fn set_wrapper<T: Into<Option<Wrapper>>>(self, v: T) -> Self

Sets the value of wrapper.

Note that all the setters affecting wrapper are mutually exclusive.

§Example
use google_cloud_pubsub::model::push_config::PubsubWrapper;
let x = PushConfig::new().set_wrapper(Some(
    google_cloud_pubsub::model::push_config::Wrapper::PubsubWrapper(PubsubWrapper::default().into())));
Source

pub fn pubsub_wrapper(&self) -> Option<&Box<PubsubWrapper>>

The value of wrapper if it holds a PubsubWrapper, None if the field is not set or holds a different branch.

Source

pub fn set_pubsub_wrapper<T: Into<Box<PubsubWrapper>>>(self, v: T) -> Self

Sets the value of wrapper to hold a PubsubWrapper.

Note that all the setters affecting wrapper are mutually exclusive.

§Example
use google_cloud_pubsub::model::push_config::PubsubWrapper;
let x = PushConfig::new().set_pubsub_wrapper(PubsubWrapper::default()/* use setters */);
assert!(x.pubsub_wrapper().is_some());
assert!(x.no_wrapper().is_none());
Source

pub fn no_wrapper(&self) -> Option<&Box<NoWrapper>>

The value of wrapper if it holds a NoWrapper, None if the field is not set or holds a different branch.

Source

pub fn set_no_wrapper<T: Into<Box<NoWrapper>>>(self, v: T) -> Self

Sets the value of wrapper to hold a NoWrapper.

Note that all the setters affecting wrapper are mutually exclusive.

§Example
use google_cloud_pubsub::model::push_config::NoWrapper;
let x = PushConfig::new().set_no_wrapper(NoWrapper::default()/* use setters */);
assert!(x.no_wrapper().is_some());
assert!(x.pubsub_wrapper().is_none());

Trait Implementations§

Source§

impl Clone for PushConfig

Source§

fn clone(&self) -> PushConfig

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for PushConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for PushConfig

Source§

fn default() -> PushConfig

Returns the “default value” for a type. Read more
Source§

impl Message for PushConfig

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for PushConfig

Source§

fn eq(&self, other: &PushConfig) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for PushConfig

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<L> LayerExt<L> for L

Source§

fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>
where L: Layer<S>,

Applies the layer to a service and wraps it in Layered.
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,