From 23a46b4be35277e06ec89f48730eeb694e686be8 Mon Sep 17 00:00:00 2001
From: Kenmegne <stephanie.kenmegne@gmail.com>
Date: Thu, 18 Jun 2026 15:40:06 +0000
Subject: [PATCH] add fdx-commons and fdx-consultation
---
fdx-consultation/fdxconsultation-dao-impl/src/main/java/com/megatim/fdxconsultation/dao/impl/supervision/StandaloneServerStateEntityDAOImpl.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 57 insertions(+), 0 deletions(-)
diff --git a/fdx-consultation/fdxconsultation-dao-impl/src/main/java/com/megatim/fdxconsultation/dao/impl/supervision/StandaloneServerStateEntityDAOImpl.java b/fdx-consultation/fdxconsultation-dao-impl/src/main/java/com/megatim/fdxconsultation/dao/impl/supervision/StandaloneServerStateEntityDAOImpl.java
new file mode 100644
index 0000000..3e2212c
--- /dev/null
+++ b/fdx-consultation/fdxconsultation-dao-impl/src/main/java/com/megatim/fdxconsultation/dao/impl/supervision/StandaloneServerStateEntityDAOImpl.java
@@ -0,0 +1,57 @@
+package com.megatim.fdxconsultation.dao.impl.supervision;
+
+import com.megatim.fdxconsultation.dao.ifaces.supervision.StandaloneServerStateEntityDAO;
+import com.megatim.fdxconsultation.model.supervision.StandaloneServerStateEntity;
+import com.megatim.fdxconsultation.model.supervision.StatutConfiguration;
+import java.util.Optional;
+import javax.enterprise.context.Dependent;
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import javax.persistence.Query;
+
+/**
+ *
+ * @author ASUS
+ */
+@Dependent
+public class StandaloneServerStateEntityDAOImpl implements StandaloneServerStateEntityDAO {
+
+ @PersistenceContext(unitName = "fdxConsultationPersistenceUnit")
+ protected EntityManager em;
+
+ @Override
+ public Class<StandaloneServerStateEntity> getManagedEntityClass() {
+ return StandaloneServerStateEntity.class;
+ }
+
+ @Override
+ public EntityManager getEntityManager() {
+ return em;
+ }
+
+ @Override
+ public StandaloneServerStateEntity getById(Long id) {
+ Query query = em.createQuery("SELECT s from StandaloneServerStateEntity s LEFT JOIN FETCH s.agentConfigurations where s.id = :id");
+ query.setParameter("id", id);
+ Optional<StandaloneServerStateEntity> optionalServer = query.getResultList().stream().findFirst();
+
+ return optionalServer.isPresent() ? optionalServer.get() : null;
+ }
+
+ @Override
+ public void archiveServerState() {
+ Query query = em.createQuery("UPDATE StandaloneServerStateEntity s SET s.statutConfiguration = :newStatut WHERE s.statutConfiguration = :oldStatut");
+ query.setParameter("newStatut", StatutConfiguration.ARCHIVE);
+ query.setParameter("oldStatut", StatutConfiguration.EN_COURS);
+ query.executeUpdate();
+ }
+
+ @Override
+ public StandaloneServerStateEntity getCurrentStandaloneServerStateEntity() {
+ Query query = em.createQuery("SELECT s FROM StandaloneServerStateEntity s LEFT JOIN FETCH s.agentConfigurations WHERE s.statutConfiguration = :statutConfiguration");
+ query.setParameter("statutConfiguration", StatutConfiguration.EN_COURS);
+ Optional<StandaloneServerStateEntity> optionalServer = query.getResultList().stream().findFirst();
+ return optionalServer.isPresent() ? optionalServer.get() : null;
+ }
+
+}
--
Gitblit v1.10.0