diff --git a/pom.xml b/pom.xml
index 023925c..b5441c1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.7.18
+ 3.4.1
osm.surveyor.plateau
@@ -15,7 +15,7 @@
task-bldg
TaskingManager for Plateau BLDG
- 11
+ 17
@@ -106,7 +106,6 @@
com.h2database
h2
- 1.4.200
runtime
@@ -114,7 +113,6 @@
org.junit.jupiter
junit-jupiter-api
- 5.11.4
test
diff --git a/src/main/java/osm/surveyor/task/StringTableGenerator.java b/src/main/java/osm/surveyor/task/StringTableGenerator.java
deleted file mode 100644
index 9f66385..0000000
--- a/src/main/java/osm/surveyor/task/StringTableGenerator.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package osm.surveyor.task;
-
-import java.io.Serializable;
-import java.util.Properties;
-
-import org.hibernate.MappingException;
-import org.hibernate.engine.spi.SharedSessionContractImplementor;
-import org.hibernate.id.enhanced.TableGenerator;
-import org.hibernate.service.ServiceRegistry;
-import org.hibernate.type.BigDecimalType;
-import org.hibernate.type.Type;
-
-/**
- * TableGenerator (文字列カラム対応)
- */
-public class StringTableGenerator extends TableGenerator {
-
- @Override
- public void configure(Type type, Properties params, ServiceRegistry serviceRegistry) throws MappingException {
- super.configure(new BigDecimalType() , params, serviceRegistry);
- }
-
- @Override
- public Serializable generate(SharedSessionContractImplementor session, Object obj) {
- return super.generate(session, obj).toString();
- }
-
-}
\ No newline at end of file
diff --git a/src/main/java/osm/surveyor/task/city/CityRepository.java b/src/main/java/osm/surveyor/task/city/CityRepository.java
index c3bfc90..52ba73e 100644
--- a/src/main/java/osm/surveyor/task/city/CityRepository.java
+++ b/src/main/java/osm/surveyor/task/city/CityRepository.java
@@ -2,9 +2,8 @@
import java.util.List;
-import javax.transaction.Transactional;
-
import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.transaction.annotation.Transactional;
import osm.surveyor.task.city.model.City;
diff --git a/src/main/java/osm/surveyor/task/city/DataLoader.java b/src/main/java/osm/surveyor/task/city/DataLoader.java
index 8895a3b..1010159 100644
--- a/src/main/java/osm/surveyor/task/city/DataLoader.java
+++ b/src/main/java/osm/surveyor/task/city/DataLoader.java
@@ -70,7 +70,7 @@
RestTemplate restTemplate = new RestTemplate();
System.out.println(String.format("INFO: httpGet(%s)", url));
ResponseEntity response = restTemplate.exchange(url, HttpMethod.GET, null, String.class);
- HttpStatus httpStatus = response.getStatusCode();
+ HttpStatus httpStatus = (HttpStatus) response.getStatusCode();
if (httpStatus.isError()) {
System.out.println("ERROE: Can not access '"+ url +"'");
throw new Exception("ERROE: Can not access '"+ url +"'");
diff --git a/src/main/java/osm/surveyor/task/city/model/City.java b/src/main/java/osm/surveyor/task/city/model/City.java
index 199981e..5cc2b0d 100644
--- a/src/main/java/osm/surveyor/task/city/model/City.java
+++ b/src/main/java/osm/surveyor/task/city/model/City.java
@@ -2,18 +2,17 @@
import java.math.BigDecimal;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.Id;
-import javax.persistence.Table;
-import javax.validation.constraints.NotBlank;
-
+import org.springframework.data.annotation.Id;
import org.springframework.format.annotation.NumberFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.Table;
+import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import osm.surveyor.task.util.Point;
diff --git a/src/main/java/osm/surveyor/task/index/IndexController.java b/src/main/java/osm/surveyor/task/index/IndexController.java
index 512973d..56bc5ea 100644
--- a/src/main/java/osm/surveyor/task/index/IndexController.java
+++ b/src/main/java/osm/surveyor/task/index/IndexController.java
@@ -19,7 +19,7 @@
RestTemplate restTemplate = new RestTemplate();
System.out.println(String.format("INFO: httpGet(%s)", url));
ResponseEntity response = restTemplate.exchange(url, HttpMethod.GET, null, String.class);
- HttpStatus httpStatus = response.getStatusCode();
+ HttpStatus httpStatus = (HttpStatus) response.getStatusCode();
if (httpStatus.isError()) {
System.out.println("ERROE: Can not access '"+ url +"'");
throw new Exception("ERROE: Can not access '"+ url +"'");
diff --git a/src/main/java/osm/surveyor/task/mesh/model/Citymesh.java b/src/main/java/osm/surveyor/task/mesh/model/Citymesh.java
index ef0f96c..980fd88 100644
--- a/src/main/java/osm/surveyor/task/mesh/model/Citymesh.java
+++ b/src/main/java/osm/surveyor/task/mesh/model/Citymesh.java
@@ -1,18 +1,17 @@
package osm.surveyor.task.mesh.model;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.Id;
-import javax.persistence.IdClass;
-import javax.persistence.ManyToOne;
-import javax.validation.constraints.NotBlank;
-
+import org.springframework.data.annotation.Id;
import org.springframework.format.annotation.NumberFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.IdClass;
+import jakarta.persistence.ManyToOne;
+import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import osm.surveyor.task.city.model.City;
import osm.surveyor.task.city.model.Status;
diff --git a/src/main/java/osm/surveyor/task/mesh/model/CitymeshPK.java b/src/main/java/osm/surveyor/task/mesh/model/CitymeshPK.java
index ed5145a..32dfcaa 100644
--- a/src/main/java/osm/surveyor/task/mesh/model/CitymeshPK.java
+++ b/src/main/java/osm/surveyor/task/mesh/model/CitymeshPK.java
@@ -2,8 +2,7 @@
import java.io.Serializable;
-import javax.persistence.Embeddable;
-
+import jakarta.persistence.Embeddable;
import lombok.Getter;
import lombok.Setter;
diff --git a/src/main/java/osm/surveyor/task/plateau/PlateauBean.java b/src/main/java/osm/surveyor/task/plateau/PlateauBean.java
new file mode 100644
index 0000000..ed443cf
--- /dev/null
+++ b/src/main/java/osm/surveyor/task/plateau/PlateauBean.java
@@ -0,0 +1,16 @@
+package osm.surveyor.task.plateau;
+
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+@Component
+public class PlateauBean {
+
+ @Value("${app.plateau.dir}")
+ private String plateauDirName;
+
+ public String getPlateauDirName() {
+ return plateauDirName;
+ }
+
+}
diff --git a/src/main/java/osm/surveyor/task/task/TaskController.java b/src/main/java/osm/surveyor/task/task/TaskController.java
index ad39933..b83fdd3 100644
--- a/src/main/java/osm/surveyor/task/task/TaskController.java
+++ b/src/main/java/osm/surveyor/task/task/TaskController.java
@@ -5,8 +5,6 @@
import java.util.List;
import java.util.UUID;
-import javax.servlet.http.HttpServletResponse;
-
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Controller;
@@ -22,6 +20,7 @@
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
+import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import osm.surveyor.task.city.CityRepository;
import osm.surveyor.task.city.CityService;
diff --git a/src/main/java/osm/surveyor/task/task/TaskService.java b/src/main/java/osm/surveyor/task/task/TaskService.java
index 01b3b59..e550f5b 100644
--- a/src/main/java/osm/surveyor/task/task/TaskService.java
+++ b/src/main/java/osm/surveyor/task/task/TaskService.java
@@ -3,6 +3,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import jakarta.transaction.Transactional;
import osm.surveyor.task.city.ConflictException;
import osm.surveyor.task.city.NotAcceptableException;
import osm.surveyor.task.city.model.Operation;
@@ -12,8 +13,6 @@
import osm.surveyor.task.mesh.model.CitymeshPK;
import osm.surveyor.task.task.model.TaskEntity;
-import javax.transaction.Transactional;
-
import java.util.Date;
import java.util.List;
import java.util.UUID;
diff --git a/src/main/java/osm/surveyor/task/task/model/TaskEntity.java b/src/main/java/osm/surveyor/task/task/model/TaskEntity.java
index bcc4bb4..49814c4 100644
--- a/src/main/java/osm/surveyor/task/task/model/TaskEntity.java
+++ b/src/main/java/osm/surveyor/task/task/model/TaskEntity.java
@@ -2,20 +2,19 @@
import java.util.Date;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.Id;
-import javax.persistence.ManyToOne;
-import javax.persistence.Temporal;
-import javax.persistence.TemporalType;
-import javax.validation.constraints.NotBlank;
-
import org.springframework.format.annotation.NumberFormat;
import com.fasterxml.jackson.databind.JsonNode;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.EnumType;
+import jakarta.persistence.Enumerated;
+import jakarta.persistence.Id;
+import jakarta.persistence.ManyToOne;
+import jakarta.persistence.Temporal;
+import jakarta.persistence.TemporalType;
+import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import lombok.EqualsAndHashCode;
import osm.surveyor.task.city.model.Operation;
diff --git a/src/main/java/osm/surveyor/task/task/model/TaskPK.java b/src/main/java/osm/surveyor/task/task/model/TaskPK.java
index a712fea..92e419c 100644
--- a/src/main/java/osm/surveyor/task/task/model/TaskPK.java
+++ b/src/main/java/osm/surveyor/task/task/model/TaskPK.java
@@ -2,8 +2,7 @@
import java.io.Serializable;
-import javax.persistence.Embeddable;
-
+import jakarta.persistence.Embeddable;
import lombok.Getter;
import lombok.Setter;
diff --git a/src/main/java/osm/surveyor/task/task/model/TaskStatusEntity.java b/src/main/java/osm/surveyor/task/task/model/TaskStatusEntity.java
index 15bf4a7..7d7b25b 100644
--- a/src/main/java/osm/surveyor/task/task/model/TaskStatusEntity.java
+++ b/src/main/java/osm/surveyor/task/task/model/TaskStatusEntity.java
@@ -1,12 +1,11 @@
package osm.surveyor.task.task.model;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.Table;
-
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
+import jakarta.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
diff --git a/src/main/java/osm/surveyor/task/util/Point.java b/src/main/java/osm/surveyor/task/util/Point.java
index 0899d1d..eddfe1e 100644
--- a/src/main/java/osm/surveyor/task/util/Point.java
+++ b/src/main/java/osm/surveyor/task/util/Point.java
@@ -4,12 +4,11 @@
import java.util.ArrayList;
import java.util.List;
-import javax.validation.constraints.NotBlank;
-
import org.springframework.format.annotation.NumberFormat;
import com.fasterxml.jackson.databind.JsonNode;
+import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import lombok.EqualsAndHashCode;
diff --git a/src/main/java/osm/surveyor/task/util/UuidGenerator.java b/src/main/java/osm/surveyor/task/util/UuidGenerator.java
index 8f39927..5508925 100644
--- a/src/main/java/osm/surveyor/task/util/UuidGenerator.java
+++ b/src/main/java/osm/surveyor/task/util/UuidGenerator.java
@@ -8,11 +8,12 @@
public class UuidGenerator extends IdentityGenerator{
+ private static final long serialVersionUID = 1L;
+
/**
* UUIDを生成し返却する
*/
- @Override
- public Serializable generate(SharedSessionContractImplementor session, Object obj) {
+ public Serializable generate(SharedSessionContractImplementor session, Object obj) {
return UUID.randomUUID().toString();
}
}
diff --git a/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/src/main/resources/META-INF/additional-spring-configuration-metadata.json
new file mode 100644
index 0000000..6cf7734
--- /dev/null
+++ b/src/main/resources/META-INF/additional-spring-configuration-metadata.json
@@ -0,0 +1,22 @@
+{"properties": [
+ {
+ "name": "task-bldg.osm-data.url",
+ "type": "java.lang.String",
+ "description": "A description for 'task-bldg.osm-data.url'"
+ },
+ {
+ "name": "app.plateau.dir",
+ "type": "java.lang.String",
+ "description": "A description for 'app.plateau.dir'"
+ },
+ {
+ "name": "app.plateau.dir",
+ "type": "java.lang.String",
+ "description": "A description for 'app.plateau.dir'"
+ },
+ {
+ "name": "app.osm-data.url",
+ "type": "java.lang.String",
+ "description": "A description for 'app.osm-data.url'"
+ }
+]}
\ No newline at end of file
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 060effe..b4de028 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -19,5 +19,5 @@
spring.jpa.hibernate.ddl-auto=update
# task-bldg orignal properties
-task-bldg.osm-data.url=http://surveyor.mydns.jp/osm-data
-task-bldg.plateau.dir=plateau-data
+app.osm-data.url=http://surveyor.mydns.jp/osm-data
+app.plateau.dir=plateau-data
diff --git a/src/test/java/osm/surveyor/task/plateau/PlateauBeanTest.java b/src/test/java/osm/surveyor/task/plateau/PlateauBeanTest.java
new file mode 100644
index 0000000..77c7c33
--- /dev/null
+++ b/src/test/java/osm/surveyor/task/plateau/PlateauBeanTest.java
@@ -0,0 +1,42 @@
+package osm.surveyor.task.plateau;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.DisplayName;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@SpringBootTest
+class PlateauBeanTest {
+
+ @Autowired
+ PlateauBean bean;
+
+ @BeforeAll
+ static void setUpBeforeClass() throws Exception {
+ }
+
+ @AfterAll
+ static void tearDownAfterClass() throws Exception {
+ }
+
+ @BeforeEach
+ void setUp() throws Exception {
+ }
+
+ @AfterEach
+ void tearDown() throws Exception {
+ }
+
+ @Test
+ @DisplayName("'app.plateau.dir'を読み取れる")
+ void testGetPlateauDirName() {
+ assertEquals("plateau-data", bean.getPlateauDirName());
+ //fail("まだ実装されていません");
+ }
+}
diff --git a/src/test/java/osm/surveyor/task/plateau/PlateauControllerTest.java b/src/test/java/osm/surveyor/task/plateau/PlateauControllerTest.java
deleted file mode 100644
index 81852a4..0000000
--- a/src/test/java/osm/surveyor/task/plateau/PlateauControllerTest.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package osm.surveyor.task.plateau;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
-import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.header;
-import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.nio.file.Files;
-import java.nio.file.Path;
-
-import org.junit.jupiter.api.AfterAll;
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeAll;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.DisplayName;
-import org.junit.jupiter.api.Test;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.autoconfigure.web.client.AutoConfigureWebClient;
-import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.boot.test.mock.mockito.MockBean;
-import org.springframework.core.io.ClassPathResource;
-import org.springframework.http.HttpHeaders;
-import org.springframework.test.web.servlet.MockMvc;
-import org.springframework.test.web.servlet.MvcResult;
-import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
-import org.springframework.util.FileSystemUtils;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-@SpringBootTest
-@WebMvcTest(PlateauController.class)
-class PlateauControllerTest {
-
- @Autowired
- private MockMvc mvc;
- private final String rootUrl = "/plateau";
- private static final String dirStr = "plateau-data"; // task-bldg.plateau.dir=plateau-data
-
- @BeforeAll
- static void setUpBeforeClass() throws Exception {
- Path dir = Path.of(dirStr);
- FileSystemUtils.deleteRecursively(dir);
- }
-
- @AfterAll
- static void tearDownAfterClass() throws Exception {
- }
-
- @BeforeEach
- void setUp() throws Exception {
- }
-
- @AfterEach
- void tearDown() throws Exception {
- }
-
- @Test
- @DisplayName("'./plateau/01100' is Sapporo 2020")
- void testGetPlateau() throws IOException {
- String urlPath = "/01100";
-
- MvcResult mvcResult = mvc.perform(MockMvcRequestBuilders.get(rootUrl + urlPath))
- .andExpect(status().isOk())
- .andExpect(content().json("OK"))
- .andReturn();
-
- Path base = Path.of(dirStr);
- boolean exists = Files.exists(base);
- assertThat(exists);
- }
-}
diff --git a/src/test/java/osm/surveyor/task/util/GeojsonTest.java b/src/test/java/osm/surveyor/task/util/GeojsonTest.java
index b58d64d..2d42751 100644
--- a/src/test/java/osm/surveyor/task/util/GeojsonTest.java
+++ b/src/test/java/osm/surveyor/task/util/GeojsonTest.java
@@ -1,5 +1,8 @@
package osm.surveyor.task.util;
+import static org.hamcrest.CoreMatchers.notNullValue;
+import static org.hamcrest.CoreMatchers.nullValue;
+
import java.io.IOException;
import java.io.InputStream;
@@ -9,11 +12,13 @@
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
+import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.core.io.ClassPathResource;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
+@SpringBootTest
class GeojsonTest {
@BeforeAll
@@ -39,6 +44,7 @@
try (InputStream is = new ClassPathResource(path).getInputStream()) {
ObjectMapper mapper = new ObjectMapper();
JsonNode node = mapper.readTree(is);
+ assertNotNull(node);
Geojson geojson = new Geojson();
geojson.parse(node);