public static <T> byte[] getValueBytes(final ToBytesSerialiser<T> serialiser, final T value) throws SerialisationException { final byte[] valueBytes; if (null == serialiser) { valueBytes = EMPTY_BYTES; } else if (null == value) { valueBytes = serialiser.serialiseNull(); } else { valueBytes = serialiser.serialise(value); } return valueBytes; }
public static <T> byte[] getValueBytes(final ToBytesSerialiser<T> serialiser, final T value) throws SerialisationException { final byte[] valueBytes; if (null == serialiser) { valueBytes = EMPTY_BYTES; } else if (null == value) { valueBytes = serialiser.serialiseNull(); } else { valueBytes = serialiser.serialise(value); } return valueBytes; }
protected void serialiseSizeAndPropertyValue(final String propertyName, final SchemaElementDefinition elementDefinition, final Properties properties, final ByteArrayOutputStream stream) { try { final TypeDefinition typeDefinition = elementDefinition.getPropertyTypeDef(propertyName); final ToBytesSerialiser serialiser = (null == typeDefinition) ? null : (ToBytesSerialiser) typeDefinition.getSerialiser(); byte[] bytes; if (null == serialiser) { bytes = AccumuloStoreConstants.EMPTY_BYTES; } else { Object value = properties.get(propertyName); //serialiseNull could be different to AccumuloStoreConstants.EMPTY_BYTES bytes = (null == value) ? serialiser.serialiseNull() : serialiser.serialise(value); } writeBytes(bytes, stream); } catch (final IOException e) { throw new AccumuloElementConversionException("Failed to write serialised property to ByteArrayOutputStream" + propertyName, e); } }
@Override public byte[] buildColumnVisibility(final String group, final Properties properties) { byte[] rtn = AccumuloStoreConstants.EMPTY_BYTES; final SchemaElementDefinition elementDefinition = getSchemaElementDefinition(group); if (null != schema.getVisibilityProperty()) { final TypeDefinition propertyDef = elementDefinition.getPropertyTypeDef(schema.getVisibilityProperty()); if (null != propertyDef) { final Object property = properties.get(schema.getVisibilityProperty()); final ToBytesSerialiser serialiser = (ToBytesSerialiser) propertyDef.getSerialiser(); if (null != property) { try { rtn = serialiser.serialise(property); } catch (final SerialisationException e) { throw new AccumuloElementConversionException(e.getMessage(), e); } } else { rtn = serialiser.serialiseNull(); } } } return rtn; }