pub struct MiddlewareRegistry { /* private fields */ }
Expand description
Registry for managing IoC-enabled middleware
Implementations§
Source§impl MiddlewareRegistry
impl MiddlewareRegistry
Sourcepub fn new(container: Arc<IocContainer>) -> Self
pub fn new(container: Arc<IocContainer>) -> Self
Create new middleware registry with IoC container
Sourcepub fn register<M>(&mut self, name: &str) -> Result<(), HttpError>where
M: IocMiddleware + 'static,
pub fn register<M>(&mut self, name: &str) -> Result<(), HttpError>where
M: IocMiddleware + 'static,
Register an IoC-enabled middleware type
Sourcepub fn register_factory(
&mut self,
name: &str,
factory: Box<dyn MiddlewareFactory>,
)
pub fn register_factory( &mut self, name: &str, factory: Box<dyn MiddlewareFactory>, )
Register a custom middleware factory
Sourcepub fn create_middleware(
&self,
name: &str,
scope: Option<&ScopeId>,
) -> Result<Arc<dyn Middleware>, HttpError>
pub fn create_middleware( &self, name: &str, scope: Option<&ScopeId>, ) -> Result<Arc<dyn Middleware>, HttpError>
Create middleware instance by name
Sourcepub fn create_middleware_pipeline(
&self,
names: &[&str],
scope: Option<&ScopeId>,
) -> Result<Vec<Arc<dyn Middleware>>, HttpError>
pub fn create_middleware_pipeline( &self, names: &[&str], scope: Option<&ScopeId>, ) -> Result<Vec<Arc<dyn Middleware>>, HttpError>
Create multiple middleware instances by names
Sourcepub fn registered_middleware(&self) -> Vec<String>
pub fn registered_middleware(&self) -> Vec<String>
Get list of registered middleware names
Auto Trait Implementations§
impl Freeze for MiddlewareRegistry
impl !RefUnwindSafe for MiddlewareRegistry
impl Send for MiddlewareRegistry
impl Sync for MiddlewareRegistry
impl Unpin for MiddlewareRegistry
impl !UnwindSafe for MiddlewareRegistry
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