@Override public Iterable<Boolean> exists(Iterable<KeyWithContext<EnrichmentKey, HBaseContext>> key, boolean logAccess) throws IOException { List<Boolean> ret = new ArrayList<>(); if(Iterables.isEmpty(key)) { return Collections.emptyList(); } HTableInterface table = Iterables.getFirst(key, null).getContext().getTable(); for(boolean b : table.existsAll(keysToGets(key))) { ret.add(b); } return ret; }
@Override public Iterable<LookupKV<EnrichmentKey, EnrichmentValue>> get( Iterable<KeyWithContext<EnrichmentKey, HBaseContext>> keys , boolean logAccess ) throws IOException { if(Iterables.isEmpty(keys)) { return Collections.emptyList(); } HTableInterface table = Iterables.getFirst(keys, null).getContext().getTable(); List<LookupKV<EnrichmentKey, EnrichmentValue>> ret = new ArrayList<>(); Iterator<KeyWithContext<EnrichmentKey, HBaseContext>> keyWithContextIterator = keys.iterator(); for(Result result : table.get(keysToGets(keys))) { HBaseContext context = keyWithContextIterator.next().getContext(); ret.add(converter.fromResult(result, getColumnFamily(context))); } return ret; }
@Override public boolean exists(EnrichmentKey key, HBaseContext context, boolean logAccess) throws IOException { return context.getTable().exists(converter.toGet(getColumnFamily(context), key)); }
@Override public LookupKV<EnrichmentKey, EnrichmentValue> get(EnrichmentKey key, HBaseContext context, boolean logAccess) throws IOException { return converter.fromResult(context.getTable().get(converter.toGet(getColumnFamily(context), key)), getColumnFamily(context)); }