pub struct HarnessUsageHook<S>where
S: AgentEventSink,{ /* private fields */ }Expand description
Broker Hook that owns the complete Harness usage pipeline.
Implementations§
Source§impl<S> HarnessUsageHook<S>where
S: AgentEventSink,
impl<S> HarnessUsageHook<S>where
S: AgentEventSink,
Sourcepub fn with_runtime_config_and_event_sink(
config: HarnessUsageHookConfig,
runtime_config: HooksRuntimeConfig,
sink: S,
) -> Self
pub fn with_runtime_config_and_event_sink( config: HarnessUsageHookConfig, runtime_config: HooksRuntimeConfig, sink: S, ) -> Self
Creates the unified pipeline with shared policy and event delivery.
Trait Implementations§
Source§impl<S> MitmHook for HarnessUsageHook<S>where
S: AgentEventSink,
impl<S> MitmHook for HarnessUsageHook<S>where
S: AgentEventSink,
Source§fn matches(&self, _flow: &FlowContext) -> bool
fn matches(&self, _flow: &FlowContext) -> bool
Returns whether this hook wants to observe a flow. Read more
Source§fn on_http_exchange<'a>(&'a self, exchange: &'a HttpExchange) -> HookFuture<'a>
fn on_http_exchange<'a>(&'a self, exchange: &'a HttpExchange) -> HookFuture<'a>
Observes one complete proxied HTTP exchange. Read more
Source§fn on_websocket_message<'a>(
&'a self,
message: &'a WebSocketMessage,
) -> HookFuture<'a>
fn on_websocket_message<'a>( &'a self, message: &'a WebSocketMessage, ) -> HookFuture<'a>
Observes one decoded WebSocket message after a successful HTTP 101. Read more
Auto Trait Implementations§
impl<S> !Freeze for HarnessUsageHook<S>
impl<S> !RefUnwindSafe for HarnessUsageHook<S>
impl<S> Send for HarnessUsageHook<S>where
EventDelivery<S>: Send,
impl<S> Sync for HarnessUsageHook<S>where
EventDelivery<S>: Sync,
impl<S> Unpin for HarnessUsageHook<S>where
EventDelivery<S>: Unpin,
impl<S> UnsafeUnpin for HarnessUsageHook<S>where
EventDelivery<S>: UnsafeUnpin,
impl<S> UnwindSafe for HarnessUsageHook<S>where
EventDelivery<S>: UnwindSafe,
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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