public static Frame fromProto(Common.Frame proto) { List<Object> parsedRows = new ArrayList<>(proto.getRowsCount()); for (Common.Row protoRow : proto.getRowsList()) { ArrayList<Object> row = new ArrayList<>(protoRow.getValueCount()); for (Common.ColumnValue protoColumn : protoRow.getValueList()) { final Object value; if (!isNewStyleColumn(protoColumn)) { // Backward compatibility value = parseOldStyleColumn(protoColumn); } else { // Current style parsing (separate scalar and array values) value = parseColumn(protoColumn); } row.add(value); } parsedRows.add(row); } return new Frame(proto.getOffset(), proto.getDone(), parsedRows); }
public static Frame fromProto(Common.Frame proto) { List<Object> parsedRows = new ArrayList<>(proto.getRowsCount()); for (Common.Row protoRow : proto.getRowsList()) { ArrayList<Object> row = new ArrayList<>(protoRow.getValueCount()); for (Common.ColumnValue protoColumn : protoRow.getValueList()) { final Object value; if (!isNewStyleColumn(protoColumn)) { // Backward compatibility value = parseOldStyleColumn(protoColumn); } else { // Current style parsing (separate scalar and array values) value = parseColumn(protoColumn); } row.add(value); } parsedRows.add(row); } return new Frame(proto.getOffset(), proto.getDone(), parsedRows); }
public static Frame fromProto(Common.Frame proto) { List<Object> parsedRows = new ArrayList<>(proto.getRowsCount()); for (Common.Row protoRow : proto.getRowsList()) { ArrayList<Object> row = new ArrayList<>(protoRow.getValueCount()); for (Common.ColumnValue protoColumn : protoRow.getValueList()) { final Object value; if (!isNewStyleColumn(protoColumn)) { // Backward compatibility value = parseOldStyleColumn(protoColumn); } else { // Current style parsing (separate scalar and array values) value = parseColumn(protoColumn); } row.add(value); } parsedRows.add(row); } return new Frame(proto.getOffset(), proto.getDone(), parsedRows); }
@Test public void testColumnValueBackwardsCompatibility() { // 1 final ColumnValue oldStyleScalarValue = ColumnValue.newBuilder().addValue(NUMBER_VALUE).build(); // [1, 1] final ColumnValue oldStyleArrayValue = ColumnValue.newBuilder().addValue(NUMBER_VALUE) .addValue(NUMBER_VALUE).build(); assertFalse(Frame.isNewStyleColumn(oldStyleScalarValue)); assertFalse(Frame.isNewStyleColumn(oldStyleArrayValue)); Object scalar = Frame.parseOldStyleColumn(oldStyleScalarValue); assertEquals(1L, scalar); Object array = Frame.parseOldStyleColumn(oldStyleArrayValue); assertEquals(Arrays.asList(1L, 1L), array); }
@Test public void testColumnValueBackwardsCompatibility() { // 1 final ColumnValue oldStyleScalarValue = ColumnValue.newBuilder().addValue(NUMBER_VALUE).build(); // [1, 1] final ColumnValue oldStyleArrayValue = ColumnValue.newBuilder().addValue(NUMBER_VALUE) .addValue(NUMBER_VALUE).build(); assertFalse(Frame.isNewStyleColumn(oldStyleScalarValue)); assertFalse(Frame.isNewStyleColumn(oldStyleArrayValue)); Object scalar = Frame.parseOldStyleColumn(oldStyleScalarValue); assertEquals(1L, scalar); Object array = Frame.parseOldStyleColumn(oldStyleArrayValue); assertEquals(Arrays.asList(1L, 1L), array); }
@Test public void testColumnValueBackwardsCompatibility() { // 1 final ColumnValue oldStyleScalarValue = ColumnValue.newBuilder().addValue(NUMBER_VALUE).build(); // [1, 1] final ColumnValue oldStyleArrayValue = ColumnValue.newBuilder().addValue(NUMBER_VALUE) .addValue(NUMBER_VALUE).build(); assertFalse(Frame.isNewStyleColumn(oldStyleScalarValue)); assertFalse(Frame.isNewStyleColumn(oldStyleArrayValue)); Object scalar = Frame.parseOldStyleColumn(oldStyleScalarValue); assertEquals(1L, scalar); Object array = Frame.parseOldStyleColumn(oldStyleArrayValue); assertEquals(Arrays.asList(1L, 1L), array); }