@Override public void writeValue(RandomAccessOutput dest) throws SerDeException { LazyBinarySerDe.serializeStruct(dest, valObjs, valOis); }
public static void serializeStruct(RandomAccessOutput byteStream, Object[] fieldData, List<ObjectInspector> fieldOis) throws SerDeException { serializeStruct(byteStream, fieldData, fieldOis, null); }
@Override public void writeKey(RandomAccessOutput dest) throws SerDeException { LazyBinarySerDe.serializeStruct(dest, keyObjs, keyOis); }
@Override public void writeKey(RandomAccessOutput dest) throws SerDeException { LazyBinarySerDe.serializeStruct(dest, keyObjs, keyOis); }
@Override public void writeValue(RandomAccessOutput dest) throws SerDeException { LazyBinarySerDe.serializeStruct(dest, valObjs, valOis); }
private static void serializeStruct(RandomAccessOutput byteStream, Object obj, StructObjectInspector soi, BooleanRef warnedOnceNullMapKey) throws SerDeException { // do nothing for null struct if (null == obj) { return; } List<? extends StructField> fields = soi.getAllStructFieldRefs(); int size = fields.size(); Object[] fieldData = new Object[size]; List<ObjectInspector> fieldOis = new ArrayList<ObjectInspector>(size); for (int i = 0; i < size; ++i) { StructField field = fields.get(i); fieldData[i] = soi.getStructFieldData(obj, field); fieldOis.add(field.getFieldObjectInspector()); } serializeStruct(byteStream, fieldData, fieldOis, warnedOnceNullMapKey); }
/** * Serialize an object to a byte buffer in a binary compact way. */ @Override public Writable serialize(Object obj, ObjectInspector objInspector) throws SerDeException { // make sure it is a struct record if (objInspector.getCategory() != Category.STRUCT) { throw new SerDeException(getClass().toString() + " can only serialize struct types, but we got: " + objInspector.getTypeName()); } serializeByteStream.reset(); // serialize the row as a struct serializeStruct(serializeByteStream, obj, (StructObjectInspector) objInspector, nullMapKey); // return the serialized bytes serializeBytesWritable.set(serializeByteStream.getData(), 0, serializeByteStream.getLength()); serializedSize = serializeByteStream.getLength(); lastOperationSerialize = true; lastOperationDeserialize = false; return serializeBytesWritable; }
/** * Serializes row to output. * @param byteStream Output to reuse. Can be null, in that case a new one would be created. */ public static Output serializeRow(Output byteStream, Object[] fieldData, List<ObjectInspector> fieldOis, boolean[] sortableSortOrders, byte[] nullMarkers, byte[] notNullMarkers) throws HiveException { if (byteStream == null) { byteStream = new Output(); } else { byteStream.reset(); } try { if (fieldData.length == 0) { byteStream.reset(); } else if (sortableSortOrders == null) { LazyBinarySerDe.serializeStruct(byteStream, fieldData, fieldOis); } else { BinarySortableSerDe.serializeStruct(byteStream, fieldData, fieldOis, sortableSortOrders, nullMarkers, notNullMarkers); } } catch (SerDeException e) { throw new HiveException("Serialization error", e); } return byteStream; }
/** * Serializes row to output. * @param byteStream Output to reuse. Can be null, in that case a new one would be created. */ public static Output serializeRow(Output byteStream, Object[] fieldData, List<ObjectInspector> fieldOis, boolean[] sortableSortOrders, byte[] nullMarkers, byte[] notNullMarkers) throws HiveException { if (byteStream == null) { byteStream = new Output(); } else { byteStream.reset(); } try { if (fieldData.length == 0) { byteStream.reset(); } else if (sortableSortOrders == null) { LazyBinarySerDe.serializeStruct(byteStream, fieldData, fieldOis); } else { BinarySortableSerDe.serializeStruct(byteStream, fieldData, fieldOis, sortableSortOrders, nullMarkers, notNullMarkers); } } catch (SerDeException e) { throw new HiveException("Serialization error", e); } return byteStream; } }
serializeStruct(byteStream, obj, (StructObjectInspector) objInspector, warnedOnceNullMapKey); } else {
public static void serializeStruct(RandomAccessOutput byteStream, Object[] fieldData, List<ObjectInspector> fieldOis) throws SerDeException { serializeStruct(byteStream, fieldData, fieldOis, null); }
public static void serializeStruct(RandomAccessOutput byteStream, Object[] fieldData, List<ObjectInspector> fieldOis) throws SerDeException { serializeStruct(byteStream, fieldData, fieldOis, null); }
@Override public void writeKey(RandomAccessOutput dest) throws SerDeException { LazyBinarySerDe.serializeStruct(dest, keyObjs, keyOis); }
@Override public void writeValue(RandomAccessOutput dest) throws SerDeException { LazyBinarySerDe.serializeStruct(dest, valObjs, valOis); }
public static void serializeStruct(RandomAccessOutput byteStream, Object[] fieldData, List<ObjectInspector> fieldOis) throws SerDeException { serializeStruct(byteStream, fieldData, fieldOis, null); }
public static void serializeStruct(RandomAccessOutput byteStream, Object[] fieldData, List<ObjectInspector> fieldOis) throws SerDeException { serializeStruct(byteStream, fieldData, fieldOis, null); }
private static void serializeStruct(RandomAccessOutput byteStream, Object obj, StructObjectInspector soi, BooleanRef warnedOnceNullMapKey) throws SerDeException { // do nothing for null struct if (null == obj) { return; } List<? extends StructField> fields = soi.getAllStructFieldRefs(); int size = fields.size(); Object[] fieldData = new Object[size]; List<ObjectInspector> fieldOis = new ArrayList<ObjectInspector>(size); for (int i = 0; i < size; ++i) { StructField field = fields.get(i); fieldData[i] = soi.getStructFieldData(obj, field); fieldOis.add(field.getFieldObjectInspector()); } serializeStruct(byteStream, fieldData, fieldOis, warnedOnceNullMapKey); }
private static void serializeStruct(RandomAccessOutput byteStream, Object obj, StructObjectInspector soi, BooleanRef warnedOnceNullMapKey) throws SerDeException { // do nothing for null struct if (null == obj) { return; } List<? extends StructField> fields = soi.getAllStructFieldRefs(); int size = fields.size(); Object[] fieldData = new Object[size]; List<ObjectInspector> fieldOis = new ArrayList<ObjectInspector>(size); for (int i = 0; i < size; ++i) { StructField field = fields.get(i); fieldData[i] = soi.getStructFieldData(obj, field); fieldOis.add(field.getFieldObjectInspector()); } serializeStruct(byteStream, fieldData, fieldOis, warnedOnceNullMapKey); }
private static void serializeStruct(RandomAccessOutput byteStream, Object obj, StructObjectInspector soi, BooleanRef warnedOnceNullMapKey) throws SerDeException { // do nothing for null struct if (null == obj) { return; } List<? extends StructField> fields = soi.getAllStructFieldRefs(); int size = fields.size(); Object[] fieldData = new Object[size]; List<ObjectInspector> fieldOis = new ArrayList<ObjectInspector>(size); for (int i = 0; i < size; ++i) { StructField field = fields.get(i); fieldData[i] = soi.getStructFieldData(obj, field); fieldOis.add(field.getFieldObjectInspector()); } serializeStruct(byteStream, fieldData, fieldOis, warnedOnceNullMapKey); }
private static void serializeStruct(RandomAccessOutput byteStream, Object obj, StructObjectInspector soi, BooleanRef warnedOnceNullMapKey) throws SerDeException { // do nothing for null struct if (null == obj) { return; } List<? extends StructField> fields = soi.getAllStructFieldRefs(); int size = fields.size(); Object[] fieldData = new Object[size]; List<ObjectInspector> fieldOis = new ArrayList<ObjectInspector>(size); for (int i = 0; i < size; ++i) { StructField field = fields.get(i); fieldData[i] = soi.getStructFieldData(obj, field); fieldOis.add(field.getFieldObjectInspector()); } serializeStruct(byteStream, fieldData, fieldOis, warnedOnceNullMapKey); }