NeutronSubnet ans = new NeutronSubnet(); for (String s : fields) { switch (s) { case "id": ans.setSubnetUUID(this.getSubnetUUID()); break; case "network_id": ans.setNetworkUUID(this.getNetworkUUID()); break; case "name": ans.setName(this.getName()); break; case "ip_version": ans.setIpVersion(this.getIpVersion()); break; case "cidr": ans.setCidr(this.getCidr()); break; case "gateway_ip": ans.setGatewayIP(this.getGatewayIP()); break; case "dns_nameservers": List<String> nsList = new ArrayList<>(); nsList.addAll(this.getDnsNameservers()); ans.setDnsNameservers(nsList); break; case "allocation_pools": List<NeutronSubnetIPAllocationPool> aPools = new ArrayList<>(); aPools.addAll(this.getAllocationPools());
@Override public boolean addSubnet(NeutronSubnet input) { String id = input.getID(); if (subnetExists(id)) { return false; } addMd(input); return true; }
public NeutronSubnet createNeutronSubnet(String subnetId, String tenantId, String networkId, String cidr) { INeutronSubnetCRUD iNeutronSubnetCRUD = (INeutronSubnetCRUD) ServiceHelper.getGlobalInstance(INeutronSubnetCRUD.class, this); NeutronSubnet ns = new NeutronSubnet(); ns.setID(subnetId); ns.setCidr(cidr); ns.initDefaults(); ns.setNetworkUUID(networkId); ns.setTenantID(tenantId); iNeutronSubnetCRUD.addSubnet(ns); return ns; }
protected NeutronSubnet fromMd(Subnet subnet) { NeutronSubnet result = new NeutronSubnet(); result.setName(subnet.getName()); result.setTenantID(String.valueOf(subnet.getTenantId().getValue()).replace("-","")); result.setNetworkUUID(subnet.getNetworkId().getValue()); result.setIpVersion(IPV_MAP.get(subnet.getIpVersion())); result.setCidr(String.valueOf(subnet.getCidr().getValue())); result.setIpV6RaMode(DHCPV6_MAP.get(subnet.getIpv6RaMode())); result.setIpV6AddressMode(DHCPV6_MAP.get(subnet.getIpv6AddressMode())); result.setEnableDHCP(subnet.isEnableDhcp()); if (subnet.getAllocationPools() != null) { List<NeutronSubnetIPAllocationPool> allocationPools = new ArrayList<>(); result.setAllocationPools(allocationPools); result.setDnsNameservers(dnsNameServers); result.setID(subnet.getUuid().getValue()); if (port.getDeviceOwner().equalsIgnoreCase("network:router_interface") || port.getDeviceOwner().equalsIgnoreCase("network:router_gateway")) { result.setGatewayIP(String.valueOf(subnet.getGatewayIp().getValue())); if (ip.getSubnetUUID().equals(result.getID())) { allPorts.add(port); result.setPorts(ports); return result;
protected Subnet toMd(NeutronSubnet subnet) { SubnetBuilder subnetBuilder = new SubnetBuilder(); if (subnet.getName() != null) { subnetBuilder.setName(subnet.getName()); if (subnet.getTenantID() != null) { subnetBuilder.setTenantId(toUuid(subnet.getTenantID())); if (subnet.getNetworkUUID() != null) { subnetBuilder.setNetworkId(toUuid(subnet.getNetworkUUID())); if (subnet.getIpVersion() != null) { ImmutableBiMap<Integer, Class<? extends IpVersionBase>> mapper = IPV_MAP.inverse(); subnetBuilder.setIpVersion(mapper.get(subnet .getIpVersion())); if (subnet.getCidr() != null) { IpPrefix ipPrefix = new IpPrefix(subnet.getCidr().toCharArray()); subnetBuilder.setCidr(ipPrefix); if (subnet.getGatewayIP() != null) { IpAddress ipAddress = new IpAddress(subnet.getGatewayIP() .toCharArray()); subnetBuilder.setGatewayIp(ipAddress); if (subnet.getIpV6RaMode() != null) { ImmutableBiMap<String, Class<? extends Dhcpv6Base>> mapper = DHCPV6_MAP.inverse(); subnetBuilder.setIpv6RaMode(mapper.get(subnet.getIpV6RaMode()));
if (subnet.getID().equals(subnetID)) { networkID = subnet.getNetworkUUID(); break;
final NeutronSubnet subnet = neutronSubnetCache.getSubnet(destNeutronRouterInterface.getSubnetUUID()); final NeutronNetwork neutronNetwork = subnet != null ? neutronNetworkCache.getNetwork(subnet.getNetworkUUID()) : null; final String destinationSegmentationId = neutronNetwork != null ? neutronNetwork.getProviderSegmentationID() : null; final Boolean isExternal = neutronNetwork != null ? neutronNetwork.getRouterExternal() : Boolean.TRUE; final String cidr = subnet != null ? subnet.getCidr() : null; final int mask = getMaskLenFromCidr(cidr); networkIdToRouterMacCache.put(neutronNetwork.getNetworkUUID(), macAddress); networkIdToRouterIpListCache.put(neutronNetwork.getNetworkUUID(), new ArrayList<>(ipList)); subnetIdToRouterInterfaceCache.put(subnet.getSubnetUUID(), destNeutronRouterInterface); networkIdToRouterMacCache.remove(neutronNetwork.getNetworkUUID()); networkIdToRouterIpListCache.remove(neutronNetwork.getNetworkUUID()); subnetIdToRouterInterfaceCache.remove(subnet.getSubnetUUID());
final String sourceNetworkId = sourceSubnet == null ? null : sourceSubnet.getNetworkUUID(); if (sourceNetworkId == null) { LOG.error("Could not get provider Network ID from subnet {}", sourceSubnetId); final String macAddress2 = sourceNeutronPort != null ? sourceNeutronPort.getMacAddress() : null; final List<Neutron_IPs> ipList2 = sourceNeutronPort != null ? sourceNeutronPort.getFixedIPs() : null; final String cidr2 = sourceSubnet.getCidr(); final int mask2 = getMaskLenFromCidr(cidr2);
private NeutronSubnet fromMd(Subnet subnet) { NeutronSubnet result = new NeutronSubnet(); result.setName(subnet.getName()); if (subnet.getTenantId() != null) { result.setTenantID(String.valueOf(subnet.getTenantId().getValue()).replace("-","")); result.setNetworkUUID(subnet.getNetworkId().getValue()); result.setIpVersion(IPV_MAP.get(subnet.getIpVersion())); result.setCidr(String.valueOf(subnet.getCidr().getValue())); if (subnet.getGatewayIp() != null) { result.setGatewayIP(String.valueOf(subnet.getGatewayIp().getValue())); result.setIpV6RaMode(DHCPV6_MAP.get(subnet.getIpv6RaMode())); result.setIpV6AddressMode(DHCPV6_MAP.get(subnet.getIpv6AddressMode())); result.setEnableDHCP(subnet.isEnableDhcp()); if (subnet.getAllocationPools() != null) { List<NeutronSubnetIPAllocationPool> allocationPools = new ArrayList<>(); result.setAllocationPools(allocationPools); result.setDnsNameservers(dnsNameServers); result.setID(subnet.getUuid().getValue()); if (port.getFixedIPs() != null) { for (Neutron_IPs ip : port.getFixedIPs()) { if (ip.getSubnetUUID().equals(result.getID())) { allPorts.add(port);
/** * Clean up all created neutron objects. */ public void destroy() { for (PortInfo portInfo : portInfoByName.values()) { neutronUtils.removeNeutronPort(portInfo.neutronPort.getID()); } //TODO: probably more polite to clean up everything else as well... //TODO: for now just assume that the docker image will be recreated //TODO: before each test portInfoByName.clear(); if (neutronSubnet != null) { neutronUtils.removeNeutronSubnet(neutronSubnet.getID()); neutronSubnet = null; } if (neutronNetwork != null) { neutronUtils.removeNeutronNetwork(neutronNetwork.getID()); neutronNetwork = null; } }