public synchronized void addService( String id, int port, Object object ) { if ( logger.isDebugEnabled() ) { logger.debug( " ### Trying to add a service -> " + id + " @ " + this.ip + ":" + port + " >> " + object + " [[ " + (object instanceof MessageReceiverHandlerFactoryService )); } MessageReceiverHandlerFactoryService handlerFactory = ( MessageReceiverHandlerFactoryService ) object; Acceptor acc = this.acceptors.get( port ); MessageReceiverHandler h = handlerFactory.getMessageReceiverHandler(); if ( acc == null ) { acc = factory.newAcceptor(); MultiplexSocket ms = new MultiplexSocket(); if ( logger.isDebugEnabled() ) { logger.debug( " ### Opening new Acceptor for -> " + this.ip + ":" + port + " >> " + object ); } acc.open( new InetSocketAddress( this.ip, port ), ms, this.l ); this.acceptors.put( port, acc ); } else { if ( logger.isDebugEnabled() ) { logger.debug( " ### Found existing Acceptor: " + this.ip + ":" + port + " >> " + object ); } } MultiplexSocket ms = (MultiplexSocket) acc.getMessageReceiverHandler(); ms.getHandlers().put( id, h ); handlerFactory.registerSocketService( this.grid, id, this.ip, port ); }