public V getValue(IndexItem<K> index) { try { DataBlock dataBlock = NAME_BLOCK_MAP.get(index.getFileId()); if (dataBlock == null) { return null; } byte[] data = dataBlock.readData(index.getFromIndex(), index.getLength()); UnsafeByteArrayInputStream is = new UnsafeByteArrayInputStream(data); DataEntry<K, V> dataEntry = serializer.deserialize(is, new TypeReference<DataEntry<K, V>>() { }.getType()); return dataEntry.getValue(); } catch (Exception e) { throw new DBException("Read data error: " + e.getMessage(), e); } }
public V getValue(IndexItem<K> index) { try { DataBlock dataBlock = NAME_BLOCK_MAP.get(index.getFileId()); if (dataBlock == null) { return null; } byte[] data = dataBlock.readData(index.getFromIndex(), index.getLength()); UnsafeByteArrayInputStream is = new UnsafeByteArrayInputStream(data); DataEntry<K, V> dataEntry = serializer.deserialize(is, new TypeReference<DataEntry<K, V>>() { }.getType()); return dataEntry.getValue(); } catch (Exception e) { throw new DBException("Read data error: " + e.getMessage(), e); } }
indexMap = serializer.deserialize(is, new TypeReference<ConcurrentSkipListMap<K, IndexItem<K>>>() { }.getType());
indexMap = serializer.deserialize(is, new TypeReference<ConcurrentSkipListMap<K, IndexItem<K>>>() { }.getType());
public V getValue(IndexItem<K> index) { try { DataBlock dataBlock = NAME_BLOCK_MAP.get(index.getFileId()); if (dataBlock == null) { return null; } byte[] data = dataBlock.readData(index.getFromIndex(), index.getLength()); UnsafeByteArrayInputStream is = new UnsafeByteArrayInputStream(data); DataEntry<K, V> dataEntry = serializer.deserialize(is, new TypeReference<DataEntry<K, V>>() { }.getType()); return dataEntry.getValue(); } catch (Exception e) { throw new DBException("Read data error: " + e.getMessage(), e); } }
indexMap = serializer.deserialize(is, new TypeReference<ConcurrentSkipListMap<K, IndexItem<K>>>() { }.getType());