private static IpcPublication findSharedIpcPublication( final ArrayList<IpcPublication> ipcPublications, final long streamId) { IpcPublication ipcPublication = null; for (int i = 0, size = ipcPublications.size(); i < size; i++) { final IpcPublication publication = ipcPublications.get(i); if (publication.streamId() == streamId && !publication.isExclusive() && IpcPublication.State.ACTIVE == publication.state()) { ipcPublication = publication; break; } } return ipcPublication; }
public boolean matches(final IpcPublication publication) { return publication.streamId() == streamId && isWildcardOrSessionIdMatch(publication.sessionId()); } }
void transitionToLinger(final IpcPublication publication) { for (int i = 0, size = subscriptionLinks.size(); i < size; i++) { final SubscriptionLink link = subscriptionLinks.get(i); if (link.isLinked(publication)) { clientProxy.onUnavailableImage( publication.registrationId(), link.registrationId(), publication.streamId(), CommonContext.IPC_CHANNEL); } } }
@Test public void shouldBeAbleToAddIpcPublicationForReplay() { final int termLength = 128 * 1024; final int initialTermId = 7; final int termId = 11; final int termOffset = 64; final String params = "?term-length=" + termLength + "|init-term-id=" + initialTermId + "|term-id=" + termId + "|term-offset=" + termOffset; when(mockRawLogFactory.newIpcPublication(anyInt(), anyInt(), anyLong(), eq(termLength), anyBoolean())) .thenReturn(LogBufferHelper.newTestLogBuffers(termLength)); driverProxy.addExclusivePublication(CHANNEL_IPC + params, STREAM_ID_1); driverConductor.doWork(); final ArgumentCaptor<Long> captor = ArgumentCaptor.forClass(Long.class); verify(mockClientProxy).onPublicationReady( anyLong(), captor.capture(), eq(STREAM_ID_1), anyInt(), any(), anyInt(), anyInt(), eq(true)); final long registrationId = captor.getValue(); final IpcPublication publication = driverConductor.getIpcPublication(registrationId); assertThat(publication.streamId(), is(STREAM_ID_1)); final long expectedPosition = termLength * (termId - initialTermId) + termOffset; assertThat(publication.producerPosition(), is(expectedPosition)); assertThat(publication.consumerPosition(), is(expectedPosition)); }
private static IpcPublication findSharedIpcPublication( final ArrayList<IpcPublication> ipcPublications, final long streamId) { IpcPublication ipcPublication = null; for (int i = 0, size = ipcPublications.size(); i < size; i++) { final IpcPublication publication = ipcPublications.get(i); if (publication.streamId() == streamId && !publication.isExclusive() && IpcPublication.State.ACTIVE == publication.state()) { ipcPublication = publication; break; } } return ipcPublication; }
private static IpcPublication findSharedIpcPublication( final ArrayList<IpcPublication> ipcPublications, final long streamId) { IpcPublication ipcPublication = null; for (int i = 0, size = ipcPublications.size(); i < size; i++) { final IpcPublication publication = ipcPublications.get(i); if (publication.streamId() == streamId && !publication.isExclusive() && IpcPublication.State.ACTIVE == publication.state()) { ipcPublication = publication; break; } } return ipcPublication; }
public boolean matches(final IpcPublication publication) { return publication.streamId() == streamId && isWildcardOrSessionIdMatch(publication.sessionId()); } }
public boolean matches(final IpcPublication publication) { return publication.streamId() == streamId && isWildcardOrSessionIdMatch(publication.sessionId()); } }
void transitionToLinger(final IpcPublication publication) { for (int i = 0, size = subscriptionLinks.size(); i < size; i++) { final SubscriptionLink link = subscriptionLinks.get(i); if (link.isLinked(publication)) { clientProxy.onUnavailableImage( publication.registrationId(), link.registrationId(), publication.streamId(), CommonContext.IPC_CHANNEL); } } }
void transitionToLinger(final IpcPublication publication) { for (int i = 0, size = subscriptionLinks.size(); i < size; i++) { final SubscriptionLink link = subscriptionLinks.get(i); if (link.isLinked(publication)) { clientProxy.onUnavailableImage( publication.registrationId(), link.registrationId(), publication.streamId(), CommonContext.IPC_CHANNEL); } } }