public int canAttachInterface(NeutronRouter router, NeutronRouter_Interface routerInterface) { //See if a EGW will need to be configured //If so, and there aren't GWs available, return BADREQUEST with a message INeutronSubnetCRUD neutronSubnetIf = NeutronCRUDInterfaces.getINeutronSubnetCRUD(this); NeutronSubnet neutronSubnet = neutronSubnetIf.getSubnet(routerInterface.getSubnetUUID()); INeutronNetworkCRUD neutronNetworkIf = NeutronCRUDInterfaces.getINeutronNetworkCRUD(this); NeutronNetwork neutronNetwork = neutronNetworkIf.getNetwork(neutronSubnet.getNetworkUUID()); if (neutronNetwork.isRouterExternal()) { IfOpenDoveServiceApplianceCRUD serviceApplianceDB = OpenDoveCRUDInterfaces.getIfDoveServiceApplianceCRUD(this); List<OpenDoveServiceAppliance> oDSAs = serviceApplianceDB.getAppliances(); Iterator<OpenDoveServiceAppliance> iterator = oDSAs.iterator(); while (iterator.hasNext()) { if (iterator.next().get_isDGW()) { return 200; } } return 400; } return 200; }
if (networkInterface.networkExists(singleton.getID())) { throw new BadRequestException("network UUID already exists"); networkInterface.addNetwork(singleton); if (instances != null) { for (Object instance : instances) { if (networkInterface.networkExists(test.getID())) { throw new BadRequestException("network UUID already exists"); NeutronNetwork test = i.next(); test.initDefaults(); networkInterface.addNetwork(test); if (instances != null) { for (Object instance: instances) {
+ RestMessages.SERVICEUNAVAILABLE.toString()); List<NeutronNetwork> allNetworks = networkInterface.getAllNetworks(); List<NeutronNetwork> ans = new ArrayList<NeutronNetwork>(); Iterator<NeutronNetwork> i = allNetworks.iterator();
+ RestMessages.SERVICEUNAVAILABLE.toString()); if (!networkInterface.networkExists(netUUID)) { throw new ResourceNotFoundException("network UUID does not exist."); NeutronNetwork ans = networkInterface.getNetwork(netUUID); return Response.status(200).entity( new NeutronNetworkRequest(extractFields(ans, fields))).build(); } else { return Response.status(200).entity( new NeutronNetworkRequest(networkInterface.getNetwork(netUUID))).build();
if (!networkInterface.networkExists(netUUID)) { throw new ResourceNotFoundException("network UUID does not exist."); if (networkInterface.networkInUse(netUUID)) { throw new ResourceConflictException("Network ID in use"); NeutronNetwork singleton = networkInterface.getNetwork(netUUID); Object[] instances = ServiceHelper.getGlobalInstances(INeutronNetworkAware.class, this, null); if (instances != null) { throw new ServiceUnavailableException("Couldn't get providers list. Please try again later"); networkInterface.removeNetwork(netUUID); if (instances != null) { for (Object instance : instances) {
if (!networkInterface.networkExists(netUUID)) { throw new ResourceNotFoundException("network UUID does not exist."); for (Object instance : instances) { INeutronNetworkAware service = (INeutronNetworkAware) instance; NeutronNetwork original = networkInterface.getNetwork(netUUID); int status = service.canUpdateNetwork(delta, original); if (status < 200 || status > 299) { networkInterface.updateNetwork(netUUID, delta); NeutronNetwork updatedSingleton = networkInterface.getNetwork(netUUID); if (instances != null) { for (Object instance : instances) { new NeutronNetworkRequest(networkInterface.getNetwork(netUUID))).build();
throw new BadRequestException("subnet UUID already exists"); if (!networkInterface.networkExists(singleton.getNetworkUUID())) { throw new ResourceNotFoundException("network UUID does not exist."); if (!networkInterface.networkExists(test.getNetworkUUID())) { throw new ResourceNotFoundException("network UUID does not exist.");
if (singleton.getExternalGatewayInfo() != null) { String externNetworkPtr = singleton.getExternalGatewayInfo().getNetworkID(); if (!networkInterface.networkExists(externNetworkPtr)) throw new BadRequestException("External Network Pointer doesn't exist"); NeutronNetwork externNetwork = networkInterface.getNetwork(externNetworkPtr); if (!externNetwork.isRouterExternal()) throw new BadRequestException("External Network Pointer isn't marked as router:external");
throw new BadRequestException("port UUID already exists"); if (!networkInterface.networkExists(singleton.getNetworkUUID())) { throw new ResourceNotFoundException("network UUID does not exist."); if (!networkInterface.networkExists(test.getNetworkUUID())) { throw new ResourceNotFoundException("network UUID does not exist.");
public int canDeleteSubnet(NeutronSubnet subnet) { /* check if router external - if so, check for EGW assignments or SNAT pool assignments * if either exist, can't delete router external subnet */ INeutronNetworkCRUD neutronNetworkIf = NeutronCRUDInterfaces.getINeutronNetworkCRUD(this); NeutronNetwork neutronNetwork = neutronNetworkIf.getNetwork(subnet.getNetworkUUID()); if (neutronNetwork.isRouterExternal()) { IfSBDoveEGWSNATPoolCRUD snatPoolDB = OpenDoveCRUDInterfaces.getIfDoveEGWSNATPoolCRUD(this); if (snatPoolDB.getEgwSNATPools().size() > 0 ) { return 409; } IfSBDoveGwIpv4CRUD gatewayIPDB = OpenDoveCRUDInterfaces.getIfSBDoveGwIpv4CRUD(this); for (OpenDoveGwIpv4 ipv4 : gatewayIPDB.getGwIpv4Pool()) { if (ipv4.getType().equalsIgnoreCase("external")) { return 409; } } } return 200; }
if (!networkInterface.networkExists(externNetworkPtr)) throw new BadRequestException("External Network Pointer does not exist"); NeutronNetwork externNetwork = networkInterface.getNetwork(externNetworkPtr); if (!externNetwork.isRouterExternal()) throw new BadRequestException("External Network Pointer isn't marked as router:external");
NeutronSubnet neutronSubnet = neutronSubnetIf.getSubnet(routerInterface.getSubnetUUID()); INeutronNetworkCRUD neutronNetworkIf = NeutronCRUDInterfaces.getINeutronNetworkCRUD(this); NeutronNetwork neutronNetwork = neutronNetworkIf.getNetwork(neutronSubnet.getNetworkUUID()); String networkName = "Neutron " + neutronNetwork.getID(); IfSBDoveSubnetCRUD doveSubnetDB = OpenDoveCRUDInterfaces.getIfDoveSubnetCRUD(this); NeutronRouter_Interface oldInterface = interfaceIterator.next(); NeutronSubnet oldNeutronSubnet = neutronSubnetIf.getSubnet(oldInterface.getSubnetUUID()); NeutronNetwork oldNeutronNetwork = neutronNetworkIf.getNetwork(oldNeutronSubnet.getNetworkUUID()); String oldNetworkUUID = "Neutron " + oldNeutronNetwork.getID(); OpenDoveNetwork oldODN = doveNetworkDB.getNetworkByName(oldNetworkUUID);
if (externalNetworkUUID == null) throw new BadRequestException("external network UUID doesn't exist."); if (!networkInterface.networkExists(externalNetworkUUID)) throw new BadRequestException("external network UUID doesn't exist."); NeutronNetwork externNetwork = networkInterface.getNetwork(externalNetworkUUID); if (!externNetwork.isRouterExternal()) throw new BadRequestException("external network isn't marked router:external");
String neutronNetwork = port.getNetworkUUID(); INeutronNetworkCRUD neutronNetworkCRUDif = NeutronCRUDInterfaces.getINeutronNetworkCRUD(o); NeutronNetwork network = neutronNetworkCRUDif.getNetwork(neutronNetwork); String doveDomainName = "Neutron "+port.getTenantID(); String doveNetworkName = "Neutron "+network.getID();
NeutronSubnet neutronSubnet = neutronSubnetIf.getSubnet(routerInterface.getSubnetUUID()); INeutronNetworkCRUD neutronNetworkIf = NeutronCRUDInterfaces.getINeutronNetworkCRUD(this); NeutronNetwork neutronNetwork = neutronNetworkIf.getNetwork(neutronSubnet.getNetworkUUID()); String networkUUID = "Neutron " + neutronNetwork.getID(); IfSBDoveSubnetCRUD doveSubnetDB = OpenDoveCRUDInterfaces.getIfDoveSubnetCRUD(this); NeutronNetwork oldNeutronNetwork = neutronNetworkIf.getNetwork(oldNeutronSubnet.getNetworkUUID()); String oldNetworkUUID = "Neutron " + oldNeutronNetwork.getID(); OpenDoveNetwork oldODN = doveNetworkDB.getNetworkByName(oldNetworkUUID);
throw new BadRequestException("singleton UUID doesn't exist."); NeutronNetwork externNetwork = networkInterface.getNetwork( sourceFloatingIP.getFloatingNetworkUUID());
private int canAllocateEGW(String uuid, boolean negate) { /* if object is shared and domains are not separated, * then we need to configure an external gateway at this point. If we don't have one * don't create the port */ IfNBSystemRU systemDB = OpenDoveCRUDInterfaces.getIfSystemRU(this); INeutronNetworkCRUD neutronNetworkIf = NeutronCRUDInterfaces.getINeutronNetworkCRUD(this); NeutronNetwork neutronNetwork = neutronNetworkIf.getNetwork(uuid); if (!neutronNetwork.isRouterExternal()) { if (neutronNetwork.isShared()) { OpenDoveNeutronControlBlock controlBlock = systemDB.getSystemBlock(); //get system block if ((!negate && controlBlock.getDomainSeparation()) || (negate && !controlBlock.getDomainSeparation())) { IfOpenDoveServiceApplianceCRUD serviceApplianceDB = OpenDoveCRUDInterfaces.getIfDoveServiceApplianceCRUD(this); for (OpenDoveServiceAppliance oDSA : serviceApplianceDB.getAppliances()) { if (oDSA.get_isDGW() && oDSA.getDoveTunnel() != null){ return 200; } } return 400; } } } return 200; } }
OpenDoveCRUDInterfaces.getIfDoveNetworkSubnetAssociationCRUD(this); INeutronNetworkCRUD neutronNetworkIf = NeutronCRUDInterfaces.getINeutronNetworkCRUD(this); NeutronNetwork neutronNetwork = neutronNetworkIf.getNetwork(port.getNetworkUUID()); INeutronSubnetCRUD neutronSubnetIf = NeutronCRUDInterfaces.getINeutronSubnetCRUD(this); NeutronSubnet neutronSubnet = neutronSubnetIf.getSubnet(port.getFixedIPs().get(0).getSubnetUUID());
OpenDoveCRUDInterfaces.getIfDoveNetworkSubnetAssociationCRUD(this); INeutronNetworkCRUD neutronNetworkIf = NeutronCRUDInterfaces.getINeutronNetworkCRUD(this); NeutronNetwork neutronNetwork = neutronNetworkIf.getNetwork(subnet.getNetworkUUID()); if (!neutronNetwork.isRouterExternal()) { if (neutronNetwork.isShared()) {
OpenDoveCRUDInterfaces.getIfDoveNetworkSubnetAssociationCRUD(this); INeutronNetworkCRUD neutronNetworkIf = NeutronCRUDInterfaces.getINeutronNetworkCRUD(this); NeutronNetwork neutronNetwork = neutronNetworkIf.getNetwork(port.getNetworkUUID()); INeutronSubnetCRUD neutronSubnetIf = NeutronCRUDInterfaces.getINeutronSubnetCRUD(this); NeutronSubnet neutronSubnet = neutronSubnetIf.getSubnet(port.getFixedIPs().get(0).getSubnetUUID());