This is an automated email from the ASF dual-hosted git repository. bchapuis pushed a commit to branch sonar in repository https://gitbox.apache.org/repos/asf/incubator-baremaps.git
commit c79d65a7436ec639e6794f63935ba27802f3ba93 Author: Bertil Chapuis <[email protected]> AuthorDate: Thu Jun 13 01:10:27 2024 +0200 Use record instead of class --- .../org/apache/baremaps/database/DiffService.java | 4 +- .../database/postgres/HeaderRepository.java | 22 ++-- .../baremaps/workflow/tasks/UpdateOsmDatabase.java | 8 +- .../database/postgres/HeaderRepositoryTest.java | 14 +-- .../workflow/tasks/ImportUpdateSampleTest.java | 10 +- .../baremaps/openstreetmap/model/Header.java | 114 +-------------------- .../baremaps/openstreetmap/OsmSampleTest.java | 2 +- 7 files changed, 35 insertions(+), 139 deletions(-) diff --git a/baremaps-core/src/main/java/org/apache/baremaps/database/DiffService.java b/baremaps-core/src/main/java/org/apache/baremaps/database/DiffService.java index cf84d3e8..4a042a2a 100644 --- a/baremaps-core/src/main/java/org/apache/baremaps/database/DiffService.java +++ b/baremaps-core/src/main/java/org/apache/baremaps/database/DiffService.java @@ -80,8 +80,8 @@ public class DiffService implements Callable<List<TileCoord>> { logger.info("Importing changes"); var header = headerRepository.selectLatest(); - var replicationUrl = header.getReplicationUrl(); - var sequenceNumber = header.getReplicationSequenceNumber() + 1; + var replicationUrl = header.replicationUrl(); + var sequenceNumber = header.replicationSequenceNumber() + 1; var changeUrl = resolve(replicationUrl, sequenceNumber, "osc.gz"); var projectionTransformer = new ProjectionTransformer(srid, 4326); diff --git a/baremaps-core/src/main/java/org/apache/baremaps/database/postgres/HeaderRepository.java b/baremaps-core/src/main/java/org/apache/baremaps/database/postgres/HeaderRepository.java index 7ff27821..d2dcfac1 100644 --- a/baremaps-core/src/main/java/org/apache/baremaps/database/postgres/HeaderRepository.java +++ b/baremaps-core/src/main/java/org/apache/baremaps/database/postgres/HeaderRepository.java @@ -232,7 +232,7 @@ public class HeaderRepository implements Repository<Long, Header> { Map<Long, Header> values = new HashMap<>(); while (result.next()) { Header value = getValue(result); - values.put(value.getReplicationSequenceNumber(), value); + values.put(value.replicationSequenceNumber(), value); } return keys.stream().map(values::get).toList(); } @@ -315,11 +315,11 @@ public class HeaderRepository implements Repository<Long, Header> { writer.writeHeader(); for (Header value : values) { writer.startRow(5); - writer.writeLong(value.getReplicationSequenceNumber()); - writer.writeLocalDateTime(value.getReplicationTimestamp()); - writer.write(value.getReplicationUrl()); - writer.write(value.getSource()); - writer.write(value.getWritingProgram()); + writer.writeLong(value.replicationSequenceNumber()); + writer.writeLocalDateTime(value.replicationTimestamp()); + writer.write(value.replicationUrl()); + writer.write(value.source()); + writer.write(value.writingProgram()); } } } catch (IOException | SQLException e) { @@ -338,10 +338,10 @@ public class HeaderRepository implements Repository<Long, Header> { } private void setValue(PreparedStatement statement, Header value) throws SQLException { - statement.setObject(1, value.getReplicationSequenceNumber()); - statement.setObject(2, value.getReplicationTimestamp()); - statement.setObject(3, value.getReplicationUrl()); - statement.setObject(4, value.getSource()); - statement.setObject(5, value.getWritingProgram()); + statement.setObject(1, value.replicationSequenceNumber()); + statement.setObject(2, value.replicationTimestamp()); + statement.setObject(3, value.replicationUrl()); + statement.setObject(4, value.source()); + statement.setObject(5, value.writingProgram()); } } diff --git a/baremaps-core/src/main/java/org/apache/baremaps/workflow/tasks/UpdateOsmDatabase.java b/baremaps-core/src/main/java/org/apache/baremaps/workflow/tasks/UpdateOsmDatabase.java index 0f4fb030..8dbd64a4 100644 --- a/baremaps-core/src/main/java/org/apache/baremaps/workflow/tasks/UpdateOsmDatabase.java +++ b/baremaps-core/src/main/java/org/apache/baremaps/workflow/tasks/UpdateOsmDatabase.java @@ -118,16 +118,16 @@ public class UpdateOsmDatabase implements Task { // If the replicationUrl is not provided, use the one from the latest header. if (replicationUrl == null) { - replicationUrl = header.getReplicationUrl(); + replicationUrl = header.replicationUrl(); } // Get the sequence number of the latest header var stateReader = new StateReader(replicationUrl, true); - var sequenceNumber = header.getReplicationSequenceNumber(); + var sequenceNumber = header.replicationSequenceNumber(); // If the replicationTimestamp is not provided, guess it from the replication timestamp. if (sequenceNumber <= 0) { - var replicationTimestamp = header.getReplicationTimestamp(); + var replicationTimestamp = header.replicationTimestamp(); var state = stateReader.getStateFromTimestamp(replicationTimestamp); if (state.isPresent()) { sequenceNumber = state.get().getSequenceNumber(); @@ -175,7 +175,7 @@ public class UpdateOsmDatabase implements Task { try (var stateInputStream = new BufferedInputStream(stateUrl.openStream())) { var state = new StateReader().read(stateInputStream); headerRepository.put(new Header(state.getSequenceNumber(), state.getTimestamp(), - header.getReplicationUrl(), header.getSource(), header.getWritingProgram())); + header.replicationUrl(), header.source(), header.writingProgram())); } } diff --git a/baremaps-core/src/test/java/org/apache/baremaps/database/postgres/HeaderRepositoryTest.java b/baremaps-core/src/test/java/org/apache/baremaps/database/postgres/HeaderRepositoryTest.java index 3897b5f5..7a1b4a4a 100644 --- a/baremaps-core/src/test/java/org/apache/baremaps/database/postgres/HeaderRepositoryTest.java +++ b/baremaps-core/src/test/java/org/apache/baremaps/database/postgres/HeaderRepositoryTest.java @@ -60,7 +60,7 @@ class HeaderRepositoryTest extends PostgresRepositoryTest { @Tag("integration") void insert() throws RepositoryException { headerRepository.put(HEADER_0); - assertEquals(HEADER_0, headerRepository.get(HEADER_0.getReplicationSequenceNumber())); + assertEquals(HEADER_0, headerRepository.get(HEADER_0.replicationSequenceNumber())); } @Test @@ -69,15 +69,15 @@ class HeaderRepositoryTest extends PostgresRepositoryTest { List<Header> headers = Arrays.asList(HEADER_0, HEADER_1, HEADER_2); headerRepository.put(headers); assertIterableEquals(headers, headerRepository.get( - headers.stream().map(Header::getReplicationSequenceNumber).toList())); + headers.stream().map(Header::replicationSequenceNumber).toList())); } @Test @Tag("integration") void delete() throws RepositoryException { headerRepository.put(HEADER_0); - headerRepository.delete(HEADER_0.getReplicationSequenceNumber()); - assertNull(headerRepository.get(HEADER_0.getReplicationSequenceNumber())); + headerRepository.delete(HEADER_0.replicationSequenceNumber()); + assertNull(headerRepository.get(HEADER_0.replicationSequenceNumber())); } @Test @@ -86,9 +86,9 @@ class HeaderRepositoryTest extends PostgresRepositoryTest { List<Header> headers = Arrays.asList(HEADER_0, HEADER_1, HEADER_2); headerRepository.put(headers); headerRepository.delete( - headers.stream().map(Header::getReplicationSequenceNumber).toList()); + headers.stream().map(Header::replicationSequenceNumber).toList()); assertIterableEquals(Arrays.asList(null, null, null), headerRepository.get( - headers.stream().map(Header::getReplicationSequenceNumber).toList())); + headers.stream().map(Header::replicationSequenceNumber).toList())); } @Test @@ -97,6 +97,6 @@ class HeaderRepositoryTest extends PostgresRepositoryTest { List<Header> headers = Arrays.asList(HEADER_0, HEADER_1, HEADER_2); headerRepository.copy(headers); assertIterableEquals(headers, headerRepository.get( - headers.stream().map(Header::getReplicationSequenceNumber).toList())); + headers.stream().map(Header::replicationSequenceNumber).toList())); } } diff --git a/baremaps-core/src/test/java/org/apache/baremaps/workflow/tasks/ImportUpdateSampleTest.java b/baremaps-core/src/test/java/org/apache/baremaps/workflow/tasks/ImportUpdateSampleTest.java index 0942ebf7..b545d990 100644 --- a/baremaps-core/src/test/java/org/apache/baremaps/workflow/tasks/ImportUpdateSampleTest.java +++ b/baremaps-core/src/test/java/org/apache/baremaps/workflow/tasks/ImportUpdateSampleTest.java @@ -67,14 +67,14 @@ class ImportUpdateSampleTest extends PostgresRepositoryTest { // Import the sample data ImportOsmPbf.execute(TestFiles.SAMPLE_OSM_PBF, coordinateMap, referenceMap, headerRepository, nodeRepository, wayRepository, relationRepository, srid); - assertEquals(0, headerRepository.selectLatest().getReplicationSequenceNumber()); + assertEquals(0, headerRepository.selectLatest().replicationSequenceNumber()); // Import the state file try (var stateInput = Files.newInputStream(TestFiles.SAMPLE_STATE_TXT)) { var state = new StateReader().read(stateInput); headerRepository.put(new Header(state.getSequenceNumber(), state.getTimestamp(), "file:///" + TestFiles.SAMPLE_DIR, "", "")); - assertEquals(1, headerRepository.selectLatest().getReplicationSequenceNumber()); + assertEquals(1, headerRepository.selectLatest().replicationSequenceNumber()); } assertGeometryEquals(NODE_POINT_1, nodeRepository.get(1L).getGeometry(), 100); assertGeometryEquals(WAY_LINESTRING_4, wayRepository.get(4L).getGeometry(), 100); @@ -89,7 +89,7 @@ class ImportUpdateSampleTest extends PostgresRepositoryTest { // Add elements to the database UpdateOsmDatabase.execute(coordinateMap, referenceMap, headerRepository, nodeRepository, wayRepository, relationRepository, srid, null); - assertEquals(2, headerRepository.selectLatest().getReplicationSequenceNumber()); + assertEquals(2, headerRepository.selectLatest().replicationSequenceNumber()); assertGeometryEquals(NODE_POINT_37, nodeRepository.get(37L).getGeometry(), 100); assertGeometryEquals(WAY_LINESTRING_40, wayRepository.get(40L).getGeometry(), 100); @@ -100,7 +100,7 @@ class ImportUpdateSampleTest extends PostgresRepositoryTest { // Modify elements in the database UpdateOsmDatabase.execute(coordinateMap, referenceMap, headerRepository, nodeRepository, wayRepository, relationRepository, srid, null); - assertEquals(3, headerRepository.selectLatest().getReplicationSequenceNumber()); + assertEquals(3, headerRepository.selectLatest().replicationSequenceNumber()); assertGeometryEquals(NODE_POINT_1_MODIFIED, nodeRepository.get(1L).getGeometry(), 100); assertGeometryEquals(WAY_LINESTRING_4_MODIFIED, wayRepository.get(4L).getGeometry(), 100); assertGeometryEquals(WAY_POLYGON_9_MODIFIED, wayRepository.get(9L).getGeometry(), 100); @@ -112,7 +112,7 @@ class ImportUpdateSampleTest extends PostgresRepositoryTest { // Delete elements from the database UpdateOsmDatabase.execute(coordinateMap, referenceMap, headerRepository, nodeRepository, wayRepository, relationRepository, srid, null); - assertEquals(4, headerRepository.selectLatest().getReplicationSequenceNumber()); + assertEquals(4, headerRepository.selectLatest().replicationSequenceNumber()); assertNull(nodeRepository.get(1L)); assertNull(nodeRepository.get(4L)); assertNull(nodeRepository.get(9L)); diff --git a/baremaps-openstreetmap/src/main/java/org/apache/baremaps/openstreetmap/model/Header.java b/baremaps-openstreetmap/src/main/java/org/apache/baremaps/openstreetmap/model/Header.java index f017220f..cf692df3 100644 --- a/baremaps-openstreetmap/src/main/java/org/apache/baremaps/openstreetmap/model/Header.java +++ b/baremaps-openstreetmap/src/main/java/org/apache/baremaps/openstreetmap/model/Header.java @@ -20,117 +20,13 @@ package org.apache.baremaps.openstreetmap.model; import java.time.LocalDateTime; -import java.util.Objects; -import java.util.StringJoiner; /** Represents a header entity in an OpenStreetMap dataset. */ public record Header( - Long replicationSequenceNumber, - LocalDateTime replicationTimestamp, - String replicationUrl, - String source, - String writingProgram -) implements Entity { + Long replicationSequenceNumber, + LocalDateTime replicationTimestamp, + String replicationUrl, + String source, + String writingProgram) implements Entity { - private final Long replicationSequenceNumber; - private final LocalDateTime replicationTimestamp; - private final String replicationUrl; - private final String source; - private final String writingProgram; - - /** - * Constructs an OpenStreetMap {@code Header} based on the specified parameters. - * - * @param replicationSequenceNumber the replication sequence number - * @param replicationTimestamp the replication timestamp - * @param replicationUrl the replication url - * @param source the source - * @param writingProgram the writing program - */ - public Header(Long replicationSequenceNumber, LocalDateTime replicationTimestamp, - String replicationUrl, String source, String writingProgram) { - this.replicationTimestamp = replicationTimestamp; - this.replicationSequenceNumber = replicationSequenceNumber; - this.replicationUrl = replicationUrl; - this.source = source; - this.writingProgram = writingProgram; - } - - /** - * Returns the replication timestamp. - * - * @return the replication timestamp - */ - public LocalDateTime getReplicationTimestamp() { - return replicationTimestamp; - } - - /** - * Returns the replication sequence number. - * - * @return the replication sequence number - */ - public Long getReplicationSequenceNumber() { - return replicationSequenceNumber; - } - - /** - * Returns the replication url. - * - * @return the replication url - */ - public String getReplicationUrl() { - return replicationUrl; - } - - /** - * Returns the source. - * - * @return the source - */ - public String getSource() { - return source; - } - - /** - * Returns the writing program. - * - * @return the writing program - */ - public String getWritingProgram() { - return writingProgram; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (!(o instanceof Header)) { - return false; - } - Header header = (Header) o; - return Objects.equals(replicationTimestamp, header.replicationTimestamp) - && Objects.equals(replicationSequenceNumber, header.replicationSequenceNumber) - && Objects.equals(replicationUrl, header.replicationUrl) - && Objects.equals(source, header.source) - && Objects.equals(writingProgram, header.writingProgram); - } - - /** {@inheritDoc} */ - @Override - public int hashCode() { - return Objects.hash(replicationTimestamp, replicationSequenceNumber, replicationUrl, source, - writingProgram); - } - - /** {@inheritDoc} */ - @Override - public String toString() { - return new StringJoiner(", ", Header.class.getSimpleName() + "[", "]") - .add("replicationTimestamp=" + replicationTimestamp) - .add("replicationSequenceNumber=" + replicationSequenceNumber) - .add("replicationUrl='" + replicationUrl + "'").add("source='" + source + "'") - .add("writingProgram='" + writingProgram + "'").toString(); - } } diff --git a/baremaps-openstreetmap/src/test/java/org/apache/baremaps/openstreetmap/OsmSampleTest.java b/baremaps-openstreetmap/src/test/java/org/apache/baremaps/openstreetmap/OsmSampleTest.java index 5d1b5d84..fdb51ca0 100644 --- a/baremaps-openstreetmap/src/test/java/org/apache/baremaps/openstreetmap/OsmSampleTest.java +++ b/baremaps-openstreetmap/src/test/java/org/apache/baremaps/openstreetmap/OsmSampleTest.java @@ -75,7 +75,7 @@ class OsmSampleTest { stream.forEach(entity -> { if (entity instanceof Header header) { Assertions.assertNotNull(header); - Assertions.assertEquals("osmium/1.16.0", header.getWritingProgram()); + Assertions.assertEquals("osmium/1.16.0", header.writingProgram()); headers.incrementAndGet(); } else if (entity instanceof Bound bound) { Assertions.assertNotNull(bound);
