@Override public <K, V> V get(final K key, final Serializer<K> keySerializer, final Deserializer<V> valueDeserializer) throws IOException { final byte[] rowIdBytes = serialize(key, keySerializer); final HBaseRowHandler handler = new HBaseRowHandler(); final List<Column> columnsList = new ArrayList<Column>(0); hBaseClientService.scan(hBaseCacheTableName, rowIdBytes, rowIdBytes, columnsList, authorizations, handler); if (handler.numRows() > 1) { throw new IOException("Found multiple rows in HBase for key"); } else if(handler.numRows() == 1) { return deserialize( handler.getLastResultBytes(), valueDeserializer); } else { return null; } }
@Override public <K> boolean containsKey(final K key, final Serializer<K> keySerializer) throws IOException { final byte[] rowIdBytes = serialize(key, keySerializer); final HBaseRowHandler handler = new HBaseRowHandler(); final List<Column> columnsList = new ArrayList<Column>(0); hBaseClientService.scan(hBaseCacheTableName, rowIdBytes, rowIdBytes, columnsList, authorizations, handler); return (handler.numRows() > 0); }
@Override public <K, V> V get(final K key, final Serializer<K> keySerializer, final Deserializer<V> valueDeserializer) throws IOException { final byte[] rowIdBytes = serialize(key, keySerializer); final HBaseRowHandler handler = new HBaseRowHandler(); final List<Column> columnsList = new ArrayList<Column>(0); hBaseClientService.scan(hBaseCacheTableName, rowIdBytes, rowIdBytes, columnsList, authorizations, handler); if (handler.numRows() > 1) { throw new IOException("Found multiple rows in HBase for key"); } else if(handler.numRows() == 1) { return deserialize( handler.getLastResultBytes(), valueDeserializer); } else { return null; } }
@Override public <K> boolean containsKey(final K key, final Serializer<K> keySerializer) throws IOException { final byte[] rowIdBytes = serialize(key, keySerializer); final HBaseRowHandler handler = new HBaseRowHandler(); final List<Column> columnsList = new ArrayList<Column>(0); hBaseClientService.scan(hBaseCacheTableName, rowIdBytes, rowIdBytes, columnsList, authorizations, handler); return (handler.numRows() > 0); }