X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fswitchmanager%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fswitchmanager%2FSubnetConfig.java;h=87dd99da7f80736c76fc2e31765e84d46667fd35;hp=1e974af3f040e1ec4cd96fe60180d99cf661ae04;hb=f5ece81719a8a262bd084eb609ad188e37d28d19;hpb=29f7cfb54b580928c7feac63abce028a7014b0d5 diff --git a/opendaylight/switchmanager/src/main/java/org/opendaylight/controller/switchmanager/SubnetConfig.java b/opendaylight/switchmanager/src/main/java/org/opendaylight/controller/switchmanager/SubnetConfig.java index 1e974af3f0..87dd99da7f 100644 --- a/opendaylight/switchmanager/src/main/java/org/opendaylight/controller/switchmanager/SubnetConfig.java +++ b/opendaylight/switchmanager/src/main/java/org/opendaylight/controller/switchmanager/SubnetConfig.java @@ -10,22 +10,23 @@ package org.opendaylight.controller.switchmanager; import java.io.Serializable; -import java.lang.reflect.Field; -import java.net.Inet6Address; import java.net.InetAddress; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; -import javax.xml.bind.annotation.XmlRootElement; + import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlRootElement; + import org.opendaylight.controller.sal.core.Node; import org.opendaylight.controller.sal.core.NodeConnector; import org.opendaylight.controller.sal.utils.GUIField; +import org.opendaylight.controller.sal.utils.NetUtils; import org.opendaylight.controller.sal.utils.NodeConnectorCreator; /** @@ -36,10 +37,6 @@ import org.opendaylight.controller.sal.utils.NodeConnectorCreator; public class SubnetConfig implements Serializable { //static fields are by default excluded by Gson parser private static final long serialVersionUID = 1L; - private static final String regexIP = "^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." - + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." - + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." - + "([01]?\\d\\d?|2[0-4]\\d|25[0-5])[/](\\d|[12]\\d|3[0-2])$"; private static final String prettyFields[] = { GUIField.NAME.toString(), GUIField.GATEWAYIP.toString(), GUIField.NODEPORTS.toString() }; @@ -94,28 +91,6 @@ public class SubnetConfig implements Serializable { return maskLen; } - public boolean isIPv6AddressValid() { - if (subnet == null) - return false; - String values[] = subnet.split("/"); - try { - //when given an IP address, InetAddress.getByName validates the ip address - InetAddress addr = InetAddress.getByName(values[0]); - if (!(addr instanceof Inet6Address)) { - return false; - } - } catch (UnknownHostException ex) { - return false; - } - if (values.length >= 2) { - int prefix = Integer.valueOf(values[1]); - if ((prefix < 0) || (prefix > 128)) { - return false; - } - } - return true; - } - private Set getPortList(String ports) { /* * example: @@ -142,9 +117,9 @@ public class SubnetConfig implements Serializable { private boolean hasValidIP() { if (subnet != null) { - if (subnet.matches(regexIP)) { + if (NetUtils.isIPv4AddressValid(subnet)) { return true; - } else if (isIPv6AddressValid()) { + } else if (NetUtils.isIPv6AddressValid(subnet)) { return true; } } @@ -192,18 +167,6 @@ public class SubnetConfig implements Serializable { return false; } - public static List getFieldsNames() { - List fieldList = new ArrayList(); - for (Field fld : SubnetConfig.class.getDeclaredFields()) { - fieldList.add(fld.getName()); - } - //remove the four static fields - for (short i = 0; i < 3; i++) { - fieldList.remove(0); - } - return fieldList; - } - public static List getGuiFieldsNames() { List fieldList = new ArrayList(); for (String str : prettyFields) {