package org.projectodd.polyglot.stomp;
import javax.net.ssl.SSLContext;
import org.jboss.msc.inject.Injector;
import org.jboss.msc.service.StartContext;
import org.jboss.msc.service.StartException;
import org.jboss.msc.service.StopContext;
import org.jboss.msc.value.InjectedValue;
import org.projectodd.stilts.stomp.server.SecureConnector;
public class SecureStompConnectorService extends AbstractStompConnectorService {
@Override
public void start(StartContext context) throws StartException {
this.connector = new SecureConnector( socketBindingInjector.getValue().getSocketAddress(), sslContextInjector.getValue() );
this.connector.setServer( this.stompletServerInjector.getValue() );
try {
this.connector.start();
} catch (Exception e) {
context.failed( new StartException( e ) );
}
}
@Override
public void stop(StopContext context) {
try {
this.connector.stop();
} catch (Exception e) {
e.printStackTrace();
}
}
public Injector<SSLContext> getSSLContextInjector() {
return this.sslContextInjector;
}
private InjectedValue<SSLContext> sslContextInjector = new InjectedValue<SSLContext>();
}