private void initStreams() { if (enginesAreClustered || isFirstConnect()) { transport.initStreams(currentAeronChannel); inboundSubscription = transport.inboundSubscription(); outboundPublication = transport.outboundPublication(); } }
private boolean isFirstConnect() { return !transport.isReconnect(); }
@Before public void setUp() { when(transport.outboundPublication()).thenReturn(outboundPublication); when(transport.inboundSubscription()).thenReturn(inboundSubscription); when(counters.receivedMsgSeqNo(anyLong())).thenReturn(mock(AtomicCounter.class)); when(counters.sentMsgSeqNo(anyLong())).thenReturn(mock(AtomicCounter.class)); when(sessionAcquireHandler.onSessionAcquired(session.capture(), anyBoolean())).thenReturn(sessionHandler); }
private SessionProxy sessionProxy(final long connectionId, final MutableAsciiBuffer asciiBuffer) { return new SessionProxy( asciiBuffer, transport.outboundPublication(), sessionIdStrategy, configuration.sessionCustomisationStrategy(), new SystemEpochClock(), connectionId, libraryId); }
private void doesNotAttemptConnectTo(final String channel) { verify(transport, never()).initStreams(channel); }
FixLibrary(final LibraryConfiguration configuration) { this.configuration = configuration; scheduler = configuration.scheduler(); configuration.conclude(); try { scheduler.configure(configuration.aeronContext()); init(configuration); final LibraryTimers timers = new LibraryTimers(configuration.clock()); initMonitoringAgent(timers.all(), configuration); final LibraryTransport transport = new LibraryTransport(configuration, fixCounters, aeron); poller = new LibraryPoller( configuration, timers, fixCounters, transport, this, new SystemEpochClock()); } catch (final Exception e) { try { closeAnythingHoldingFileHandles(); deleteFiles(); } catch (final Exception innerException) { innerException.addSuppressed(e); throw innerException; } throw e; } }
final boolean enableLastMsgSeqNumProcessed) final GatewayPublication publication = transport.outboundPublication(); final long sendingTimeWindow = configuration.sendingTimeWindowInMs(); final AtomicCounter receivedMsgSeqNo = fixCounters.receivedMsgSeqNo(connectionId);
private void attemptToConnectTo(final String... channels) { final InOrder inOrder = inOrder(transport, outboundPublication); for (final String channel : channels) { inOrder.verify(transport).initStreams(channel); inOrder.verify(transport).inboundSubscription(); inOrder.verify(transport).outboundPublication(); inOrder.verify(outboundPublication) .saveLibraryConnect(eq(libraryId()), anyString(), anyLong()); } verifyNoMoreInteractions(transport); reset(outboundPublication); }
final GatewayPublication publication = transport.outboundPublication();
void initStreams(final String aeronChannel) { DebugLogger.log(LIBRARY_CONNECT, "Directed streams at %s%n", aeronChannel); final Streams outboundLibraryStreams = new Streams( aeron, aeronChannel, configuration.printAeronStreamIdentifiers(), fixCounters.failedOutboundPublications(), configuration.outboundLibraryStream(), clock, configuration.outboundMaxClaimAttempts(), null); if (isReconnect()) { inboundSubscription.close(); outboundPublication.close(); } inboundSubscription = aeron.addSubscription(aeronChannel, configuration.inboundLibraryStream()); StreamInformation.print( "library " + configuration.libraryId() + " inboundSubscription", inboundSubscription, configuration); outboundPublication = outboundLibraryStreams.gatewayPublication( configuration.libraryIdleStrategy(), "outboundPublication"); }