private Map<MultiChunkId, MultiChunkEntry> createMultiChunkEntriesWithoutChunks(ResultSet resultSet) throws SQLException { Map<MultiChunkId, MultiChunkEntry> unusedMultiChunkIds = new HashMap<MultiChunkId, MultiChunkEntry>(); while (resultSet.next()) { MultiChunkId multiChunkId = MultiChunkId.parseMultiChunkId(resultSet.getString("id")); long multiChunkSize = resultSet.getLong("size"); unusedMultiChunkIds.put(multiChunkId, new MultiChunkEntry(multiChunkId, multiChunkSize)); } return unusedMultiChunkIds; }
public List<MultiChunkId> getDirtyMultiChunkIds() { List<MultiChunkId> dirtyMultiChunkIds = new ArrayList<MultiChunkId>(); try (PreparedStatement preparedStatement = getStatement("multichunk.select.dirty.getDirtyMultiChunkIds.sql")) { try (ResultSet resultSet = preparedStatement.executeQuery()) { while (resultSet.next()) { dirtyMultiChunkIds.add(MultiChunkId.parseMultiChunkId(resultSet.getString("multichunk_id"))); } return dirtyMultiChunkIds; } } catch (SQLException e) { throw new RuntimeException(e); } }
while (resultSet.next()) { result.put(ChunkChecksum.parseChunkChecksum(resultSet.getString("chunk_checksum")), MultiChunkId.parseMultiChunkId(resultSet.getString("multichunk_id")));
MultiChunkId multiChunkId = MultiChunkId.parseMultiChunkId(multChunkIdStr); long size = Long.parseLong(attributes.getValue("size"));
/** * Note: This method selects also {@link DatabaseVersionStatus#DIRTY DIRTY}. */ public List<MultiChunkId> getMultiChunkIds(FileChecksum fileChecksum) { List<MultiChunkId> multiChunkIds = new ArrayList<MultiChunkId>(); if (fileChecksum == null) { return multiChunkIds; } else { try (PreparedStatement preparedStatement = getStatement("multichunk.select.all.getMultiChunkIdsForFileChecksum.sql")) { preparedStatement.setString(1, fileChecksum.toString()); try (ResultSet resultSet = preparedStatement.executeQuery()) { while (resultSet.next()) { multiChunkIds.add(MultiChunkId.parseMultiChunkId(resultSet.getString("multichunk_id"))); } return multiChunkIds; } } catch (SQLException e) { throw new RuntimeException(e); } } }
private Map<MultiChunkId, MultiChunkEntry> createMultiChunkEntriesWithChunks(ResultSet resultSet) throws SQLException { Map<MultiChunkId, MultiChunkEntry> multiChunkEntries = new HashMap<MultiChunkId, MultiChunkEntry>(); MultiChunkId currentMultiChunkId = null; while (resultSet.next()) { MultiChunkId multiChunkId = MultiChunkId.parseMultiChunkId(resultSet.getString("multichunk_id")); long multiChunkSize = resultSet.getLong("size"); MultiChunkEntry multiChunkEntry = null; if (currentMultiChunkId != null && currentMultiChunkId.equals(multiChunkId)) { multiChunkEntry = multiChunkEntries.get(multiChunkId); } else { multiChunkEntry = new MultiChunkEntry(multiChunkId, multiChunkSize); } multiChunkEntry.addChunk(ChunkChecksum.parseChunkChecksum(resultSet.getString("chunk_checksum"))); multiChunkEntries.put(multiChunkId, multiChunkEntry); currentMultiChunkId = multiChunkId; } return multiChunkEntries; } }
/** * Note: This method selects also {@link DatabaseVersionStatus#DIRTY DIRTY}. */ public MultiChunkId getMultiChunkId(ChunkChecksum chunkChecksum) { try (PreparedStatement preparedStatement = getStatement("multichunk.select.all.getMultiChunkIdForChunk.sql")) { preparedStatement.setString(1, chunkChecksum.toString()); try (ResultSet resultSet = preparedStatement.executeQuery()) { if (resultSet.next()) { return MultiChunkId.parseMultiChunkId(resultSet.getString("multichunk_id")); } } return null; } catch (SQLException e) { throw new RuntimeException(e); } }