public int getLoc(String messageName, String fieldName) { return lookupFieldLocator(fieldName, lookupTemplateLocator(messageName, this), this); }
public int getLoc(long messageId, long fieldId) { return lookupFieldLocator(fieldId, lookupTemplateLocator(messageId, this), this); }
public int getLoc(String messageName, String fieldName) { return lookupFieldLocator(fieldName, lookupTemplateLocator(messageName, this), this); }
public int getLoc(String messageName, String fieldName) { return lookupFieldLocator(fieldName, lookupTemplateLocator(messageName, this), this); }
public int getLoc(long messageId, long fieldId) { return lookupFieldLocator(fieldId, lookupTemplateLocator(messageId, this), this); }
public int getLoc(long messageId, long fieldId) { return lookupFieldLocator(fieldId, lookupTemplateLocator(messageId, this), this); }
private static <T> T slowCreate(final EventConsumer consumer, Class<T> clazz) { int msgIdx = FieldReferenceOffsetManager.lookupTemplateLocator(clazz.getAnnotation(ProngTemplateMessage.class).templateId(), Pipe.from(consumer.output)); if (PipeWriter.tryWriteFragment(consumer.output, msgIdx)) { T result = (T) Proxy.newProxyInstance( clazz.getClassLoader(), new Class[] { clazz }, new OutputPipeInvocationHandler(consumer.output, msgIdx, clazz)); consumer.cached = result; //TODO: needs smarter pool but this is fine for now. consumer.cachedMsgId = msgIdx; return result; } else { return null; } }
private static <T> T slowCreate(final EventConsumer consumer, Class<T> clazz) { int msgIdx = FieldReferenceOffsetManager.lookupTemplateLocator(clazz.getAnnotation(ProngTemplateMessage.class).templateId(), Pipe.from(consumer.output)); if (PipeWriter.tryWriteFragment(consumer.output, msgIdx)) { T result = (T) Proxy.newProxyInstance( clazz.getClassLoader(), new Class[] { clazz }, new OutputPipeInvocationHandler(consumer.output, msgIdx, clazz)); consumer.cached = result; //TODO: needs smarter pool but this is fine for now. consumer.cachedMsgId = msgIdx; return result; } else { return null; } }
private static <T> T slowCreate(final EventConsumer consumer, Class<T> clazz) { int msgIdx = FieldReferenceOffsetManager.lookupTemplateLocator(clazz.getAnnotation(ProngTemplateMessage.class).templateId(), Pipe.from(consumer.output)); if (PipeWriter.tryWriteFragment(consumer.output, msgIdx)) { T result = (T) Proxy.newProxyInstance( clazz.getClassLoader(), new Class[] { clazz }, new OutputPipeInvocationHandler(consumer.output, msgIdx, clazz)); consumer.cached = result; //TODO: needs smarter pool but this is fine for now. consumer.cachedMsgId = msgIdx; 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; } }
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; } }
@Test public void testConstantFields() { //too many unused constants. assertEquals(PhastCodecSchema.MSG_MAX_FIELDS, FieldReferenceOffsetManager.lookupTemplateLocator(10063, PhastCodecSchema.FROM)); }