configurable PPPoE flow per service
Change-Id: I71905b183faf700dd087f5bb001f502af27117ee
diff --git a/api/src/main/java/org/opencord/sadis/UniTagInformation.java b/api/src/main/java/org/opencord/sadis/UniTagInformation.java
index 12bbaae..0e5c438 100644
--- a/api/src/main/java/org/opencord/sadis/UniTagInformation.java
+++ b/api/src/main/java/org/opencord/sadis/UniTagInformation.java
@@ -76,6 +76,9 @@
@JsonProperty(value = "isIgmpRequired")
private boolean isIgmpRequired;
+ @JsonProperty(value = "isPppoeRequired")
+ private boolean isPppoeRequired;
+
public UniTagInformation() {
}
@@ -90,7 +93,7 @@
final String downstreamOltBandwidthProfile,
final String serviceName, final boolean enableMacLearning,
final String configuredMacAddress, final boolean isDhcpRequired,
- final boolean isIgmpRequired) {
+ final boolean isIgmpRequired, final boolean isPppoeRequired) {
this.uniTagMatch = uniTagMatch;
this.ponCTag = ponCTag;
this.ponSTag = ponSTag;
@@ -108,6 +111,7 @@
this.configuredMacAddress = configuredMacAddress;
this.isDhcpRequired = isDhcpRequired;
this.isIgmpRequired = isIgmpRequired;
+ this.isPppoeRequired = isPppoeRequired;
}
//CHECKSTYLE:ON
@@ -179,6 +183,10 @@
return isIgmpRequired;
}
+ public final boolean getIsPppoeRequired() {
+ return isPppoeRequired;
+ }
+
@Override
public boolean equals(Object o) {
if (this == o) {
@@ -226,6 +234,9 @@
if (isIgmpRequired != that.isIgmpRequired) {
return false;
}
+ if (isPppoeRequired != that.isPppoeRequired) {
+ return false;
+ }
if (upstreamBandwidthProfile != null ? !upstreamBandwidthProfile.equals(that.upstreamBandwidthProfile) :
that.upstreamBandwidthProfile != null) {
return false;
@@ -266,6 +277,7 @@
result = 31 * result + (configuredMacAddress != null ? configuredMacAddress.hashCode() : 0);
result = 31 * result + (isDhcpRequired ? 1 : 0);
result = 31 * result + (isIgmpRequired ? 1 : 0);
+ result = 31 * result + (isPppoeRequired ? 1 : 0);
return result;
}
@@ -289,6 +301,7 @@
sb.append(", configuredMacAddress='").append(configuredMacAddress).append('\'');
sb.append(", isDhcpRequired=").append(isDhcpRequired);
sb.append(", isIgmpRequired=").append(isIgmpRequired);
+ sb.append(", isPppoeRequired=").append(isPppoeRequired);
sb.append('}');
return sb.toString();
}
@@ -312,6 +325,7 @@
private String configuredMacAddress;
private boolean isDhcpRequired;
private boolean isIgmpRequired;
+ private boolean isPppoeRequired;
public final Builder setUniTagMatch(final VlanId uniTagMatch) {
this.uniTagMatch = uniTagMatch;
@@ -398,14 +412,19 @@
return this;
}
+ public final Builder setIsPppoeRequired(final boolean isPppoeRequired) {
+ this.isPppoeRequired = isPppoeRequired;
+ return this;
+ }
+
public final UniTagInformation build() {
return new UniTagInformation(this.uniTagMatch, this.ponCTag,
this.ponSTag, this.usPonCTagPriority, this.usPonSTagPriority,
this.dsPonCTagPriority, this.dsPonSTagPriority, this.technologyProfileId,
this.upstreamBandwidthProfile, this.downstreamBandwidthProfile,
this.upstreamOltBandwidthProfile, this.downstreamOltBandwidthProfile,
- this.serviceName, this.enableMacLearning,
- this.configuredMacAddress, this.isDhcpRequired, this.isIgmpRequired);
+ this.serviceName, this.enableMacLearning, this.configuredMacAddress,
+ this.isDhcpRequired, this.isIgmpRequired, this.isPppoeRequired);
}
}
}