/* * Blitz Trading */ package executionserver.controller; import org.apache.mina.common.IdleStatus; import org.apache.mina.common.IoHandlerAdapter; import org.apache.mina.common.IoSession; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * * @author Sylvio Azevedo <sylvio.azevedo@blitz-trading.com> */ public class TextLineHandler extends IoHandlerAdapter { private ExecutionServerController server; public TextLineHandler(ExecutionServerController server) { this.server = server; } private final Logger logger = LoggerFactory.getLogger(getClass()); @Override public void exceptionCaught( IoSession session, Throwable cause ) throws Exception { logger.error(cause.getMessage()); } @Override public void messageReceived( IoSession session, Object message ) throws Exception { new AdminController(server).parse((String) message, session); } @Override public void sessionIdle( IoSession session, IdleStatus status ) throws Exception { System.out.println( "IDLE " + session.getIdleCount( status )); } @Override public void sessionOpened(IoSession session) throws Exception { session.write("Execution Server - Version (" + ExecutionServerController.SERVER_VERSION + "): \r\n"); session.write("------------------------------------------------------------------------------ \r\n"); session.write(" -- Protobuffer acceptor listen on port: " + ExecutionServerController.protobuffPort + "\r\n"); session.write(" -- Administration acceptor listen on port: " + ExecutionServerController.adminPort + "\r\n"); session.write(" -- Server path: " + ExecutionServerController.getServerPath() + "\r\n"); session.write(" -- Server configuration file path: " + ExecutionServerController.configPath + "\r\n"); session.write("------------------------------------------------------------------------------ \r\n"); session.write("Enter [help] to see all available commands: \r\n"); session.write("\r\n\\> "); } }