@Override public List<ByteArray> getBytesList(String columnName) { return getCurrentRowAsStruct().getBytesList(columnName); }
@Override public List<ByteArray> getBytesList(int columnIndex) { return getCurrentRowAsStruct().getBytesList(columnIndex); }
@Test public void bindBytesArrayEmpty() { Struct row = execute( Statement.newBuilder("SELECT @v").bind("v").toBytesArray(Arrays.<ByteArray>asList()), Type.array(Type.bytes())); assertThat(row.isNull(0)).isFalse(); assertThat(row.getBytesList(0)).isEmpty(); }
@Test public void writeBytesArrayEmpty() { write(baseInsert().set("BytesArrayValue").toBytesArray(Arrays.<ByteArray>asList()).build()); Struct row = readLastRow("BytesArrayValue"); assertThat(row.isNull(0)).isFalse(); assertThat(row.getBytesList(0)).containsExactly(); }
@Test public void writeBytesArray() { List<ByteArray> data = Arrays.asList(ByteArray.copyFrom("a"), ByteArray.copyFrom("b"), null); write(baseInsert().set("BytesArrayValue").toBytesArray(data).build()); Struct row = readLastRow("BytesArrayValue"); assertThat(row.isNull(0)).isFalse(); assertThat(row.getBytesList(0)).isEqualTo(data); }
@Test public void bindBytesArray() { ByteArray e1 = ByteArray.copyFrom("x"); ByteArray e2 = ByteArray.copyFrom("y"); ByteArray e3 = null; Struct row = execute( Statement.newBuilder("SELECT @v").bind("v").toBytesArray(asList(e1, e2, e3)), Type.array(Type.bytes())); assertThat(row.isNull(0)).isFalse(); assertThat(row.getBytesList(0)).containsExactly(e1, e2, e3).inOrder(); }
private List<?> getRawList(Struct actualRow, int index, Type elementType) throws Exception { List<?> rawList = null; switch (elementType.getCode()) { case BOOL: rawList = actualRow.getBooleanList(index); break; case STRING: rawList = actualRow.getStringList(index); break; case BYTES: rawList = actualRow.getBytesList(index); break; case INT64: rawList = actualRow.getLongList(index); break; case FLOAT64: rawList = actualRow.getDoubleList(index); break; case STRUCT: rawList = actualRow.getStructList(index); break; default: Assert.fail("Unexpected type code:" + elementType.getCode()); } return rawList; }
return Value.stringArray(value.getStringList(fieldIndex)); case BYTES: return Value.bytesArray(value.getBytesList(fieldIndex)); case FLOAT64: return Value.float64Array(value.getDoubleArray(fieldIndex));
@Override public List<ByteArray> getBytesList(int columnIndex) { return getCurrentRowAsStruct().getBytesList(columnIndex); }
@Override public List<ByteArray> getBytesList(String columnName) { return getCurrentRowAsStruct().getBytesList(columnName); }
return GSON.toJson( currentRow .getBytesList(columnName) .stream() .map(byteArray -> Base64.getEncoder().encodeToString(byteArray.toByteArray()))
if (!nullValue) { value = row.getBytesList(fieldName) .stream() .map(
return Value.stringArray(value.getStringList(fieldIndex)); case BYTES: return Value.bytesArray(value.getBytesList(fieldIndex)); case FLOAT64: return Value.float64Array(value.getDoubleArray(fieldIndex));