@SuppressWarnings("unchecked") public static <T> T take(final EventProducer consumer, Class<T> clazz) { //re-use old proxy if possible if (null!=consumer.cached && clazz.isAssignableFrom(consumer.cached.getClass())) { if (PipeReader.tryReadFragment(consumer.input)) { assert(consumer.cachedMsgId == PipeReader.getMsgIdx(consumer.input)); return (T)consumer.cached; } else { return null; } } return slowCreate(consumer, clazz); }
@SuppressWarnings("unchecked") public static <T> T take(final EventProducer consumer, Class<T> clazz) { //re-use old proxy if possible if (null!=consumer.cached && clazz.isAssignableFrom(consumer.cached.getClass())) { if (PipeReader.tryReadFragment(consumer.input)) { assert(consumer.cachedMsgId == PipeReader.getMsgIdx(consumer.input)); return (T)consumer.cached; } else { return null; } } return slowCreate(consumer, clazz); }
@SuppressWarnings("unchecked") public static <T> T take(final EventProducer consumer, Class<T> clazz) { //re-use old proxy if possible if (null!=consumer.cached && clazz.isAssignableFrom(consumer.cached.getClass())) { if (PipeReader.tryReadFragment(consumer.input)) { assert(consumer.cachedMsgId == PipeReader.getMsgIdx(consumer.input)); return (T)consumer.cached; } else { return null; } } return slowCreate(consumer, clazz); }
public static void consume(Pipe<PipeMonitorSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_RINGSTATSAMPLE_100: consumeRingStatSample(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<PersistedBlobStoreProducerSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_BLOCK_1: consumeBlock(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
private static <T> T slowCreate(final EventProducer consumer, Class<T> clazz) { int msgIdx = FieldReferenceOffsetManager.lookupTemplateLocator(clazz.getAnnotation(ProngTemplateMessage.class).templateId(), Pipe.from(consumer.input)); if (PipeReader.tryReadFragment(consumer.input)) { T result = (T) Proxy.newProxyInstance( clazz.getClassLoader(), new Class[] { clazz }, new InputPipeInvocationHandler(consumer.input, PipeReader.getMsgIdx(consumer.input), clazz)); consumer.cached = result; //TODO: needs smarter pool but this is fine for now. consumer.cachedMsgId = PipeReader.getMsgIdx(consumer.input); return result; } else { return null; } }
public static void consume(Pipe<HTTPLogRequestSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_REQUEST_1: consumeRequest(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<ConnectionData> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_CONNECTIONDATA_1: consumeConnectionData(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<PersistedBlobLoadProducerSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_ACKWRITE_11: consumeAckWrite(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<RawDataSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_CHUNKEDSTREAM_1: consumeChunkedStream(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
private static <T> T slowCreate(final EventProducer consumer, Class<T> clazz) { int msgIdx = FieldReferenceOffsetManager.lookupTemplateLocator(clazz.getAnnotation(ProngTemplateMessage.class).templateId(), Pipe.from(consumer.input)); if (PipeReader.tryReadFragment(consumer.input)) { T result = (T) Proxy.newProxyInstance( clazz.getClassLoader(), new Class[] { clazz }, new InputPipeInvocationHandler(consumer.input, PipeReader.getMsgIdx(consumer.input), clazz)); consumer.cached = result; //TODO: needs smarter pool but this is fine for now. consumer.cachedMsgId = PipeReader.getMsgIdx(consumer.input); return result; } else { return null; } }
private static <T> T slowCreate(final EventProducer consumer, Class<T> clazz) { int msgIdx = FieldReferenceOffsetManager.lookupTemplateLocator(clazz.getAnnotation(ProngTemplateMessage.class).templateId(), Pipe.from(consumer.input)); if (PipeReader.tryReadFragment(consumer.input)) { T result = (T) Proxy.newProxyInstance( clazz.getClassLoader(), new Class[] { clazz }, new InputPipeInvocationHandler(consumer.input, PipeReader.getMsgIdx(consumer.input), clazz)); consumer.cached = result; //TODO: needs smarter pool but this is fine for now. consumer.cachedMsgId = PipeReader.getMsgIdx(consumer.input); return result; } else { return null; } }
public static void consume(Pipe<RawDataSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_CHUNKEDSTREAM_1: consumeChunkedStream(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<AlertNoticeSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_ROUTESLA_100: consumeRouteSLA(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<ProbabilitySchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_SELECTION_1: consumeSelection(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<BlockingWorkInProgressSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_INFLIGHT_1: consumeinFlight(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<ServerConnectionSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_SERVERCONNECTION_100: consumeServerConnection(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<HTTPLogResponseSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_RESPONSE_1: consumeResponse(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<PersistedBlobLoadReleaseSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_ACKRELEASE_10: consumeAckRelease(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }
public static void consume(Pipe<MQTTIdRangeSchema> input) { while (PipeReader.tryReadFragment(input)) { int msgIdx = PipeReader.getMsgIdx(input); switch(msgIdx) { case MSG_IDRANGE_1: consumeIdRange(input); break; case -1: //requestShutdown(); break; } PipeReader.releaseReadLock(input); } }