Search in sources :

Example 1 with SrxFirewallResponse

use of com.cloud.api.response.SrxFirewallResponse in project cloudstack by apache.

the class ListSrxFirewallsCmd method execute.

/////////////////////////////////////////////////////
/////////////// API Implementation///////////////////
/////////////////////////////////////////////////////
@Override
public void execute() throws ResourceUnavailableException, InsufficientCapacityException, ServerApiException, ConcurrentOperationException, ResourceAllocationException {
    try {
        List<ExternalFirewallDeviceVO> fwDevices = _srxFwService.listSrxFirewalls(this);
        ListResponse<SrxFirewallResponse> response = new ListResponse<SrxFirewallResponse>();
        List<SrxFirewallResponse> fwDevicesResponse = new ArrayList<SrxFirewallResponse>();
        if (fwDevices != null && !fwDevices.isEmpty()) {
            for (ExternalFirewallDeviceVO fwDeviceVO : fwDevices) {
                SrxFirewallResponse lbdeviceResponse = _srxFwService.createSrxFirewallResponse(fwDeviceVO);
                fwDevicesResponse.add(lbdeviceResponse);
            }
        }
        response.setResponses(fwDevicesResponse);
        response.setResponseName(getCommandName());
        this.setResponseObject(response);
    } catch (InvalidParameterValueException invalidParamExcp) {
        throw new ServerApiException(ApiErrorCode.PARAM_ERROR, invalidParamExcp.getMessage());
    } catch (CloudRuntimeException runtimeExcp) {
        throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, runtimeExcp.getMessage());
    }
}
Also used : ExternalFirewallDeviceVO(com.cloud.network.dao.ExternalFirewallDeviceVO) ListResponse(org.apache.cloudstack.api.response.ListResponse) ServerApiException(org.apache.cloudstack.api.ServerApiException) InvalidParameterValueException(com.cloud.exception.InvalidParameterValueException) CloudRuntimeException(com.cloud.utils.exception.CloudRuntimeException) SrxFirewallResponse(com.cloud.api.response.SrxFirewallResponse) ArrayList(java.util.ArrayList)

Example 2 with SrxFirewallResponse

use of com.cloud.api.response.SrxFirewallResponse in project cloudstack by apache.

the class JuniperSRXExternalFirewallElement method createSrxFirewallResponse.

@Override
public SrxFirewallResponse createSrxFirewallResponse(ExternalFirewallDeviceVO fwDeviceVO) {
    SrxFirewallResponse response = new SrxFirewallResponse();
    Map<String, String> fwDetails = _hostDetailDao.findDetails(fwDeviceVO.getHostId());
    Host fwHost = _hostDao.findById(fwDeviceVO.getHostId());
    response.setId(fwDeviceVO.getUuid());
    PhysicalNetwork pnw = ApiDBUtils.findPhysicalNetworkById(fwDeviceVO.getPhysicalNetworkId());
    if (pnw != null) {
        response.setPhysicalNetworkId(pnw.getUuid());
    }
    response.setDeviceName(fwDeviceVO.getDeviceName());
    if (fwDeviceVO.getCapacity() == 0) {
        long defaultFwCapacity = NumbersUtil.parseLong(_configDao.getValue(Config.DefaultExternalFirewallCapacity.key()), 50);
        response.setDeviceCapacity(defaultFwCapacity);
    } else {
        response.setDeviceCapacity(fwDeviceVO.getCapacity());
    }
    response.setProvider(fwDeviceVO.getProviderName());
    response.setDeviceState(fwDeviceVO.getDeviceState().name());
    response.setIpAddress(fwHost.getPrivateIpAddress());
    response.setPublicInterface(fwDetails.get("publicInterface"));
    response.setUsageInterface(fwDetails.get("usageInterface"));
    response.setPrivateInterface(fwDetails.get("privateInterface"));
    response.setPublicZone(fwDetails.get("publicZone"));
    response.setPrivateZone(fwDetails.get("privateZone"));
    response.setNumRetries(fwDetails.get("numRetries"));
    response.setTimeout(fwDetails.get("timeout"));
    response.setObjectName("srxfirewall");
    return response;
}
Also used : PhysicalNetwork(com.cloud.network.PhysicalNetwork) SrxFirewallResponse(com.cloud.api.response.SrxFirewallResponse) Host(com.cloud.host.Host)

Example 3 with SrxFirewallResponse

use of com.cloud.api.response.SrxFirewallResponse in project cloudstack by apache.

the class ConfigureSrxFirewallCmd method execute.

/////////////////////////////////////////////////////
/////////////// API Implementation///////////////////
/////////////////////////////////////////////////////
@Override
public void execute() throws ResourceUnavailableException, InsufficientCapacityException, ServerApiException, ConcurrentOperationException, ResourceAllocationException {
    try {
        ExternalFirewallDeviceVO fwDeviceVO = _srxFwService.configureSrxFirewall(this);
        if (fwDeviceVO != null) {
            SrxFirewallResponse response = _srxFwService.createSrxFirewallResponse(fwDeviceVO);
            response.setObjectName("srxfirewall");
            response.setResponseName(getCommandName());
            this.setResponseObject(response);
        } else {
            throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to configure SRX firewall device due to internal error.");
        }
    } catch (InvalidParameterValueException invalidParamExcp) {
        throw new ServerApiException(ApiErrorCode.PARAM_ERROR, invalidParamExcp.getMessage());
    } catch (CloudRuntimeException runtimeExcp) {
        throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, runtimeExcp.getMessage());
    }
}
Also used : ExternalFirewallDeviceVO(com.cloud.network.dao.ExternalFirewallDeviceVO) ServerApiException(org.apache.cloudstack.api.ServerApiException) InvalidParameterValueException(com.cloud.exception.InvalidParameterValueException) CloudRuntimeException(com.cloud.utils.exception.CloudRuntimeException) SrxFirewallResponse(com.cloud.api.response.SrxFirewallResponse)

Example 4 with SrxFirewallResponse

use of com.cloud.api.response.SrxFirewallResponse in project cloudstack by apache.

the class AddSrxFirewallCmd method execute.

/////////////////////////////////////////////////////
/////////////// API Implementation///////////////////
/////////////////////////////////////////////////////
@Override
public void execute() throws ResourceUnavailableException, InsufficientCapacityException, ServerApiException, ConcurrentOperationException, ResourceAllocationException {
    try {
        ExternalFirewallDeviceVO fwDeviceVO = _srxFwService.addSrxFirewall(this);
        if (fwDeviceVO != null) {
            SrxFirewallResponse response = _srxFwService.createSrxFirewallResponse(fwDeviceVO);
            response.setObjectName("srxfirewall");
            response.setResponseName(getCommandName());
            this.setResponseObject(response);
        } else {
            throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to add SRX firewall due to internal error.");
        }
    } catch (InvalidParameterValueException invalidParamExcp) {
        throw new ServerApiException(ApiErrorCode.PARAM_ERROR, invalidParamExcp.getMessage());
    } catch (CloudRuntimeException runtimeExcp) {
        throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, runtimeExcp.getMessage());
    }
}
Also used : ExternalFirewallDeviceVO(com.cloud.network.dao.ExternalFirewallDeviceVO) ServerApiException(org.apache.cloudstack.api.ServerApiException) InvalidParameterValueException(com.cloud.exception.InvalidParameterValueException) CloudRuntimeException(com.cloud.utils.exception.CloudRuntimeException) SrxFirewallResponse(com.cloud.api.response.SrxFirewallResponse)

Aggregations

SrxFirewallResponse (com.cloud.api.response.SrxFirewallResponse)4 InvalidParameterValueException (com.cloud.exception.InvalidParameterValueException)3 ExternalFirewallDeviceVO (com.cloud.network.dao.ExternalFirewallDeviceVO)3 CloudRuntimeException (com.cloud.utils.exception.CloudRuntimeException)3 ServerApiException (org.apache.cloudstack.api.ServerApiException)3 Host (com.cloud.host.Host)1 PhysicalNetwork (com.cloud.network.PhysicalNetwork)1 ArrayList (java.util.ArrayList)1 ListResponse (org.apache.cloudstack.api.response.ListResponse)1