Skip to main content

RequestChannelService

Struct RequestChannelService 

Source
pub struct RequestChannelService { /* private fields */ }
Expand description

A Service sending Requests over a RequestSender channel

Implementations§

Trait Implementations§

Source§

impl Clone for RequestChannelService

Source§

fn clone(&self) -> RequestChannelService

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 RequestChannelService

Source§

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

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

impl<State> Service<State, Request> for RequestChannelService
where State: Send + Sync + 'static,

Source§

type Response = Response

The type of response returned by the service.
Source§

type Error = ServiceError

The type of error returned by the service.
Source§

async fn serve( &self, ctx: Context<State>, req: Request, ) -> Result<Self::Response, Self::Error>

Serve a response or error for the given request, using the given context.
Source§

fn boxed(self) -> BoxService<S, Request, Self::Response, Self::Error>

Box this service to allow for dynamic dispatch.
Source§

impl Storage for RequestChannelService

Source§

fn register_broker<'life0, 'async_trait>( &'life0 self, broker_registration: BrokerRegistrationRequest, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

On startup a broker will register with storage.
Source§

fn incremental_alter_resource<'life0, 'async_trait>( &'life0 self, resource: AlterConfigsResource, ) -> Pin<Box<dyn Future<Output = Result<AlterConfigsResourceResponse>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Incrementally alter a resource on this storage.
Source§

fn create_topic<'life0, 'async_trait>( &'life0 self, topic: CreatableTopic, validate_only: bool, ) -> Pin<Box<dyn Future<Output = Result<Uuid>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Create a topic on this storage.
Source§

fn delete_records<'life0, 'life1, 'async_trait>( &'life0 self, topics: &'life1 [DeleteRecordsTopic], ) -> Pin<Box<dyn Future<Output = Result<Vec<DeleteRecordsTopicResult>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Delete records on this storage.
Source§

fn delete_topic<'life0, 'life1, 'async_trait>( &'life0 self, topic: &'life1 TopicId, ) -> Pin<Box<dyn Future<Output = Result<ErrorCode>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Delete a topic from this storage.
Source§

fn brokers<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<DescribeClusterBroker>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Query the brokers registered with this storage.
Source§

fn produce<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, transaction_id: Option<&'life1 str>, topition: &'life2 Topition, batch: Batch, ) -> Pin<Box<dyn Future<Output = Result<i64>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Produce a deflated batch to this storage.
Source§

fn fetch<'life0, 'life1, 'async_trait>( &'life0 self, topition: &'life1 Topition, offset: i64, min_bytes: u32, max_bytes: u32, isolation: IsolationLevel, ) -> Pin<Box<dyn Future<Output = Result<Vec<Batch>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Fetch deflated batches from storage.
Source§

fn offset_stage<'life0, 'life1, 'async_trait>( &'life0 self, topition: &'life1 Topition, ) -> Pin<Box<dyn Future<Output = Result<OffsetStage>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Query the offset stage for a topic partition.
Source§

fn list_offsets<'life0, 'life1, 'async_trait>( &'life0 self, isolation_level: IsolationLevel, offsets: &'life1 [(Topition, ListOffset)], ) -> Pin<Box<dyn Future<Output = Result<Vec<(Topition, ListOffsetResponse)>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Query the offsets for one or more topic partitions.
Source§

fn offset_commit<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, group_id: &'life1 str, retention_time_ms: Option<Duration>, offsets: &'life2 [(Topition, OffsetCommitRequest)], ) -> Pin<Box<dyn Future<Output = Result<Vec<(Topition, ErrorCode)>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Commit offsets for one or more topic partitions in a consumer group.
Source§

fn committed_offset_topitions<'life0, 'life1, 'async_trait>( &'life0 self, group_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<BTreeMap<Topition, i64>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Fetch all committed offsets in a consumer group.
Source§

fn offset_fetch<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, group_id: Option<&'life1 str>, topics: &'life2 [Topition], require_stable: Option<bool>, ) -> Pin<Box<dyn Future<Output = Result<BTreeMap<Topition, i64>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Fetch committed offsets for one or more topic partitions in a consumer group.
Source§

fn metadata<'life0, 'life1, 'async_trait>( &'life0 self, topics: Option<&'life1 [TopicId]>, ) -> Pin<Box<dyn Future<Output = Result<MetadataResponse>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Query broker and topic metadata.
Source§

fn describe_config<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, name: &'life1 str, resource: ConfigResource, keys: Option<&'life2 [String]>, ) -> Pin<Box<dyn Future<Output = Result<DescribeConfigsResult>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Query the configuration of a resource in this storage.
Source§

fn describe_topic_partitions<'life0, 'life1, 'async_trait>( &'life0 self, topics: Option<&'life1 [TopicId]>, partition_limit: i32, cursor: Option<Topition>, ) -> Pin<Box<dyn Future<Output = Result<Vec<DescribeTopicPartitionsResponseTopic>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Describe the topic partitions found in this storage.
Source§

fn list_groups<'life0, 'life1, 'async_trait>( &'life0 self, states_filter: Option<&'life1 [String]>, ) -> Pin<Box<dyn Future<Output = Result<Vec<ListedGroup>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Query available groups optionally with a state filter.
Source§

fn delete_groups<'life0, 'life1, 'async_trait>( &'life0 self, group_ids: Option<&'life1 [String]>, ) -> Pin<Box<dyn Future<Output = Result<Vec<DeletableGroupResult>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Delete one or more groups from storage.
Source§

fn describe_groups<'life0, 'life1, 'async_trait>( &'life0 self, group_ids: Option<&'life1 [String]>, include_authorized_operations: bool, ) -> Pin<Box<dyn Future<Output = Result<Vec<NamedGroupDetail>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Describe the groups found in this storage.
Source§

fn update_group<'life0, 'life1, 'async_trait>( &'life0 self, group_id: &'life1 str, detail: GroupDetail, version: Option<Version>, ) -> Pin<Box<dyn Future<Output = Result<Version, UpdateError<GroupDetail>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Conditionally update the state of a group in this storage.
Source§

fn init_producer<'life0, 'life1, 'async_trait>( &'life0 self, transaction_id: Option<&'life1 str>, transaction_timeout_ms: i32, producer_id: Option<i64>, producer_epoch: Option<i16>, ) -> Pin<Box<dyn Future<Output = Result<ProducerIdResponse>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Initialise a transactional or idempotent producer in this storage.
Source§

fn txn_add_offsets<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, transaction_id: &'life1 str, producer_id: i64, producer_epoch: i16, group_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<ErrorCode>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Add offsets to a transaction for a producer.
Source§

fn txn_add_partitions<'life0, 'async_trait>( &'life0 self, partitions: TxnAddPartitionsRequest, ) -> Pin<Box<dyn Future<Output = Result<TxnAddPartitionsResponse>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Add partitions to a transaction.
Source§

fn txn_offset_commit<'life0, 'async_trait>( &'life0 self, offsets: TxnOffsetCommitRequest, ) -> Pin<Box<dyn Future<Output = Result<Vec<TxnOffsetCommitResponseTopic>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Commit an offset within a transaction.
Source§

fn txn_end<'life0, 'life1, 'async_trait>( &'life0 self, transaction_id: &'life1 str, producer_id: i64, producer_epoch: i16, committed: bool, ) -> Pin<Box<dyn Future<Output = Result<ErrorCode>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Commit or abort a running transaction.
Source§

fn maintain<'life0, 'async_trait>( &'life0 self, now: SystemTime, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Run periodic maintenance on this storage.
Source§

fn cluster_id<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source§

fn node<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<i32>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source§

fn advertised_listener<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Url>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source§

fn delete_user_scram_credential<'life0, 'life1, 'async_trait>( &'life0 self, user: &'life1 str, mechanism: ScramMechanism, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source§

fn upsert_user_scram_credential<'life0, 'life1, 'async_trait>( &'life0 self, user: &'life1 str, mechanism: ScramMechanism, credential: ScramCredential, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source§

fn user_scram_credential<'life0, 'life1, 'async_trait>( &'life0 self, user: &'life1 str, mechanism: ScramMechanism, ) -> Pin<Box<dyn Future<Output = Result<Option<ScramCredential>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source§

fn ping<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

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> Fake for T

Source§

fn fake<U>(&self) -> U
where Self: FakeBase<U>,

Source§

fn fake_with_rng<U, R>(&self, rng: &mut R) -> U
where R: Rng + ?Sized, Self: FakeBase<U>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FutureExt for T

Source§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
Source§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

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

Source§

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

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

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

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
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> Same for T

Source§

type Output = T

Should always be Self
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