package com.megatim.fdxconsultation.service.supervision; import com.megatim.fdxconsultation.core.ifaces.administration.UserManager; import com.megatim.fdxconsultation.core.ifaces.supervision.StandaloneServerStateEntityManager; import com.megatim.fdxconsultation.core.ifaces.supervision.TransfertManager; import com.megatim.fdxconsultation.model.supervision.SupervisionData; import com.megatim.fdxconsultation.model.supervision.Transfert; import com.megatim.fdxconsultation.model.supervision.dto.StandaloneDashboardRequest; import com.megatim.fdxconsultation.model.supervision.dto.SupervisionFilterModalFormRequest; import com.megatim.fdxconsultation.service.ifaces.supervision.SupervisionRS; import com.megatim.fdxconsultation.tools.context.AppCommonContext; import com.mgt.rs.security.core.common.SecuredClass; import java.util.List; import javax.inject.Inject; import javax.ws.rs.Path; import javax.ws.rs.core.HttpHeaders; import javax.ws.rs.core.Response; /** * * @author Gabuntu */ //@RequestScoped @SecuredClass(module = AppCommonContext.MODULE_INFRASTRUCTURES, path = "Fdx serveur", description = "Fdx serveur") @Path("supervision") public class SupervisionRSImpl implements SupervisionRS { @Inject private UserManager userManager; @Inject private TransfertManager transfertManager; @Inject private StandaloneServerStateEntityManager standaloneServerStateEntityManager; public SupervisionRSImpl() { super(); } @Override public Response supervisionData(HttpHeaders headers, SupervisionFilterModalFormRequest supervisionFilterModalFormRequest) { return Response .ok(supervisionData(supervisionFilterModalFormRequest)) .build(); } @Override public Response standaloneState(HttpHeaders headers) { return Response.ok(standaloneServerStateEntityManager.getCurrentStandaloneServerStateEntity()).build(); } @Override public Response dashboard(HttpHeaders headers, StandaloneDashboardRequest standaloneDashboardRequest) { return Response .ok(transfertManager.standaloneDashboardResponse(standaloneDashboardRequest)) .build(); } @Override public Response filterTransferts(HttpHeaders headers, SupervisionFilterModalFormRequest supervisionFilterModalFormRequest) { return Response.ok(transfertManager.filter(supervisionFilterModalFormRequest)).build(); } private SupervisionData supervisionData(SupervisionFilterModalFormRequest supervisionFilterModalFormRequest) { //List transferts = transfertManager.findAll(); List transferts = transfertManager.filter(supervisionFilterModalFormRequest); transferts.sort((t1, t2) -> Long.compare(t2.getId(), t1.getId())); SupervisionData supervisionData = new SupervisionData(); supervisionData.setTransferts(transfertManager.filter(supervisionFilterModalFormRequest)); supervisionData.setStandaloneServerState(standaloneServerStateEntityManager.getCurrentStandaloneServerStateEntity()); return supervisionData; } }