diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..eb5a316
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+target
diff --git a/pom.xml b/pom.xml
index 0a66db5..5eacb8f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -46,19 +46,19 @@
io.quarkus
- quarkus-jdbc-h2
+ quarkus-resteasy-jsonb
io.quarkus
- quarkus-resteasy-jsonb
+ quarkus-smallrye-openapi
io.quarkus
- quarkus-hibernate-orm-panache
+ quarkus-rest-client-jackson
io.quarkus
- quarkus-smallrye-openapi
+ quarkus-rest-client
io.quarkus
diff --git a/src/main/java/org/sebi/incident/Incident.java b/src/main/java/org/sebi/incident/Incident.java
index 1cde532..9d861dd 100644
--- a/src/main/java/org/sebi/incident/Incident.java
+++ b/src/main/java/org/sebi/incident/Incident.java
@@ -2,13 +2,9 @@ package org.sebi.incident;
import java.util.Date;
-import javax.persistence.Entity;
-
-import io.quarkus.hibernate.orm.panache.PanacheEntity;
-
-@Entity
-public class Incident extends PanacheEntity {
+public class Incident {
+ public int id;
public String description;
public Date date;
public boolean status;
diff --git a/src/main/java/org/sebi/incident/IncidentResource.java b/src/main/java/org/sebi/incident/IncidentResource.java
index dc7b9a5..286f97c 100644
--- a/src/main/java/org/sebi/incident/IncidentResource.java
+++ b/src/main/java/org/sebi/incident/IncidentResource.java
@@ -4,12 +4,22 @@ import java.util.List;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
+import javax.inject.Inject;
+import org.eclipse.microprofile.rest.client.inject.RestClient;
+import org.eclipse.microprofile.config.inject.ConfigProperty;
@Path("rest/incidents")
public class IncidentResource {
+ @Inject
+ @RestClient
+ IncidentService incidentService;
+
+ @ConfigProperty(name = "apikey")
+ String apiKey;
+
@GET
public List getIncidents(){
- return Incident.listAll();
+ return incidentService.getIncidents(apiKey);
}
}
diff --git a/src/main/java/org/sebi/incident/IncidentService.java b/src/main/java/org/sebi/incident/IncidentService.java
new file mode 100644
index 0000000..2bb4f5b
--- /dev/null
+++ b/src/main/java/org/sebi/incident/IncidentService.java
@@ -0,0 +1,18 @@
+package org.sebi.incident;
+
+import org.eclipse.microprofile.rest.client.annotation.RegisterProvider;
+import org.eclipse.microprofile.rest.client.inject.RegisterRestClient;
+import org.jboss.resteasy.annotations.jaxrs.QueryParam;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+
+import java.util.List;
+
+@Path("/rest/incidents")
+@RegisterRestClient(configKey = "incident-service")
+public interface IncidentService {
+
+ @GET
+ List getIncidents(@QueryParam("api_key") String apikey);
+}
diff --git a/src/main/java/org/sebi/incident/IncidentStartup.java b/src/main/java/org/sebi/incident/IncidentStartup.java
deleted file mode 100644
index 01e3450..0000000
--- a/src/main/java/org/sebi/incident/IncidentStartup.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.sebi.incident;
-
-import java.util.Date;
-
-import javax.enterprise.context.ApplicationScoped;
-import javax.enterprise.event.Observes;
-import javax.transaction.Transactional;
-
-import io.quarkus.runtime.StartupEvent;
-
-@ApplicationScoped
-public class IncidentStartup {
-
- @Transactional
- void onStart(@Observes StartupEvent ev) {
- Incident incident = new Incident();
- incident.date = new Date();
- incident.description = "coupure fibre";
- incident.status = false;
- incident.persist();
-
- Incident incident1 = new Incident();
- incident1.date = new Date();
- incident1.description = "Panne émetteur";
- incident1.status = true;
- incident1.persist();
- }
-
-}
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 2799950..ceeaf31 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -1,4 +1,3 @@
-quarkus.datasource.jdbc.url=jdbc:h2:mem:myDB
-quarkus.datasource.jdbc.min-size=3
-quarkus.datasource.jdbc.max-size=13
-quarkus.hibernate-orm.database.generation=update
+%dev.quarkus.rest-client.incident-service.url=http://localhost:8081
+quarkus.rest-client.incident-service.scope=javax.inject.Singleton
+%dev.apikey=mysecret