@Override public void eval() { String inputString = org.apache.drill.exec.expr.fn.impl.StringFunctionHelpers.toStringFromUTF8(in.start, in.end, in.buffer); // Convert the iterable to an array as Janino will not handle generics. Object[] tokens = com.google.common.collect.Iterables.toArray(splitter.split(inputString), String.class); org.apache.drill.exec.vector.complex.writer.BaseWriter.ListWriter list = writer.rootAsList(); list.startList(); for (Object token : tokens) { final byte[] strBytes = ((String) token).getBytes(com.google.common.base.Charsets.UTF_8); buffer = buffer.reallocIfNeeded(strBytes.length); buffer.setBytes(0, strBytes); list.varChar().writeVarChar(0, strBytes.length, buffer); } list.endList(); } }
@Override public void eval() { Object[] tokens; if (in.isSet == 1) { String inputString = org.apache.drill.exec.expr.fn.impl.StringFunctionHelpers.toStringFromUTF8(in.start, in.end, in.buffer); // Convert the iterable to an array as Janino will not handle generics. tokens = com.google.common.collect.Iterables.toArray(splitter.split(inputString), String.class); } else { tokens = new Object[0]; } org.apache.drill.exec.vector.complex.writer.BaseWriter.ListWriter list = writer.rootAsList(); list.startList(); org.apache.drill.exec.vector.complex.writer.VarCharWriter varCharWriter = list.varChar(); for (Object token : tokens) { final byte[] strBytes = ((String) token).getBytes(com.google.common.base.Charsets.UTF_8); buffer = buffer.reallocIfNeeded(strBytes.length); buffer.setBytes(0, strBytes); varCharWriter.writeVarChar(0, strBytes.length, buffer); } list.endList(); } }
private void writeDataAllText(ListWriter list) throws IOException { list.startList(); outside: while (true) {
private void writeData(ListWriter list) throws IOException { list.startList(); outside: while (true) { try {
listWriter.startList(); BaseWriter.MapWriter mapWriter = listWriter.map();
public void start() { if (map != null) { map.start(); } else { list.startList(); } }
@Override public void startList() { getListWriter().startList(); data.getMutator().setType(idx(), MinorType.LIST); }
public void start() { if (map != null) { map.start(); } else { list.startList(); } }
@Override public void startList() { getListWriter().startList(); data.getMutator().setType(idx(), MinorType.LIST); }