@Override public Object readObject() { return reader.readObject(); }
@Override public Object getObject(int rowOffset) throws InvalidAccessException { reader.setPosition(rowOffset); return reader.readObject(); }
@Override public void writeField() throws IOException { addField(fieldId, reader.readObject().toString()); } }
@Override public void eval() { out.isSet = 1; if (!in.isSet() || in.readObject() == null) { out.value = 0; return; } if (in.getMinorType() != org.apache.arrow.vector.types.Types.MinorType.LIST) { throw new java.lang.UnsupportedOperationException( String.format("'array_length' is supported only on LIST type input. Given input type : %s", in.getMinorType().toString() ) ); } out.value = ((java.util.List<?>) in.readObject()).size(); } }
@Override public Object readObject() { return getReaderForIndex(idx()).readObject(); }
@Override public void writeField() throws IOException { if (!reader.isSet()) { addField(fieldId, null); return; } reader.read(holder); // TODO: error check addField(fieldId, reader.readObject().toString()); } }
@Override public void writeField() throws IOException { if (!reader.isSet()) { addField(fieldId, null); return; } reader.read(holder); // TODO: error check addField(fieldId, reader.readObject().toString()); } }
@Override public void writeField() throws IOException { if (!reader.isSet()) { addField(fieldId, null); return; } reader.read(holder); // TODO: error check addField(fieldId, reader.readObject().toString()); } }
@Override public void writeField() throws IOException { if (!reader.isSet()) { addField(fieldId, null); return; } reader.read(holder); addField(fieldId, reader.readObject().toString()); } }
public static boolean castToBoolean(FieldReader reader, NullableBitHolder out) { Object o = reader.readObject(); if (o instanceof Number) { out.value = ((Number) o).doubleValue() != 0 ? 1 : 0;
@Override public void writeField() throws IOException { if (!reader.isSet()) { addField(fieldId, null); return; } reader.read(holder); // TODO: error check addField(fieldId, reader.readObject().toString()); } }
@Override public void writeField() throws IOException { if (!reader.isSet()) { addField(fieldId, null); return; } reader.read(holder); // TODO: error check addField(fieldId, reader.readObject().toString()); } }
@Override public void writeField() throws IOException { if (!reader.isSet()) { addField(fieldId, null); return; } reader.read(holder); // TODO: error check addField(fieldId, reader.readObject().toString()); } }
@Override public void writeField() throws IOException { if (!reader.isSet()) { addField(fieldId, null); return; } reader.read(holder); addField(fieldId, reader.readObject().toString()); } }
public static boolean castToFloat(FieldReader reader, NullableFloat8Holder out) { Object o = reader.readObject(); if (o instanceof Number) { out.value = ((Number) o).doubleValue(); return true; } else if (o instanceof Boolean) { out.value = ((Boolean) o).booleanValue() ? 1 : 0; return true; } else if (o instanceof LocalDateTime) { out.value = toMillis((LocalDateTime) o); return true; } else if (o instanceof Text) { String s; try { s = Text.decode(((Text) o).getBytes(), 0, ((Text) o).getLength()); if (!isNumeric(s)) { return false; } out.value = Double.parseDouble(s); return true; } catch (Exception e) { // TODO: is this the best way? logger.warn("Can't decode text to FLOAT", e); return false; } } else if (o instanceof byte[]) { return false; // TODO } return false; }
public static boolean castToInteger(FieldReader reader, NullableBigIntHolder out) { Object o = reader.readObject(); if (o instanceof Number) { out.value = ((Number) o).longValue(); return true; } else if (o instanceof Boolean) { out.value = ((Boolean) o).booleanValue() ? 1 : 0; return true; } else if (o instanceof LocalDateTime) { out.value = toMillis((LocalDateTime) o); return true; } else if (o instanceof Text) { try { String s = Text.decode(((Text) o).getBytes(), 0, ((Text) o).getLength()); return parseLong(s, out); } catch (CharacterCodingException e) { // TODO: is this the best way? logger.warn("Can't decode text", e); return false; } } else if (o instanceof byte[]) { return false; // TODO } return false; }
@Override public void eval() { if (!in.isSet() || in.readObject() == null) { out.rootAsList(); return; java.util.List<?> input = (java.util.List<?>) in.readObject();