else if (!isUnsigned(blockLengthType.primitiveType())) else if (blockLengthType.primitiveType() != UINT16) else if (templateIdType.primitiveType() != UINT16) else if (schemaIdType.primitiveType() != UINT16) else if (versionType.primitiveType() != UINT16)
else if (!isUnsigned(blockLengthType.primitiveType())) if (blockLengthType.primitiveType() != UINT8 && blockLengthType.primitiveType() != UINT16) validateGroupMaxValue(node, blockLengthType.primitiveType(), blockLengthTypeMaxValue); else if (!isUnsigned(numInGroupType.primitiveType())) if (numInGroupType.primitiveType() != UINT8 && numInGroupType.primitiveType() != UINT16) validateGroupMaxValue(node, numInGroupType.primitiveType(), numInGroupMaxValue); numInGroupMaxValue.longValue() : numInGroupType.primitiveType().maxValue().longValue();
assertThat(((EncodedDataType)map.get("testTypeChar")).primitiveType(), is(PrimitiveType.CHAR)); assertThat(((EncodedDataType)map.get("testTypeInt8")).primitiveType(), is(PrimitiveType.INT8)); assertThat(((EncodedDataType)map.get("testTypeInt16")).primitiveType(), is(PrimitiveType.INT16)); assertThat(((EncodedDataType)map.get("testTypeInt32")).primitiveType(), is(PrimitiveType.INT32)); assertThat(((EncodedDataType)map.get("testTypeInt64")).primitiveType(), is(PrimitiveType.INT64)); assertThat(((EncodedDataType)map.get("testTypeUInt8")).primitiveType(), is(PrimitiveType.UINT8)); assertThat(((EncodedDataType)map.get("testTypeUInt16")).primitiveType(), is(PrimitiveType.UINT16)); assertThat(((EncodedDataType)map.get("testTypeUInt32")).primitiveType(), is(PrimitiveType.UINT32)); assertThat(((EncodedDataType)map.get("testTypeUInt64")).primitiveType(), is(PrimitiveType.UINT64)); assertThat(((EncodedDataType)map.get("testTypeFloat")).primitiveType(), is(PrimitiveType.FLOAT)); assertThat(((EncodedDataType)map.get("testTypeDouble")).primitiveType(), is(PrimitiveType.DOUBLE));
final PrimitiveType primitiveType = lengthType.primitiveType(); if (!isUnsigned(primitiveType))
if (((EncodedDataType)type).primitiveType() != enumType.encodingType())
encodingType = encodedDataType.primitiveType();
@Test public void shouldHandleDecimalCompositeType() throws Exception { final String testXmlString = "<types>" + "<composite name=\"decimal\">" + " <type name=\"mantissa\" primitiveType=\"int64\"/>" + " <type name=\"exponent\" primitiveType=\"int8\"/>" + "</composite>" + "</types>"; final Map<String, Type> map = parseTestXmlWithMap("/types/composite", testXmlString); final CompositeType decimal = (CompositeType)map.get("decimal"); assertThat(decimal.name(), is("decimal")); final EncodedDataType mantissa = (EncodedDataType)decimal.getType("mantissa"); final EncodedDataType exponent = (EncodedDataType)decimal.getType("exponent"); assertThat(mantissa.primitiveType(), is(PrimitiveType.INT64)); assertThat(exponent.primitiveType(), is(PrimitiveType.INT8)); assertThat(decimal.encodedLength(), is(9)); }
@Test public void shouldHandleSettingAllAttributes() throws Exception { final String testXmlString = "<types>" + " <type name=\"testType\" presence=\"required\" primitiveType=\"char\" length=\"1\" " + "variableLength=\"false\"/>" + "</types>"; final Map<String, Type> map = parseTestXmlWithMap("/types/type", testXmlString); // assert that testType is in map and name of Type is correct final Type t = map.get("testType"); assertThat(t.name(), is("testType")); assertThat(t.presence(), is(Presence.REQUIRED)); final EncodedDataType d = (EncodedDataType)t; assertThat(d.primitiveType(), is(PrimitiveType.CHAR)); assertThat(d.length(), is(1)); assertThat(d.isVariableLength(), is(false)); }
@Test public void shouldHandleDecimal32CompositeType() throws Exception { final String testXmlString = "<types>" + "<composite name=\"decimal32\">" + " <type name=\"mantissa\" primitiveType=\"int32\"/>" + " <type name=\"exponent\" primitiveType=\"int8\" presence=\"constant\">-2</type>" + "</composite>" + "</types>"; final Map<String, Type> map = parseTestXmlWithMap("/types/composite", testXmlString); final CompositeType decimal32 = (CompositeType)map.get("decimal32"); assertThat(decimal32.name(), is("decimal32")); final EncodedDataType mantissa = (EncodedDataType)decimal32.getType("mantissa"); final EncodedDataType exponent = (EncodedDataType)decimal32.getType("exponent"); assertThat(mantissa.primitiveType(), is(PrimitiveType.INT32)); assertThat(exponent.primitiveType(), is(PrimitiveType.INT8)); assertThat(exponent.presence(), is(Presence.CONSTANT)); assertThat(exponent.constVal(), is(PrimitiveValue.parse("-2", PrimitiveType.INT8))); assertThat(decimal32.encodedLength(), is(4)); }
@Test public void shouldHandleDecimal64CompositeType() throws Exception { final String testXmlString = "<types>" + "<composite name=\"decimal64\">" + " <type name=\"mantissa\" primitiveType=\"int64\"/>" + " <type name=\"exponent\" primitiveType=\"int8\" presence=\"constant\">-2</type>" + "</composite>" + "</types>"; final Map<String, Type> map = parseTestXmlWithMap("/types/composite", testXmlString); final CompositeType decimal64 = (CompositeType)map.get("decimal64"); assertThat(decimal64.name(), is("decimal64")); final EncodedDataType mantissa = (EncodedDataType)decimal64.getType("mantissa"); final EncodedDataType exponent = (EncodedDataType)decimal64.getType("exponent"); assertThat(mantissa.primitiveType(), is(PrimitiveType.INT64)); assertThat(exponent.primitiveType(), is(PrimitiveType.INT8)); assertThat(exponent.presence(), is(Presence.CONSTANT)); assertThat(exponent.constVal(), is(PrimitiveValue.parse("-2", PrimitiveType.INT8))); assertThat(decimal64.encodedLength(), is(8)); }
private void add(final EncodedDataType type, final int offset) .primitiveType(type.primitiveType()) .byteOrder(schema.byteOrder()) .characterEncoding(type.characterEncoding());
private void add(final EncodedDataType type, final int offset, final Field field) .primitiveType(type.primitiveType()) .byteOrder(schema.byteOrder()) .semanticType(semanticTypeOf(type, field))
if (((EncodedDataType)type).primitiveType() != enumType.encodingType())
if (((EncodedDataType)type).primitiveType() != enumType.encodingType())
final PrimitiveType primitiveType = lengthType.primitiveType(); if (!isUnsigned(primitiveType))
final PrimitiveType primitiveType = lengthType.primitiveType(); if (!isUnsigned(primitiveType))
private void add(final EncodedDataType type, final int offset) .primitiveType(type.primitiveType()) .byteOrder(schema.byteOrder()) .characterEncoding(type.characterEncoding());
private void add(final EncodedDataType type, final int offset, final Field field) .primitiveType(type.primitiveType()) .byteOrder(byteOrder) .semanticType(semanticTypeOf(type, field))
private void add(final EncodedDataType type, final int offset) .primitiveType(type.primitiveType()) .byteOrder(schema.byteOrder()) .characterEncoding(type.characterEncoding());
private void add(final EncodedDataType type, final int offset, final Field field) .primitiveType(type.primitiveType()) .byteOrder(schema.byteOrder()) .semanticType(semanticTypeOf(type, field))