use std::collections::HashMap;
use std::convert::Into;
use ::protocol::{TInputProtocol, TOutputProtocol};
use super::TProcessor;
pub struct TMultiplexedProcessor {
processors: HashMap<String, Box<TProcessor>>
}
impl TMultiplexedProcessor {
pub fn register_processor<S: Into<String>>(&mut self, service_name: S, processor: Box<TProcessor>) -> bool {
let name = service_name.into();
if self.processors.contains_key(&name) {
false
} else {
self.processors.insert(name, processor);
true
}
}
}
impl TProcessor for TMultiplexedProcessor {
fn process(&mut self, _: &mut TInputProtocol, _: &mut TOutputProtocol) -> ::Result<()> {
unimplemented!()
}
}