X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fswitchmanager%2Fapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fswitchmanager%2FSubnet.java;h=2794109c242bc420677b1e6209bc72921a8a7f6d;hb=4142ab5dce3021e6f6551aada26c7523cd134844;hp=56df8e26bd094b82bdd8d6ddb89cec4ab249e7a9;hpb=b97e2841f2c297b5e1691cf970d26a0e8d40953d;p=controller.git diff --git a/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/Subnet.java b/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/Subnet.java index 56df8e26bd..2794109c24 100644 --- a/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/Subnet.java +++ b/opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/Subnet.java @@ -25,6 +25,7 @@ public class Subnet implements Cloneable, Serializable { private static final long serialVersionUID = 1L; // Key fields private InetAddress networkAddress; + private transient InetAddress subnetPrefix; private short subnetMaskLength; // Property fields private short vlan; @@ -114,6 +115,7 @@ public class Subnet implements Cloneable, Serializable { */ public Subnet setNetworkAddress(InetAddress networkAddress) { this.networkAddress = networkAddress; + this.subnetPrefix = null; return this; } @@ -159,10 +161,12 @@ public class Subnet implements Cloneable, Serializable { if (ip == null) { return false; } - InetAddress thisPrefix = getPrefixForAddress(this.networkAddress); + if(subnetPrefix == null) { + subnetPrefix = getPrefixForAddress(this.networkAddress); + } InetAddress otherPrefix = getPrefixForAddress(ip); boolean isSubnetOf = true; - if (((thisPrefix == null) || (otherPrefix == null)) || (!thisPrefix.equals(otherPrefix)) ) { + if (((subnetPrefix == null) || (otherPrefix == null)) || (!subnetPrefix.equals(otherPrefix)) ) { isSubnetOf = false; } return isSubnetOf;