[GERONIMO-6781] MP 3-RC3 impl
diff --git a/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/impl/HealthCheckResponseBuilderImpl.java b/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/impl/HealthCheckResponseBuilderImpl.java
index 4301d29..6db3dfe 100644
--- a/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/impl/HealthCheckResponseBuilderImpl.java
+++ b/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/impl/HealthCheckResponseBuilderImpl.java
@@ -51,17 +51,22 @@
@Override
public HealthCheckResponseBuilder up() {
- response.setState(HealthCheckResponse.State.UP);
+ response.setState(HealthCheckResponse.Status.UP);
return this;
}
@Override
public HealthCheckResponseBuilder down() {
- response.setState(HealthCheckResponse.State.DOWN);
+ response.setState(HealthCheckResponse.Status.DOWN);
return this;
}
@Override
+ public HealthCheckResponseBuilder status(final boolean up) {
+ return state(up);
+ }
+
+ // @Override - dropped from the spec
public HealthCheckResponseBuilder state(final boolean up) {
if (up) {
up();
diff --git a/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/impl/HealthCheckResponseImpl.java b/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/impl/HealthCheckResponseImpl.java
index 27395d4..c2e6d51 100644
--- a/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/impl/HealthCheckResponseImpl.java
+++ b/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/impl/HealthCheckResponseImpl.java
@@ -16,17 +16,16 @@
*/
package org.apache.geronimo.microprofile.common.impl;
-import java.util.Map;
-import java.util.Optional;
+import org.eclipse.microprofile.health.HealthCheckResponse;
import javax.json.bind.annotation.JsonbProperty;
import javax.json.bind.annotation.JsonbTransient;
-
-import org.eclipse.microprofile.health.HealthCheckResponse;
+import java.util.Map;
+import java.util.Optional;
public class HealthCheckResponseImpl extends HealthCheckResponse {
private String name;
- private State state;
+ private Status state;
private Map<String, Object> data;
@Override
@@ -34,13 +33,7 @@
return name;
}
- @Override
- @JsonbTransient
- public State getState() {
- return state;
- }
-
- public State getStatus() {
+ public Status getStatus() {
return state;
}
@@ -59,7 +52,7 @@
this.name = name;
}
- public void setState(final State state) {
+ public void setState(final Status state) {
this.state = state;
}
diff --git a/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/jaxrs/HealthChecksEndpoint.java b/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/jaxrs/HealthChecksEndpoint.java
index 9498fdf..53511c6 100644
--- a/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/jaxrs/HealthChecksEndpoint.java
+++ b/geronimo-health-common/src/main/java/org/apache/geronimo/microprofile/common/jaxrs/HealthChecksEndpoint.java
@@ -16,22 +16,21 @@
*/
package org.apache.geronimo.microprofile.common.jaxrs;
-import static java.util.stream.Collectors.toList;
-
-import java.util.Collection;
-import java.util.List;
-import java.util.function.Consumer;
-import java.util.function.Function;
+import org.apache.geronimo.microprofile.common.registry.HealthChecksRegistry;
+import org.eclipse.microprofile.health.HealthCheck;
+import org.eclipse.microprofile.health.HealthCheckResponse;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
+import java.util.Collection;
+import java.util.List;
+import java.util.function.Consumer;
+import java.util.function.Function;
-import org.apache.geronimo.microprofile.common.registry.HealthChecksRegistry;
-import org.eclipse.microprofile.health.HealthCheck;
-import org.eclipse.microprofile.health.HealthCheckResponse;
+import static java.util.stream.Collectors.toList;
@Path("health")
// @ApplicationScoped
@@ -77,26 +76,26 @@
.stream()
.map(HealthCheck::call)
.collect(toList());
- final HealthCheckResponse.State globalState = checks.stream()
- .reduce(HealthCheckResponse.State.UP, (a, b) -> combine(a, b.getState()), this::combine);
- return Response.status(globalState == HealthCheckResponse.State.DOWN ? Response.Status.SERVICE_UNAVAILABLE : Response.Status.OK).entity(new AggregatedResponse(globalState, checks)).build();
+ final HealthCheckResponse.Status globalState = checks.stream()
+ .reduce(HealthCheckResponse.Status.UP, (a, b) -> combine(a, b.getStatus()), this::combine);
+ return Response.status(globalState == HealthCheckResponse.Status.DOWN ? Response.Status.SERVICE_UNAVAILABLE : Response.Status.OK).entity(new AggregatedResponse(globalState, checks)).build();
}
- private HealthCheckResponse.State combine(final HealthCheckResponse.State a, final HealthCheckResponse.State b) {
- return a == HealthCheckResponse.State.DOWN || b == HealthCheckResponse.State.DOWN ? HealthCheckResponse.State.DOWN : a;
+ private HealthCheckResponse.Status combine(final HealthCheckResponse.Status a, final HealthCheckResponse.Status b) {
+ return a == HealthCheckResponse.Status.DOWN || b == HealthCheckResponse.Status.DOWN ? HealthCheckResponse.Status.DOWN : a;
}
public static class AggregatedResponse {
- private HealthCheckResponse.State status;
+ private HealthCheckResponse.Status status;
private Collection<HealthCheckResponse> checks;
- private AggregatedResponse(final HealthCheckResponse.State state,
+ private AggregatedResponse(final HealthCheckResponse.Status state,
final Collection<HealthCheckResponse> checks) {
this.status = state;
this.checks = checks;
}
- public HealthCheckResponse.State getStatus() {
+ public HealthCheckResponse.Status getStatus() {
return status;
}
diff --git a/geronimo-health/src/main/java/org/apache/geronimo/microprofile/impl/health/cdi/GeronimoHealthExtension.java b/geronimo-health/src/main/java/org/apache/geronimo/microprofile/impl/health/cdi/GeronimoHealthExtension.java
index c9f72ae..5caea05 100644
--- a/geronimo-health/src/main/java/org/apache/geronimo/microprofile/impl/health/cdi/GeronimoHealthExtension.java
+++ b/geronimo-health/src/main/java/org/apache/geronimo/microprofile/impl/health/cdi/GeronimoHealthExtension.java
@@ -16,14 +16,10 @@
*/
package org.apache.geronimo.microprofile.impl.health.cdi;
-import static java.util.stream.Collectors.toList;
-
-import java.lang.annotation.Annotation;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.Set;
-import java.util.stream.Stream;
+import org.apache.geronimo.microprofile.common.registry.HealthChecksRegistry;
+import org.eclipse.microprofile.health.HealthCheck;
+import org.eclipse.microprofile.health.Liveness;
+import org.eclipse.microprofile.health.Readiness;
import javax.enterprise.context.spi.CreationalContext;
import javax.enterprise.event.Observes;
@@ -34,11 +30,14 @@
import javax.enterprise.inject.spi.Extension;
import javax.enterprise.inject.spi.ProcessBean;
import javax.enterprise.util.AnnotationLiteral;
-import org.apache.geronimo.microprofile.common.registry.HealthChecksRegistry;
-import org.eclipse.microprofile.health.Health;
-import org.eclipse.microprofile.health.HealthCheck;
-import org.eclipse.microprofile.health.Liveness;
-import org.eclipse.microprofile.health.Readiness;
+import java.lang.annotation.Annotation;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Stream;
+
+import static java.util.stream.Collectors.toList;
public class GeronimoHealthExtension implements Extension, HealthChecksRegistry {
private final Collection<Bean<?>> beans = new ArrayList<>();
@@ -62,10 +61,6 @@
if (!bean.getBean().getTypes().contains(HealthCheck.class)) {
return;
}
- // deprecated - use @Liveness or @Readiness
- if (bean.getAnnotated().isAnnotationPresent(Health.class)) {
- beans.add(bean.getBean());
- }
if (bean.getBean().getQualifiers().contains(LivenessLiteral.INSTANCE)) {
livenessBeans.add(bean.getBean());
}
diff --git a/pom.xml b/pom.xml
index 68eea3b..f011bc7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -42,7 +42,7 @@
</scm>
<properties>
- <spec.version>2.1</spec.version>
+ <spec.version>3.0-RC3</spec.version>
</properties>
<modules>