This is an automated email from the ASF dual-hosted git repository.

rcordier pushed a commit to branch postgresql
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit 107465410daf28848b1545fe766b155326178ef6
Author: Benoit TELLIER <[email protected]>
AuthorDate: Tue Dec 12 11:22:18 2023 +0100

    JAMES-2586 Remove JPAHealthCheck.java
---
 .../james/jpa/healthcheck/JPAHealthCheck.java      | 64 ----------------------
 .../james/jpa/healthcheck/JPAHealthCheckTest.java  | 62 ---------------------
 2 files changed, 126 deletions(-)

diff --git 
a/server/data/data-postgres/src/main/java/org/apache/james/jpa/healthcheck/JPAHealthCheck.java
 
b/server/data/data-postgres/src/main/java/org/apache/james/jpa/healthcheck/JPAHealthCheck.java
deleted file mode 100644
index 7dbea33e7f..0000000000
--- 
a/server/data/data-postgres/src/main/java/org/apache/james/jpa/healthcheck/JPAHealthCheck.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/****************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one   *
- * or more contributor license agreements.  See the NOTICE file *
- * distributed with this work for additional information        *
- * regarding copyright ownership.  The ASF licenses this file   *
- * to you under the Apache License, Version 2.0 (the            *
- * "License"); you may not use this file except in compliance   *
- * with the License.  You may obtain a copy of the License at   *
- *                                                              *
- *   http://www.apache.org/licenses/LICENSE-2.0                 *
- *                                                              *
- * Unless required by applicable law or agreed to in writing,   *
- * software distributed under the License is distributed on an  *
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
- * KIND, either express or implied.  See the License for the    *
- * specific language governing permissions and limitations      *
- * under the License.                                           *
- ****************************************************************/
-package org.apache.james.jpa.healthcheck;
-
-import static org.apache.james.core.healthcheck.Result.healthy;
-import static org.apache.james.core.healthcheck.Result.unhealthy;
-
-import javax.inject.Inject;
-import javax.persistence.EntityManagerFactory;
-
-import org.apache.james.backends.jpa.EntityManagerUtils;
-import org.apache.james.core.healthcheck.ComponentName;
-import org.apache.james.core.healthcheck.HealthCheck;
-import org.apache.james.core.healthcheck.Result;
-
-import reactor.core.publisher.Mono;
-import reactor.core.scheduler.Schedulers;
-
-public class JPAHealthCheck implements HealthCheck {
-
-    private final EntityManagerFactory entityManagerFactory;
-
-    @Inject
-    public JPAHealthCheck(EntityManagerFactory entityManagerFactory) {
-        this.entityManagerFactory = entityManagerFactory;
-    }
-
-    @Override
-    public ComponentName componentName() {
-        return new ComponentName("JPA Backend");
-    }
-
-    @Override
-    public Mono<Result> check() {
-        return 
Mono.usingWhen(Mono.fromCallable(entityManagerFactory::createEntityManager).subscribeOn(Schedulers.boundedElastic()),
-            entityManager -> {
-                if (entityManager.isOpen()) {
-                    return Mono.just(healthy(componentName()));
-                } else {
-                    return Mono.just(unhealthy(componentName(), "entityManager 
is not open"));
-                }
-            },
-            entityManager -> Mono.fromRunnable(() -> 
EntityManagerUtils.safelyClose(entityManager)).subscribeOn(Schedulers.boundedElastic()))
-            .onErrorResume(IllegalStateException.class,
-                e -> Mono.just(unhealthy(componentName(), 
"EntityManagerFactory or EntityManager thrown an IllegalStateException, the 
connection is unhealthy", e)))
-            .onErrorResume(e -> Mono.just(unhealthy(componentName(), 
"Unexpected exception upon checking JPA driver", e)));
-    }
-}
diff --git 
a/server/data/data-postgres/src/test/java/org/apache/james/jpa/healthcheck/JPAHealthCheckTest.java
 
b/server/data/data-postgres/src/test/java/org/apache/james/jpa/healthcheck/JPAHealthCheckTest.java
deleted file mode 100644
index 20ed1bbaa2..0000000000
--- 
a/server/data/data-postgres/src/test/java/org/apache/james/jpa/healthcheck/JPAHealthCheckTest.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/****************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one   *
- * or more contributor license agreements.  See the NOTICE file *
- * distributed with this work for additional information        *
- * regarding copyright ownership.  The ASF licenses this file   *
- * to you under the Apache License, Version 2.0 (the            *
- * "License"); you may not use this file except in compliance   *
- * with the License.  You may obtain a copy of the License at   *
- *                                                              *
- *   http://www.apache.org/licenses/LICENSE-2.0                 *
- *                                                              *
- * Unless required by applicable law or agreed to in writing,   *
- * software distributed under the License is distributed on an  *
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
- * KIND, either express or implied.  See the License for the    *
- * specific language governing permissions and limitations      *
- * under the License.                                           *
- ****************************************************************/
-package org.apache.james.jpa.healthcheck;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.assertj.core.api.Assertions.fail;
-
-import org.apache.james.backends.jpa.JpaTestCluster;
-import org.apache.james.core.healthcheck.Result;
-import org.apache.james.core.healthcheck.ResultStatus;
-import org.apache.james.mailrepository.jpa.model.JPAUrl;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-
-class JPAHealthCheckTest {
-    JPAHealthCheck jpaHealthCheck;
-    JpaTestCluster jpaTestCluster;
-
-    @BeforeEach
-    void setUp() {
-        jpaTestCluster = JpaTestCluster.create(JPAUrl.class);
-        jpaHealthCheck = new 
JPAHealthCheck(jpaTestCluster.getEntityManagerFactory());
-    }
-
-    @Test
-    void testWhenActive() {
-        Result result = jpaHealthCheck.check().block();
-        ResultStatus healthy = ResultStatus.HEALTHY;
-        assertThat(result.getStatus()).as("Result %s status should be %s", 
result.getStatus(), healthy)
-                .isEqualTo(healthy);
-    }
-
-    @Test
-    void testWhenInactive() {
-        jpaTestCluster.getEntityManagerFactory().close();
-        Result result = Result.healthy(jpaHealthCheck.componentName());
-        try {
-            result = jpaHealthCheck.check().block();
-        } catch (IllegalStateException e) {
-            fail("The exception of the EMF was not handled property.ยช");
-        }
-        ResultStatus unhealthy = ResultStatus.UNHEALTHY;
-        assertThat(result.getStatus()).as("Result %s status should be %s", 
result.getStatus(), unhealthy)
-                .isEqualTo(unhealthy);
-    }
-}


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to