@Override protected void serverStart() throws RemotingException { acceptor = new NioSocketAcceptor(); //TCP Acceptor // acceptor.getFilterChain().addFirst("logging", new MinaLoggingFilter()); acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new MinaCodecFactory(getCodec()))); acceptor.getFilterChain().addLast("mdc", new MdcInjectionFilter()); acceptor.setHandler(new MinaHandler(this)); IoSessionConfig cfg = acceptor.getSessionConfig(); cfg.setReaderIdleTime(remotingServerConfig.getReaderIdleTimeSeconds()); cfg.setWriterIdleTime(remotingServerConfig.getWriterIdleTimeSeconds()); cfg.setBothIdleTime(remotingServerConfig.getServerChannelMaxIdleTimeSeconds()); bindAddress = new InetSocketAddress(remotingServerConfig.getListenPort()); try { acceptor.bind(bindAddress); } catch (IOException e) { throw new RemotingException("Start Mina server error", e); } }
@Override protected void serverStart() throws RemotingException { acceptor = new NioSocketAcceptor(); //TCP Acceptor // acceptor.getFilterChain().addFirst("logging", new MinaLoggingFilter()); acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new MinaCodecFactory(getCodec()))); acceptor.getFilterChain().addLast("mdc", new MdcInjectionFilter()); acceptor.setHandler(new MinaHandler(this)); IoSessionConfig cfg = acceptor.getSessionConfig(); cfg.setReaderIdleTime(remotingServerConfig.getReaderIdleTimeSeconds()); cfg.setWriterIdleTime(remotingServerConfig.getWriterIdleTimeSeconds()); cfg.setBothIdleTime(remotingServerConfig.getServerChannelMaxIdleTimeSeconds()); bindAddress = new InetSocketAddress(remotingServerConfig.getListenPort()); try { acceptor.bind(bindAddress); } catch (IOException e) { throw new RemotingException("Start Mina server error", e); } }
/** * Default constructor * * @param host * @param port * @param handler */ public TcpIpServer(final String host, final int port, final IoHandler handler) { this(host, port); this.acceptor.setHandler(handler); }
public void setHandler(final IoHandler handler) { this.acceptor.setHandler(handler); }
protected IoAcceptor getAcceptor() { IoAcceptor acceptor; synchronized (acceptorHolder) { acceptor = acceptorHolder.get(); if (acceptor != null) { return acceptor; } acceptor = createAcceptor(); acceptor.setHandler(this); acceptorHolder.set(acceptor); } log.debug("Created IoAcceptor"); return acceptor; }
public void start(int port) throws Exception { this.port = port; acceptor = new NioSocketAcceptor(); acceptor.getFilterChain().addLast("codec", new HttpServerCodec()); acceptor.setHandler(new HttpServerHandle()); acceptor.bind(new InetSocketAddress(port)); logger.error("---------> http server start at port:{}", port); }
/** * Start the TcpIpServer * * @throws IOException */ public final synchronized void start() throws IOException { if (this.acceptor != null) { if (this.acceptor.getHandler() == null) { this.acceptor.setHandler(new TcpIpHandlerAdapter()); } LaunchingMessageKind.ITCPIP0001.format(this.host, this.port); this.acceptor.bind(new InetSocketAddress(this.host, this.port)); } }
public synchronized void open(InetSocketAddress address, MessageReceiverHandler handler, SystemEventListener systemEventListener) { if ( logger.isInfoEnabled() ){ logger.info("(" + Thread.currentThread().getId() + ")"+Thread.currentThread().getName() +" ### Binding a new SocketAcceptor to "+address.getHostName()+":"+address.getPort()); } if ( this.acceptor == null ) { acceptor = new NioSocketAcceptor( 16 ); acceptor.getFilterChain().addLast( "codec", new ProtocolCodecFilter( new ObjectSerializationCodecFactory() ) ); acceptor.getSessionConfig().setReadBufferSize( 2048 ); acceptor.getSessionConfig().setIdleTime( IdleStatus.BOTH_IDLE, 100 ); } this.handler = handler; acceptor.setHandler( new MinaIoHandler( systemEventListener, handler ) ); try { acceptor.bind( address ); } catch ( IOException e ) { throw new RuntimeException( "(" + Thread.currentThread().getId() + ")"+Thread.currentThread().getName() +"Unable to bind Mina Acceptor", e ); } }
public void start() throws Exception { acceptor = new NioSocketAcceptor(); acceptor.getFilterChain().addLast("codec", new HttpServerCodec()); acceptor.setHandler(new HttpServerHandle()); acceptor.bind(new InetSocketAddress(port)); }
@Override public synchronized void start() { if (acceptor == null) { checkConfig(); acceptor = createAcceptor(); configure(acceptor); final SessionFactory handler = getSessionFactory(); handler.setServer(this); acceptor.setHandler(handler); try { acceptor.bind(listen); } catch (IOException e) { throw new IllegalStateException("Cannot bind to " + addressList(), e); } log.info("Started Gerrit SSHD on " + addressList()); } }
@Override public synchronized void start() { if (acceptor == null) { checkConfig(); acceptor = createAcceptor(); configure(acceptor); final SessionFactory handler = getSessionFactory(); handler.setServer(this); acceptor.setHandler(handler); try { acceptor.bind(listen); } catch (IOException e) { throw new IllegalStateException("Cannot bind to " + addressList(), e); } log.info("Started Gerrit SSHD on " + addressList()); } }
/** * 初始化tcp服务器 * * @param ip * 监听ip 0.0.0.0最好 * @param port * 监听端口 * @param HandlerClass * 继承MinaHandler的类 * @param useTcpMonitor * 是否输出监控日志 * @param log * 日志可以为null * @throws Throwable */ public static void init(String ip, int port, Class<?> HandlerClass, boolean useTcpMonitor, ILog log) throws Exception { MinaConfig.USE_TCP_MONITOR = useTcpMonitor; MinaConfig.log = log; // 初始化 ioAcceptor = new NioSocketAcceptor(); // 设置编码解码 ioAcceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new MinaEncoder(), new MinaDecoder())); // 设置处理函数实现IoHandler接口 MinaHandler minaHandler = (MinaHandler) HandlerClass.newInstance(); ioAcceptor.setHandler(minaHandler); // 绑定ip地址与端口 ioAcceptor.bind(new InetSocketAddress(ip, port)); } }
private IoAcceptor getIoAcceptor(AcceptorSocketDescriptor socketDescriptor, boolean init) throws ConfigError { int transportType = ProtocolFactory.getAddressTransportType(socketDescriptor.getAddress()); AcceptorSessionProvider sessionProvider = sessionProviders. computeIfAbsent(socketDescriptor.getAddress(), k -> new DefaultAcceptorSessionProvider(socketDescriptor.getAcceptedSessions())); IoAcceptor ioAcceptor = ioAcceptors.get(socketDescriptor); if (ioAcceptor == null && init) { ioAcceptor = ProtocolFactory.createIoAcceptor(transportType); try { SessionSettings settings = getSettings(); ioAcceptor.setHandler(new AcceptorIoHandler(sessionProvider, new NetworkingOptions( settings.getDefaultProperties()), getEventHandlingStrategy())); } catch (FieldConvertError e) { throw new ConfigError(e); } ioAcceptors.put(socketDescriptor, ioAcceptor); } return ioAcceptor; }
private IoAcceptor getIoAcceptor(AcceptorSocketDescriptor socketDescriptor, boolean init) throws ConfigError { int transportType = ProtocolFactory.getAddressTransportType(socketDescriptor.getAddress()); AcceptorSessionProvider sessionProvider = sessionProviders.get(socketDescriptor.getAddress()); if (sessionProvider == null) { sessionProvider = new DefaultAcceptorSessionProvider(socketDescriptor.getAcceptedSessions()); sessionProviders.put(socketDescriptor.getAddress(), sessionProvider); } IoAcceptor ioAcceptor = ioAcceptors.get(socketDescriptor); if (ioAcceptor == null && init) { ioAcceptor = ProtocolFactory.createIoAcceptor(transportType); try { SessionSettings settings = getSettings(); ioAcceptor.setHandler(new AcceptorIoHandler(sessionProvider, new NetworkingOptions( settings.getDefaultProperties()), getEventHandlingStrategy())); } catch (FieldConvertError e) { throw new ConfigError(e); } ioAcceptors.put(socketDescriptor, ioAcceptor); } return ioAcceptor; }
private IoAcceptor getIoAcceptor(AcceptorSocketDescriptor socketDescriptor, boolean init) throws ConfigError { int transportType = ProtocolFactory.getAddressTransportType(socketDescriptor.getAddress()); AcceptorSessionProvider sessionProvider = sessionProviders. computeIfAbsent(socketDescriptor.getAddress(), k -> new DefaultAcceptorSessionProvider(socketDescriptor.getAcceptedSessions())); IoAcceptor ioAcceptor = ioAcceptors.get(socketDescriptor); if (ioAcceptor == null && init) { ioAcceptor = ProtocolFactory.createIoAcceptor(transportType); try { SessionSettings settings = getSettings(); ioAcceptor.setHandler(new AcceptorIoHandler(sessionProvider, new NetworkingOptions( settings.getDefaultProperties()), getEventHandlingStrategy())); } catch (FieldConvertError e) { throw new ConfigError(e); } ioAcceptors.put(socketDescriptor, ioAcceptor); } return ioAcceptor; }
@Override public void run() { acceptor = new NioSocketAcceptor(); acceptor.getFilterChain().addLast("logger", new LoggingFilter()); acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new ObjectSerializationCodecFactory())); acceptor.setHandler(new MinaServerHandler()); acceptor.getSessionConfig().setReadBufferSize(mConfig.getReadBufferSize()); //10秒无操作释放Session acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, 10); try { acceptor.bind(new InetSocketAddress(mConfig.getPort())); } catch (IOException e) { e.printStackTrace(); } Log.d(TAG,acceptor.getLocalAddress().toString()); }
public static void main(String[] args) throws IOException { IoAcceptor acceptor = new NioSocketAcceptor(); // acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, IDELTIMEOUT); acceptor.getFilterChain().addLast("logger", new LoggingFilter()); acceptor.getFilterChain().addLast("myfliter", new MyFilter()); acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new CommandCodecFactory("UTF-8"))); KeepAliveMessageFactoryImpl kamfi = new KeepAliveMessageFactoryImpl(); KeepAliveFilter kaf = new KeepAliveFilter(kamfi, IdleStatus.BOTH_IDLE); /** 是否回发 */ kaf.setForwardEvent(true); acceptor.getFilterChain().addLast("heart", kaf); acceptor.setHandler(new CalculatorHandler()); acceptor.bind(new InetSocketAddress(PORT)); log.debug("socket通信服务端已启动,端口是" + PORT); }
public void start() throws IOException { acceptor = new NioSocketAcceptor(); acceptor.getFilterChain().addLast( "logger", new LoggingFilter() ); acceptor.getFilterChain().addLast( "codec", new ProtocolCodecFilter( new ObjectSerializationCodecFactory() ) ); acceptor.setHandler( handler ); acceptor.getSessionConfig().setReadBufferSize( 2048 ); acceptor.getSessionConfig().setIdleTime( IdleStatus.BOTH_IDLE, 10 ); ((SocketSessionConfig) acceptor.getSessionConfig()).setSoLinger(0); acceptor.bind( new InetSocketAddress( localInterface, port ) ); running = true; }
/** * <p>startServer</p> * * @throws java.lang.Exception if any. */ public void startServer() throws Exception { m_acceptor = new NioSocketAcceptor(); m_acceptor.getFilterChain().addLast("logger", new LoggingFilter()); m_acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new TextLineCodecFactory(StandardCharsets.UTF_8))); m_acceptor.setHandler(getServerHandler()); m_acceptor.getSessionConfig().setReadBufferSize(getBufferSize()); m_acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, getIdleTime()); ((NioSocketAcceptor) m_acceptor).setReuseAddress(true); m_acceptor.bind(new InetSocketAddress(getPort())); }
@Override protected void serverStart() throws RemotingException { acceptor = new NioSocketAcceptor(); //TCP Acceptor // acceptor.getFilterChain().addFirst("logging", new MinaLoggingFilter()); acceptor.getFilterChain().addLast("codec", new ProtocolCodecFilter(new MinaCodecFactory(getCodec()))); acceptor.getFilterChain().addLast("mdc", new MdcInjectionFilter()); acceptor.setHandler(new MinaHandler(this)); IoSessionConfig cfg = acceptor.getSessionConfig(); cfg.setReaderIdleTime(remotingServerConfig.getReaderIdleTimeSeconds()); cfg.setWriterIdleTime(remotingServerConfig.getWriterIdleTimeSeconds()); cfg.setBothIdleTime(remotingServerConfig.getServerChannelMaxIdleTimeSeconds()); bindAddress = new InetSocketAddress(remotingServerConfig.getListenPort()); try { acceptor.bind(bindAddress); } catch (IOException e) { throw new RemotingException("Start Mina server error", e); } }