@Override public int reactorChannelEventCallback(ReactorChannelEvent event) ReactorChannel reactorChannel = event.reactorChannel(); ProviderSession provSession = (ProviderSession)reactorChannel.userSpecObj(); switch(event.eventType()) + event.reactorChannel().oldSelectableChannel() + " New Channel: " + event.reactorChannel().selectableChannel()); SelectionKey key = event.reactorChannel().oldSelectableChannel().keyFor(_selector); key.cancel(); event.reactorChannel().selectableChannel().register(_selector, SelectionKey.OP_READ, event.reactorChannel());
ChannelInfo chnlInfo = (ChannelInfo)event.reactorChannel().userSpecObj(); switch(event.eventType()) event.reactorChannel().selectableChannel().register(selector, SelectionKey.OP_READ, event.reactorChannel()); if (event.reactorChannel().ioctl(IoctlCodes.SYSTEM_WRITE_BUFFERS, sendBufSize, errorInfo) != TransportReturnCodes.SUCCESS) if (event.reactorChannel().ioctl(IoctlCodes.SYSTEM_READ_BUFFERS, rcvBufSize, errorInfo) != TransportReturnCodes.SUCCESS) + event.reactorChannel().oldSelectableChannel() + " New Channel: " + event.reactorChannel().selectableChannel()); SelectionKey key = event.reactorChannel().oldSelectableChannel().keyFor(selector); if (key != null) key.cancel(); event.reactorChannel().selectableChannel().register(selector, SelectionKey.OP_READ, event.reactorChannel()); chnlInfo.reactorChannel = event.reactorChannel(); if (event.reactorChannel().selectableChannel() != null) System.out.println("\nConnection down reconnecting: Channel " + event.reactorChannel().selectableChannel()); else System.out.println("\nConnection down reconnecting");
/** * Creates a new Reactor object. * * @return the reactor channel event */ static ReactorChannelEvent createReactorChannelEvent() { ReactorChannelEvent reactorChannelEvent = (ReactorChannelEvent)_reactorChannelEventPool.poll(); if(reactorChannelEvent == null) { reactorChannelEvent = new ReactorChannelEvent(); _reactorChannelEventPool.updatePool(reactorChannelEvent); } else { reactorChannelEvent.clear(); } return reactorChannelEvent; }
private int sendChannelEventCallback(int eventType, ReactorChannel reactorChannel, ReactorErrorInfo errorInfo) { ReactorChannelEvent reactorChannelEvent = ReactorFactory.createReactorChannelEvent(); reactorChannelEvent.reactorChannel(reactorChannel); reactorChannelEvent.eventType(eventType); populateErrorInfo(reactorChannelEvent.errorInfo(), errorInfo.code(), errorInfo.location(), errorInfo.error().text()); int retval = reactorChannel.role().channelEventCallback().reactorChannelEventCallback(reactorChannelEvent); reactorChannelEvent.returnToPool(); return retval; }
void processChannelEvent(ReactorChannelEvent reactorChannelEvent) { switch ( reactorChannelEvent.eventType() ) { case ReactorChannelEventTypes.CHANNEL_DOWN: case ReactorChannelEventTypes.CHANNEL_DOWN_RECONNECTING: notifyClosedRecoverableStatusMessage(); break; default: break; } }
+ ++_channelEventCount + " event=" + event.toString()); ReactorChannel rc = event.reactorChannel(); int eventType = event.eventType();
_event = new ReactorChannelEvent(); ((ReactorChannelEvent)_event).eventType(((ReactorChannelEvent)event).eventType()); break;
@Override void processChannelEvent( ReactorChannelEvent reactorChannelEvent) { switch ( reactorChannelEvent.eventType() ) { case ReactorChannelEventTypes.CHANNEL_DOWN: case ReactorChannelEventTypes.CHANNEL_DOWN_RECONNECTING: if ( _itemWatchList != null ) _itemWatchList.processChannelEvent(reactorChannelEvent); break; default: break; } }
+ ++_channelEventCount + " event=" + event.toString()); ReactorChannel rc = event.reactorChannel(); int eventType = event.eventType();
_statusMsg = new StatusMsgImpl(_baseImpl.objManager()); switch ( event.eventType() ) _rsslStatusMsg.applyHasState(); _statusMsg.decode(_rsslStatusMsg, event.reactorChannel().majorVersion(), event.reactorChannel().minorVersion(), null); _rsslStatusMsg.applyHasState(); _statusMsg.decode(_rsslStatusMsg, event.reactorChannel().majorVersion(), event.reactorChannel().minorVersion(), null); _rsslStatusMsg.applyHasState(); _statusMsg.decode(_rsslStatusMsg, event.reactorChannel().majorVersion(), event.reactorChannel().minorVersion(), null);
ChannelInfo chnlInfo = (ChannelInfo)event.reactorChannel().userSpecObj(); switch(event.eventType()) if (event.reactorChannel().selectableChannel() != null) System.out.println("Channel Up Event: " + event.reactorChannel().selectableChannel()); else System.out.println("Channel Up Event"); event.reactorChannel().selectableChannel().register(selector, SelectionKey.OP_READ, event.reactorChannel()); + event.reactorChannel().oldSelectableChannel() + " New Channel: " + event.reactorChannel().selectableChannel()); SelectionKey key = event.reactorChannel().oldSelectableChannel().keyFor(selector); if (key != null) key.cancel(); event.reactorChannel().selectableChannel().register(selector, SelectionKey.OP_READ, event.reactorChannel()); if (event.reactorChannel().selectableChannel() != null) System.out.println("Channel Ready Event: " + event.reactorChannel().selectableChannel()); else System.out.println("Channel Ready Event");
@Override void processChannelEvent(ReactorChannelEvent reactorChannelEvent) { switch ( reactorChannelEvent.eventType() ) { case ReactorChannelEventTypes.CHANNEL_DOWN: case ReactorChannelEventTypes.CHANNEL_DOWN_RECONNECTING: userLock().lock(); if ( _itemWatchList != null ) _itemWatchList.processChannelEvent(reactorChannelEvent); if ( _activeConfig.removeItemsOnDisconnect ) removeItems(); _activeChannelInfo = null; userLock().unlock(); break; default: break; } }
TestReactorComponent component = (TestReactorComponent)event.reactorChannel().userSpecObj(); switch(event.eventType()) assertEquals(component.reactorChannel(), event.reactorChannel()); else component.reactorChannel(event.reactorChannel());
ChannelInfo chnlInfo = (ChannelInfo)event.reactorChannel().userSpecObj(); switch(event.eventType()) if (event.reactorChannel().selectableChannel() != null) System.out.println("Channel Up Event: " + event.reactorChannel().selectableChannel()); else System.out.println("Channel Up Event"); event.reactorChannel().selectableChannel().register(selector, SelectionKey.OP_READ, event.reactorChannel()); + event.reactorChannel().oldSelectableChannel() + " New Channel: " + event.reactorChannel().selectableChannel()); SelectionKey key = event.reactorChannel().oldSelectableChannel().keyFor(selector); if (key != null) key.cancel(); event.reactorChannel().selectableChannel().register(selector, SelectionKey.OP_READ, event.reactorChannel()); chnlInfo.reactorChannel = event.reactorChannel(); if (event.reactorChannel().selectableChannel() != null) System.out.println("Channel Ready Event: " + event.reactorChannel().selectableChannel()); else System.out.println("Channel Ready Event");
@Override public int reactorChannelEventCallback(ReactorChannelEvent event) { if (event.eventType() == ReactorChannelEventTypes.CHANNEL_DOWN_RECONNECTING) { /* Sleep for half a second before handling the event. */ do { try { Thread.sleep(1500); /* * Since the channel was active, the reactorChannel * should still have a selectableChannel and key. */ assertNotNull(_reactorChannel.selectableChannel()); assertNotNull(_reactorChannel.selectableChannel().keyFor(_testReactor._selector)); break; } catch (InterruptedException e) { /* * Interrupted while sleeping; ignore and sleep again. */} } while (true); } return super.reactorChannelEventCallback(event); } }
ReactorChannelEvent event = callbackHandler.lastChannelEvent(); assertNotNull(event); assertEquals(ReactorChannelEventTypes.CHANNEL_READY, event.eventType()); assertTrue(event.reactorChannel().userSpecObj().equals("userSpecObject: " + serverPort)); event = callbackHandler.lastChannelEvent(); assertNotNull(event); assertEquals(ReactorChannelEventTypes.CHANNEL_DOWN_RECONNECTING, event.eventType()); event = callbackHandler.lastChannelEvent(); assertNotNull(event); assertEquals(ReactorChannelEventTypes.CHANNEL_READY, event.eventType()); assertTrue(event.reactorChannel().userSpecObj().equals("userSpecObject: " + serverPortBackup)); assertEquals(ReactorChannelEventTypes.CHANNEL_DOWN, event.eventType());
switch(event.eventType()) _reactorChannel = event.reactorChannel(); _consThreadInfo.channel(_reactorChannel.channel()); System.out.println("Connected "); event.reactorChannel().selectableChannel().register(_selector, SelectionKey.OP_READ, event.reactorChannel()); + event.reactorChannel().oldSelectableChannel() + " New Channel: " + event.reactorChannel().selectableChannel()); SelectionKey key = event.reactorChannel().oldSelectableChannel().keyFor(_selector); if (key != null) key.cancel(); event.reactorChannel().selectableChannel().register(_selector, SelectionKey.OP_READ, event.reactorChannel()); printEstimatedPostMsgSizes(event.reactorChannel().channel()); printEstimatedGenMsgSizes(event.reactorChannel().channel()); if (event.reactorChannel().selectableChannel() != null) System.out.println("\nConnection down reconnecting: Channel " + event.reactorChannel().selectableChannel()); else System.out.println("\nConnection down reconnecting");
ReactorChannelEvent event = callbackHandler.lastChannelEvent(); assertNotNull(event); assertEquals(ReactorChannelEventTypes.CHANNEL_READY, event.eventType());
ReactorChannelEvent channelEvent = callbackHandler.lastChannelEvent(); assertNotNull(channelEvent); assertEquals(ReactorChannelEventTypes.CHANNEL_READY, channelEvent.eventType()); Channel writeFlushFailChannel = new WriteFlushFailChannel(channelEvent.reactorChannel().channel()); TransportBuffer msgBuf = channelEvent.reactorChannel().channel().getBuffer(1000, false, error); assertNotNull(msgBuf); encIter.setBufferAndRWFVersion(msgBuf, channelEvent.reactorChannel().channel().majorVersion(), channelEvent.reactorChannel().channel().minorVersion()); assertEquals("DIRECT_FEED", submitOptions.serviceName()); assertNotNull(submitOptions.requestMsgOptions().userSpecObj()); assertEquals(ReactorReturnCodes.SUCCESS, channelEvent.reactorChannel().submit(msgBuf, submitOptions, errorInfo)); channelEvent.reactorChannel().selectableChannelFromChannel(writeFlushFailChannel); assertEquals(ReactorReturnCodes.SUCCESS, channelEvent.reactorChannel().submit(msgBuf, submitOptions, errorInfo)); Thread.sleep(1000); assertEquals(1, ((WriteFlushFailChannel)writeFlushFailChannel).flushCount); ((WriteFlushFailChannel)writeFlushFailChannel).flushRetVal = 1; ((WriteFlushFailChannel)writeFlushFailChannel).resetRetValAfterFlush = true; assertEquals(ReactorReturnCodes.WRITE_CALL_AGAIN, channelEvent.reactorChannel().submit(msgBuf, submitOptions, errorInfo)); Thread.sleep(1000); ((WriteFlushFailChannel)writeFlushFailChannel).flushRetVal = 1; ((WriteFlushFailChannel)writeFlushFailChannel).resetRetValAfterFlush = true; assertEquals(ReactorReturnCodes.SUCCESS, channelEvent.reactorChannel().submit(msgBuf, submitOptions, errorInfo));
switch(event.eventType()) _reactorChannel = event.reactorChannel(); event.reactorChannel().selectableChannel().register(_selector, SelectionKey.OP_READ, event.reactorChannel()); + event.reactorChannel().oldSelectableChannel() + " New Channel: " + event.reactorChannel().selectableChannel()); SelectionKey key = event.reactorChannel().oldSelectableChannel().keyFor(_selector); if (key != null) key.cancel(); event.reactorChannel().selectableChannel().register(_selector, SelectionKey.OP_READ, event.reactorChannel()); if (event.reactorChannel().selectableChannel() != null) System.out.println("\nConnection down reconnecting: Channel " + event.reactorChannel().selectableChannel()); else System.out.println("\nConnection down reconnecting"); if (event.errorInfo() != null && event.errorInfo().error().text() != null) System.out.println(" Error text: " + event.errorInfo().error().text() + "\n"); if (event.reactorChannel().selectableChannel() != null)