package org.openstack.atlas.api.mgmt.resources; import org.openstack.atlas.api.helpers.ResponseFactory; import org.openstack.atlas.api.mgmt.resources.providers.ManagementDependencyProvider; import org.openstack.atlas.docs.loadbalancers.api.management.v1.LoadBalancersStatusHistory; import org.openstack.atlas.service.domain.entities.LoadBalancerStatusHistory; import javax.ws.rs.Consumes; import javax.ws.rs.GET; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import java.util.List; public class SaveStateHistoryResource extends ManagementDependencyProvider { private int id; @GET @Consumes({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON}) public Response getHost() { if (!isUserInRole("cp,ops")) { return ResponseFactory.accessDenied(); } org.openstack.atlas.docs.loadbalancers.api.management.v1.LoadBalancerStatusHistory rlb = null; LoadBalancersStatusHistory loadBalancersStatusHistory = new LoadBalancersStatusHistory(); try { List<LoadBalancerStatusHistory> stateHistory = loadBalancerStatusHistoryRepository.getStateHistoryForAccount(id); if (stateHistory != null) { for (LoadBalancerStatusHistory lbsh : stateHistory) { rlb = getDozerMapper().map(lbsh, org.openstack.atlas.docs.loadbalancers.api.management.v1.LoadBalancerStatusHistory.class); loadBalancersStatusHistory.getLoadBalancerStatusHistories().add(rlb); } } return Response.status(200).entity(loadBalancersStatusHistory).build(); } catch (Exception e) { return ResponseFactory.getErrorResponse(e, null, null); } } public void setId(int id) { this.id = id; } }