Skip to content

Commit 24f6d6c

Browse files
committed
[Java] Provide a fluent API for setting array values in encoder.
1 parent cf7b989 commit 24f6d6c

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/java/JavaGenerator.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -348,7 +348,6 @@ private void generateGroupDecoderClassHeader(
348348
final String indent)
349349
{
350350
final Token groupToken = tokens.get(index);
351-
final String dimensionsClassName = formatClassName(tokens.get(index + 1).name());
352351
final int dimensionHeaderLen = tokens.get(index + 1).encodedLength();
353352

354353
final Token blockLengthToken = Generators.findFirst("blockLength", tokens, index);
@@ -2079,15 +2078,17 @@ private CharSequence generatePrimitiveArrayPropertyEncode(
20792078
generateArrayLengthMethod(propertyName, indent, fieldLength, sb);
20802079

20812080
sb.append(String.format(
2082-
indent + " public void %s(final int index, final %s value)\n" +
2081+
indent + " public %s %s(final int index, final %s value)\n" +
20832082
indent + " {\n" +
20842083
indent + " if (index < 0 || index >= %d)\n" +
20852084
indent + " {\n" +
20862085
indent + " throw new IndexOutOfBoundsException(\"index out of range: index=\" + index);\n" +
20872086
indent + " }\n\n" +
20882087
indent + " final int pos = this.offset + %d + (index * %d);\n" +
2089-
indent + " %s;\n" +
2088+
indent + " %s;\n\n" +
2089+
indent + " return this;\n" +
20902090
indent + " }\n",
2091+
formatClassName(containingClassName),
20912092
propertyName,
20922093
javaTypeName,
20932094
fieldLength,

0 commit comments

Comments
 (0)