pub struct ContentAnalyzer { /* private fields */ }Expand description
smart content analyzer for streaming decisions
Implementations§
Source§impl ContentAnalyzer
impl ContentAnalyzer
pub fn new() -> Self
Sourcepub async fn analyze_request(
&self,
request: &JsonRpcRequest,
) -> StreamingAnalysis
pub async fn analyze_request( &self, request: &JsonRpcRequest, ) -> StreamingAnalysis
Analyze request to determine if streaming is beneficial
pub async fn get_stats(&self) -> AnalysisStats
Sourcepub fn should_stream(&self, content: &[u8]) -> bool
pub fn should_stream(&self, content: &[u8]) -> bool
Check if content should be streamed based on size and type
Sourcepub fn detect_optimal_compression_type(&self, content: &[u8]) -> CompressionType
pub fn detect_optimal_compression_type(&self, content: &[u8]) -> CompressionType
Detect optimal compression type for content
Sourcepub fn streaming_threshold(&self) -> usize
pub fn streaming_threshold(&self) -> usize
Get streaming threshold
Trait Implementations§
Source§impl Clone for ContentAnalyzer
impl Clone for ContentAnalyzer
Auto Trait Implementations§
impl !RefUnwindSafe for ContentAnalyzer
impl !UnwindSafe for ContentAnalyzer
impl Freeze for ContentAnalyzer
impl Send for ContentAnalyzer
impl Sync for ContentAnalyzer
impl Unpin for ContentAnalyzer
impl UnsafeUnpin for ContentAnalyzer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
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].