pub struct RouterBuilder { /* private fields */ }Expand description
A builder to construct axum::Route of CometD server.
Implementations§
Source§impl RouterBuilder
impl RouterBuilder
Sourcepub fn build<CustomData>(
self,
context: Arc<LongPollingServiceContext<(), CustomData>>,
) -> Router
pub fn build<CustomData>( self, context: Arc<LongPollingServiceContext<(), CustomData>>, ) -> Router
Return a axum::Router.
§Example
use std::sync::Arc;
use axum_cometd::RouterBuilder;
let app = RouterBuilder::new().build::<()>(Arc::clone(&context));Sourcepub fn build_with_additional_data<AdditionalData, CustomData>(
self,
context: Arc<LongPollingServiceContext<AdditionalData, CustomData>>,
) -> Router
pub fn build_with_additional_data<AdditionalData, CustomData>( self, context: Arc<LongPollingServiceContext<AdditionalData, CustomData>>, ) -> Router
Return a axum::Router.
§Example
use std::sync::Arc;
use axum::Extension;
use axum_cometd::RouterBuilder;
#[derive(Clone)]
struct ContextData {
server_name: String,
}
let app = RouterBuilder::new()
.build_with_additional_data(Arc::clone(&context))
.layer(Extension(ContextData {
server_name: std::env::var("SERVER_NAME").unwrap_or_else(|_| "Skalica".to_owned()),
}));Sourcepub const fn subscribe_base_path(self, path: &'static str) -> Self
pub const fn subscribe_base_path(self, path: &'static str) -> Self
Set subscribe base-path for routers.
§Example
use std::sync::Arc;
use axum_cometd::RouterBuilder;
let app = RouterBuilder::new()
// Ex: `/` -> `/bar`
.subscribe_base_path("/bar")
.build::<()>(Arc::clone(&context));Sourcepub const fn handshake_base_path(self, path: &'static str) -> Self
pub const fn handshake_base_path(self, path: &'static str) -> Self
Set handshake base-path for routers.
§Example
use std::sync::Arc;
use axum_cometd::RouterBuilder;
let app = RouterBuilder::new()
// Ex: `/handshake` -> `/bar/handshake`
.handshake_base_path("/bar")
.build::<()>(Arc::clone(&context));Sourcepub const fn connect_base_path(self, path: &'static str) -> Self
pub const fn connect_base_path(self, path: &'static str) -> Self
Set connect base-path for routers.
§Example
use std::sync::Arc;
use axum_cometd::RouterBuilder;
let app = RouterBuilder::new()
// Ex: `/connect` -> `/bar/connect`
.connect_base_path("/bar")
.build::<()>(Arc::clone(&context));Sourcepub const fn disconnect_base_path(self, path: &'static str) -> Self
pub const fn disconnect_base_path(self, path: &'static str) -> Self
Set disconnect base-path for routers.
§Example
use std::sync::Arc;
use axum_cometd::RouterBuilder;
let app = RouterBuilder::new()
// Ex: `/disconnect` -> `/bar/disconnect`
.disconnect_base_path("/bar")
.build::<()>(Arc::clone(&context));Trait Implementations§
Source§impl Debug for RouterBuilder
impl Debug for RouterBuilder
Auto Trait Implementations§
impl Freeze for RouterBuilder
impl RefUnwindSafe for RouterBuilder
impl Send for RouterBuilder
impl Sync for RouterBuilder
impl Unpin for RouterBuilder
impl UnwindSafe for RouterBuilder
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