package mil.nga.giat.geowave.core.store.adapter.statistics; import mil.nga.giat.geowave.core.store.EntryVisibilityHandler; import mil.nga.giat.geowave.core.store.base.DataStoreEntryInfo; import mil.nga.giat.geowave.core.store.base.DataStoreEntryInfo.FieldInfo; public class FieldTypeStatisticVisibility<T> implements EntryVisibilityHandler<T> { private final Class<?> fieldType; public FieldTypeStatisticVisibility( final Class<?> fieldType ) { this.fieldType = fieldType; } @Override public byte[] getVisibility( final DataStoreEntryInfo entryInfo, final T entry ) { for (final FieldInfo<?> f : entryInfo.getFieldInfo()) { if ((f.getDataValue().getValue() != null) && fieldType.isAssignableFrom(f.getDataValue().getValue().getClass())) { return f.getVisibility(); } } return null; } }