for (final FieldInfo<?> fieldValue : originalList) { mergedVisibility = DataStoreUtils.mergeVisibilities(mergedVisibility, fieldValue.getVisibility());
private static <T> FieldInfo<?> getFieldInfo( final DataWriter dataWriter, final String fieldName, final Object fieldValue, final T entry, final VisibilityWriter<T> customFieldVisibilityWriter, final boolean visibilityEnabled) { final FieldWriter fieldWriter = dataWriter.getWriter(fieldName); final FieldVisibilityHandler<T, Object> customVisibilityHandler = customFieldVisibilityWriter.getFieldVisibilityHandler(fieldName); if (fieldWriter != null) { return new FieldInfo( fieldName, fieldWriter.writeField(fieldValue), visibilityEnabled ? DataStoreUtils.mergeVisibilities( customVisibilityHandler.getVisibility(entry, fieldName, fieldValue), fieldWriter.getVisibility(entry, fieldName, fieldValue)) : new byte[0]); } else if (fieldValue != null) { LOGGER.warn( "Data writer of class " + dataWriter.getClass() + " does not support field for " + fieldValue); } return null; }
for (final Entry<String, CommonIndexValue> fieldValue : encodedData.getCommonData().getValues().entrySet()) { indexModelVisibility = DataStoreUtils.mergeVisibilities( indexModelVisibility, customFieldVisibilityWriter.getFieldVisibilityHandler(
public GeoWaveValueImpl(final GeoWaveValue[] values) { if ((values == null) || (values.length == 0)) { fieldMask = new byte[] {}; visibility = new byte[] {}; value = new byte[] {}; } else if (values.length == 1) { fieldMask = values[0].getFieldMask(); visibility = values[0].getVisibility(); value = values[0].getValue(); } else { byte[] intermediateFieldMask = values[0].getFieldMask(); byte[] intermediateVisibility = values[0].getVisibility(); byte[] intermediateValue = values[0].getValue(); for (int i = 1; i < values.length; i++) { intermediateFieldMask = BitmaskUtils.generateANDBitmask(intermediateFieldMask, values[i].getFieldMask()); intermediateVisibility = DataStoreUtils.mergeVisibilities(intermediateVisibility, values[i].getVisibility()); intermediateValue = ByteArrayUtils.combineArrays(intermediateValue, values[i].getValue()); } fieldMask = intermediateFieldMask; visibility = intermediateVisibility; value = intermediateValue; } }