package org.openstack.atlas.api.resources; import org.openstack.atlas.service.domain.entities.AccessList; import org.openstack.atlas.service.domain.entities.LoadBalancer; import org.openstack.atlas.service.domain.operations.Operation; import org.openstack.atlas.api.helpers.ResponseFactory; import org.openstack.atlas.api.resources.providers.CommonDependencyProvider; import javax.ws.rs.DELETE; import javax.ws.rs.core.Response; import java.util.HashSet; import java.util.Set; public class NetworkItemResource extends CommonDependencyProvider { private Integer accountId; private Integer loadBalancerId; private int id; @DELETE public Response deleteNetworkItem() { try { LoadBalancer rLb = new LoadBalancer(); Set<AccessList> accessLists = new HashSet<AccessList>(); AccessList aList = new AccessList(); aList.setId(id); accessLists.add(aList); rLb.setId(loadBalancerId); rLb.setAccountId(accountId); rLb.setAccessLists(accessLists); rLb = accessListService.markForDeletionNetworkItem(rLb); asyncService.callAsyncLoadBalancingOperation(Operation.APPEND_TO_ACCESS_LIST, rLb); return Response.status(Response.Status.ACCEPTED).build(); } catch (Exception e) { return ResponseFactory.getErrorResponse(e, null, null); } } public void setAccountId(Integer accountId) { this.accountId = accountId; } public void setLoadBalancerId(Integer loadBalancerId) { this.loadBalancerId = loadBalancerId; } public void setId(int id) { this.id = id; } }