[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>