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<Transfert> transferts = transfertManager.findAll();
|
List<Transfert> 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;
|
}
|
|
}
|