Skip to main content

ProviderClient

Struct ProviderClient 

Source
pub struct ProviderClient<T> { /* private fields */ }

Implementations§

Source§

impl ProviderClient<Channel>

Source

pub async fn connect<D>(dst: D) -> Result<Self, Error>
where D: TryInto<Endpoint>, D::Error: Into<StdError>,

Attempt to create a new client by connecting to a given endpoint.

Source§

impl<T> ProviderClient<T>
where T: GrpcService<Body>, T::Error: Into<StdError>, T::ResponseBody: Body<Data = Bytes> + Send + 'static, <T::ResponseBody as Body>::Error: Into<StdError> + Send,

Source

pub fn new(inner: T) -> Self

Source

pub fn with_origin(inner: T, origin: Uri) -> Self

Source

pub fn with_interceptor<F>( inner: T, interceptor: F, ) -> ProviderClient<InterceptedService<T, F>>
where F: Interceptor, T::ResponseBody: Default, T: Service<Request<Body>, Response = Response<<T as GrpcService<Body>>::ResponseBody>>, <T as Service<Request<Body>>>::Error: Into<StdError> + Send + Sync,

Source

pub fn send_compressed(self, encoding: CompressionEncoding) -> Self

Compress requests with the given encoding.

This requires the server to support it otherwise it might respond with an error.

Source

pub fn accept_compressed(self, encoding: CompressionEncoding) -> Self

Enable decompressing responses.

Source

pub fn max_decoding_message_size(self, limit: usize) -> Self

Limits the maximum size of a decoded message.

Default: 4MB

Source

pub fn max_encoding_message_size(self, limit: usize) -> Self

Limits the maximum size of an encoded message.

Default: usize::MAX

Source

pub async fn get_metadata( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

GetMetadata returns upfront information about server capabilities and supported resource types without requiring the server to instantiate all schema information, which may be memory intensive. This method is CURRENTLY UNUSED and it serves mostly for convenience of code generation inside of terraform-plugin-mux.

Source

pub async fn get_provider_schema( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

GetSchema returns schema information for the provider, data resources, and managed resources.

Source

pub async fn validate_provider_config( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn validate_resource_config( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn validate_data_resource_config( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn upgrade_resource_state( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn get_resource_identity_schemas( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

GetResourceIdentitySchemas returns the identity schemas for all managed resources.

Source

pub async fn upgrade_resource_identity( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

UpgradeResourceIdentityData should return the upgraded resource identity data for a managed resource type.

Source

pub async fn configure_provider( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

////// One-time initialization, called before other functions below

Source

pub async fn read_resource( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

////// Managed Resource Lifecycle

Source

pub async fn plan_resource_change( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn apply_resource_change( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn import_resource_state( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn move_resource_state( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn read_data_source( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn generate_resource_config( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn validate_ephemeral_resource_config( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

////// Ephemeral Resource Lifecycle

Source

pub async fn open_ephemeral_resource( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn renew_ephemeral_resource( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn close_ephemeral_resource( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn list_resource( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Streaming<Event>>, Status>

///// List

Source

pub async fn validate_list_resource_config( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn get_functions( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

GetFunctions returns the definitions of all functions.

Source

pub async fn call_function( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

////// Provider-contributed Functions

Source

pub async fn validate_state_store_config( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

ValidateStateStoreConfig performs configuration validation

Source

pub async fn configure_state_store( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

ConfigureStateStore configures the state store, such as S3 connection in the context of already configured provider

Source

pub async fn read_state_bytes( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Streaming<Response>>, Status>

ReadStateBytes streams byte chunks of a given state file from a state store

Source

pub async fn write_state_bytes( &mut self, request: impl IntoStreamingRequest<Message = RequestChunk>, ) -> Result<Response<Response>, Status>

WriteStateBytes streams byte chunks of a given state file into a state store

Source

pub async fn lock_state( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

LockState locks a given state (i.e. CE workspace)

Source

pub async fn unlock_state( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

UnlockState unlocks a given state (i.e. CE workspace)

Source

pub async fn get_states( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

GetStates returns a list of all states (i.e. CE workspaces) managed by a given state store

Source

pub async fn delete_state( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

DeleteState instructs a given state store to delete a specific state (i.e. a CE workspace)

Source

pub async fn plan_action( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

////// Actions

Source

pub async fn invoke_action( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Streaming<Event>>, Status>

Source

pub async fn validate_action_config( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

Source

pub async fn stop_provider( &mut self, request: impl IntoRequest<Request>, ) -> Result<Response<Response>, Status>

////// Graceful Shutdown

Trait Implementations§

Source§

impl<T: Clone> Clone for ProviderClient<T>

Source§

fn clone(&self) -> ProviderClient<T>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl<T: Debug> Debug for ProviderClient<T>

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> !Freeze for ProviderClient<T>

§

impl<T> RefUnwindSafe for ProviderClient<T>
where Grpc<T>: RefUnwindSafe,

§

impl<T> Send for ProviderClient<T>
where Grpc<T>: Send,

§

impl<T> Sync for ProviderClient<T>
where Grpc<T>: Sync,

§

impl<T> Unpin for ProviderClient<T>
where Grpc<T>: Unpin,

§

impl<T> UnsafeUnpin for ProviderClient<T>
where Grpc<T>: UnsafeUnpin,

§

impl<T> UnwindSafe for ProviderClient<T>
where Grpc<T>: UnwindSafe,

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> FromRef<T> for T
where T: Clone,

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
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> 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 = !

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

fn try_from(value: U) -> Result<T, !>

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<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