Struct pemmican::Pemmican
[−]
[src]
pub struct Pemmican<S: Send + Sync, E> { pub config: Config, pub shared: Arc<Shared<S>>, // some fields omitted }
A Pemmican server instance.
Fields
config: Config
Methods
impl<S: Send + Sync + 'static, E: Send + Sync + StdError + 'static> Pemmican<S, E>
[src]
fn new(config: Config, initial_state: S) -> Pemmican<S, E>
Create a new pemmican server instance
fn add_route(&mut self, path: &str, method: Method, handler: Handler<S, E>)
Add a route to the server. Routes map a path and method onto a handler. Currently, all routes must be defined and added prior to running the server.
fn plug_in(&mut self, plugin: Arc<Plugin<S, E>>)
Plug in a plugin. Currently we have not yet implemented methods to order or re-order these.
fn run<F>(self, addr: &str, shutdown_signal: F) -> Result<(), Error> where
F: Future<Item = (), Error = ()>,
F: Future<Item = (), Error = ()>,
Run the server. It will run until the shutdown_signal
future completes.
You can use futures::future::empty() to run forever.
Trait Implementations
impl<S: Send + Sync + Default + 'static, E: Send + Sync + StdError + 'static> Default for Pemmican<S, E>
[src]
impl<S: Send + Sync + 'static, E: Send + Sync + StdError + 'static> Service for Pemmican<S, E>
[src]
type Request = Request
Requests handled by the service.
type Response = Response
Responses given by the service.
type Error = Error
Errors produced by the service.
type Future = Box<Future<Item = Self::Response, Error = Self::Error>>
The future response value.
fn call(&self, req: Request) -> Self::Future
Process the request and return the response asynchronously.