Support LB in kubevirt networking application.
Change-Id: I59578fc0b778173a20c958b641cf9bf1abe69bc6
(cherry picked from commit c8a8759e3adc292a429a4ca7173d15c220b7ea3c)
diff --git a/apps/kubevirt-networking/api/src/main/java/org/onosproject/kubevirtnetworking/api/DefaultKubevirtLoadBalancerRule.java b/apps/kubevirt-networking/api/src/main/java/org/onosproject/kubevirtnetworking/api/DefaultKubevirtLoadBalancerRule.java
index 453610e..bd2f64a 100644
--- a/apps/kubevirt-networking/api/src/main/java/org/onosproject/kubevirtnetworking/api/DefaultKubevirtLoadBalancerRule.java
+++ b/apps/kubevirt-networking/api/src/main/java/org/onosproject/kubevirtnetworking/api/DefaultKubevirtLoadBalancerRule.java
@@ -26,6 +26,7 @@
*/
public final class DefaultKubevirtLoadBalancerRule implements KubevirtLoadBalancerRule {
private static final String NOT_NULL_MSG = "Load Balancer Rule % cannot be null";
+ private static final String ICMP = "ICMP";
private final String protocol;
private final Integer portRangeMax;
@@ -70,9 +71,10 @@
return false;
}
DefaultKubevirtLoadBalancerRule that = (DefaultKubevirtLoadBalancerRule) o;
+
return protocol.equals(that.protocol) &&
- portRangeMax.equals(that.portRangeMax) &&
- portRangeMin.equals(that.portRangeMin);
+ Objects.equals(portRangeMax, that.portRangeMax) &&
+ Objects.equals(portRangeMin, that.portRangeMin);
}
@Override
@@ -107,9 +109,11 @@
@Override
public KubevirtLoadBalancerRule build() {
checkArgument(protocol != null, NOT_NULL_MSG, "protocol");
- checkArgument(portRangeMax != null, NOT_NULL_MSG, "portRangeMax");
- checkArgument(portRangeMin != null, NOT_NULL_MSG, "portRangeMin");
+ if (!protocol.equalsIgnoreCase(ICMP)) {
+ checkArgument(portRangeMax != null, NOT_NULL_MSG, "portRangeMax");
+ checkArgument(portRangeMin != null, NOT_NULL_MSG, "portRangeMin");
+ }
return new DefaultKubevirtLoadBalancerRule(protocol, portRangeMax, portRangeMin);
}