swindon 0.7.8

An HTTP edge (frontend) server with smart websockets support
use futures::sync::mpsc::{unbounded, UnboundedSender, UnboundedReceiver};

use chat::{ConnectionMessage};

pub type Receiver = UnboundedReceiver<ConnectionMessage>;

#[derive(Clone)]
pub struct ConnectionSender {
    sender: UnboundedSender<ConnectionMessage>,
}

impl ConnectionSender {
    pub fn new() -> (ConnectionSender, Receiver) {
        let (tx, rx) = unbounded();
        (ConnectionSender {
            sender: tx,
        }, rx)
    }
    pub fn send(&self, msg: ConnectionMessage) {
        self.sender.unbounded_send(msg)
        .map_err(|e| debug!("Error sending connection message: {}. \
            usually these means connection has been closed to soon", e)).ok();
    }
}