public Ir decode() { decodeFrame(); final List<Token> tokens = new ArrayList<>(); while (offset < length) { tokens.add(decodeToken()); } int i = 0; if (tokens.get(0).signal() == Signal.BEGIN_COMPOSITE) { i = captureHeader(tokens); } final ByteOrder byteOrder = tokens.size() > 0 ? tokens.get(0).encoding().byteOrder() : null; final Ir ir = new Ir(irPackageName, irNamespaceName, irId, irVersion, semanticVersion, byteOrder, irHeader); for (int size = tokens.size(); i < size; i++) { if (tokens.get(i).signal() == Signal.BEGIN_MESSAGE) { i = captureMessage(tokens, i, ir); } } return ir; }
static Ir minimalDummyIr() { return new Ir("a", "b", 0, 1, "2", ByteOrder.BIG_ENDIAN, Arrays.asList( dummyToken(Signal.ENCODING, HeaderStructure.BLOCK_LENGTH), dummyToken(Signal.ENCODING, HeaderStructure.SCHEMA_ID), dummyToken(Signal.ENCODING, HeaderStructure.SCHEMA_VERSION), dummyToken(Signal.ENCODING, HeaderStructure.TEMPLATE_ID) ) ); }
/** * Generate a complete {@link uk.co.real_logic.sbe.ir.Ir} for a given schema. * * @param schema from which the {@link uk.co.real_logic.sbe.ir.Ir} should be generated. * @param namespace for the generated code. * @return complete {@link uk.co.real_logic.sbe.ir.Ir} for a given schema. */ public Ir generate(final MessageSchema schema, final String namespace) { this.schema = schema; final List<Token> headerTokens = generateForHeader(schema); final Ir ir = new Ir( schema.packageName(), namespace, schema.id(), schema.version(), schema.semanticVersion(), schema.byteOrder(), headerTokens); for (final Message message : schema.messages()) { final long msgId = message.id(); ir.addMessage(msgId, generateForMessage(schema, msgId)); } return ir; }
public Ir decode() { decodeFrame(); final List<Token> tokens = new ArrayList<>(); while (offset < length) { tokens.add(decodeToken()); } int i = 0; if (tokens.get(0).signal() == Signal.BEGIN_COMPOSITE) { i = captureHeader(tokens, 0); } final Ir ir = new Ir(irPackageName, irNamespaceName, irId, irVersion, semanticVersion, irHeader); for (int size = tokens.size(); i < size; i++) { if (tokens.get(i).signal() == Signal.BEGIN_MESSAGE) { i = captureMessage(tokens, i, ir); } } return ir; }
public Ir decode() { decodeFrame(); final List<Token> tokens = new ArrayList<>(); while (offset < length) { tokens.add(decodeToken()); } int i = 0; if (tokens.get(0).signal() == Signal.BEGIN_COMPOSITE) { i = captureHeader(tokens); } final ByteOrder byteOrder = tokens.size() > 0 ? tokens.get(0).encoding().byteOrder() : null; final Ir ir = new Ir(irPackageName, irNamespaceName, irId, irVersion, semanticVersion, byteOrder, irHeader); for (int size = tokens.size(); i < size; i++) { if (tokens.get(i).signal() == Signal.BEGIN_MESSAGE) { i = captureMessage(tokens, i, ir); } } return ir; }
public Ir decode() { decodeFrame(); final List<Token> tokens = new ArrayList<>(); while (offset < length) { tokens.add(decodeToken()); } int i = 0; if (tokens.get(0).signal() == Signal.BEGIN_COMPOSITE) { i = captureHeader(tokens); } final ByteOrder byteOrder = tokens.size() > 0 ? tokens.get(0).encoding().byteOrder() : null; final Ir ir = new Ir(irPackageName, irNamespaceName, irId, irVersion, semanticVersion, byteOrder, irHeader); for (int size = tokens.size(); i < size; i++) { if (tokens.get(i).signal() == Signal.BEGIN_MESSAGE) { i = captureMessage(tokens, i, ir); } } return ir; }
/** * Generate a complete {@link uk.co.real_logic.sbe.ir.Ir} for a given schema. * * @param schema from which the {@link uk.co.real_logic.sbe.ir.Ir} should be generated. * @param namespace for the generated code. * @return complete {@link uk.co.real_logic.sbe.ir.Ir} for a given schema. */ public Ir generate(final MessageSchema schema, final String namespace) { final Ir ir = new Ir( schema.packageName(), namespace, schema.id(), schema.version(), schema.semanticVersion(), generateForHeader(schema)); for (final Message message : schema.messages()) { final long msgId = message.id(); ir.addMessage(msgId, generateForMessage(schema, msgId)); } return ir; }
/** * Generate a complete {@link uk.co.real_logic.sbe.ir.Ir} for a given schema. * * @param schema from which the {@link uk.co.real_logic.sbe.ir.Ir} should be generated. * @param namespace for the generated code. * @return complete {@link uk.co.real_logic.sbe.ir.Ir} for a given schema. */ public Ir generate(final MessageSchema schema, final String namespace) { this.schema = schema; final List<Token> headerTokens = generateForHeader(schema); final Ir ir = new Ir( schema.packageName(), namespace, schema.id(), schema.version(), schema.semanticVersion(), schema.byteOrder(), headerTokens); for (final Message message : schema.messages()) { final long msgId = message.id(); ir.addMessage(msgId, generateForMessage(schema, msgId)); } return ir; }
/** * Generate a complete {@link uk.co.real_logic.sbe.ir.Ir} for a given schema. * * @param schema from which the {@link uk.co.real_logic.sbe.ir.Ir} should be generated. * @param namespace for the generated code. * @return complete {@link uk.co.real_logic.sbe.ir.Ir} for a given schema. */ public Ir generate(final MessageSchema schema, final String namespace) { this.schema = schema; final List<Token> headerTokens = generateForHeader(schema); final Ir ir = new Ir( schema.packageName(), namespace, schema.id(), schema.version(), schema.semanticVersion(), schema.byteOrder(), headerTokens); for (final Message message : schema.messages()) { final long msgId = message.id(); ir.addMessage(msgId, generateForMessage(schema, msgId)); } return ir; }