public static SortedKeyValueIterator<Key,Value> wrap(SortedKeyValueIterator<Key,Value> source, Authorizations authorizations, byte[] defaultVisibility) { if (authorizations.isEmpty() && defaultVisibility.length == 0) { return new EmptyAuthsVisibilityFilter(source); } else { return new VisibilityFilter(source, authorizations, defaultVisibility); } } }
@Override public synchronized SortedKeyValueIterator<Key,Value> deepCopy(IteratorEnvironment env) { return new VisibilityFilter(source.deepCopy(env), authorizations, defaultVisibility.toArray()); }
public static SortedKeyValueIterator<Key,Value> wrap(SortedKeyValueIterator<Key,Value> source, Authorizations authorizations, byte[] defaultVisibility) { if (authorizations.isEmpty() && defaultVisibility.length == 0) { return new EmptyAuthsVisibilityFilter(source); } else { return new VisibilityFilter(source, authorizations, defaultVisibility); } } }
@Override public SortedKeyValueIterator<Key,Value> deepCopy(IteratorEnvironment env) { return new VisibilityFilter(getSource().deepCopy(env), authorizations, defaultVisibility.toArray()); }
private SortedKeyValueIterator<Key,Value> createSystemIter(Range r, List<SortedKeyValueIterator<Key,Value>> readers, HashSet<Column> columns) throws IOException { MultiIterator multiIterator = new MultiIterator(readers, false); DeletingIterator delIter = new DeletingIterator(multiIterator, false); ColumnFamilySkippingIterator cfsi = new ColumnFamilySkippingIterator(delIter); ColumnQualifierFilter colFilter = new ColumnQualifierFilter(cfsi, columns); VisibilityFilter visFilter = new VisibilityFilter(colFilter, Constants.NO_AUTHS, new byte[0]); visFilter.seek(r, LocalityGroupUtil.EMPTY_CF_SET, false); VersioningIterator vi = new VersioningIterator(); Map<String,String> opts = new HashMap<String,String>(); opts.put("maxVersions", "1"); vi.init(visFilter, opts, null); return vi; }
final VisibilityFilter visibilityFilter = new VisibilityFilter(mergedIterator, authorizations, new byte[]{}); final IteratorSetting visibilityIteratorSetting = new IteratorSetting(1, "auth", VisibilityFilter.class); visibilityFilter.init(mergedIterator, visibilityIteratorSetting.getOptions(), null);
VisibilityFilter visFilter = new VisibilityFilter(colFilter, options.authorizations, options.defaultLabels);