X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-model-util%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fmodel%2Futil%2FRangeConstraintImpl.java;h=ce06bfed82f7c5c096e75478ba5f51c30866233c;hb=a1659168cb72dafbb6dad2c4096893959543d421;hp=6f9a3f18a941ccb3eaa98bea83fea92acf530057;hpb=aa0d59e9afecc484e8d0e219d3156e7817266e28;p=yangtools.git diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/RangeConstraintImpl.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/RangeConstraintImpl.java index 6f9a3f18a9..ce06bfed82 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/RangeConstraintImpl.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/RangeConstraintImpl.java @@ -7,22 +7,21 @@ */ package org.opendaylight.yangtools.yang.model.util; -import com.google.common.base.Optional; import com.google.common.base.Preconditions; import java.util.Objects; +import java.util.Optional; import org.opendaylight.yangtools.concepts.Immutable; -import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint; import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint; /** - * {@link Immutable} implementation of {@link LengthConstraint}. - * - * Range constraint based on supplied parameters with additional behaviour: + * {@link Immutable} implementation of {@link RangeConstraint}. * + *

+ * Range constraint based on supplied parameters with additional behavior: *

*/ @@ -38,34 +37,39 @@ final class RangeConstraintImpl implements RangeConstraint, Immutable { RangeConstraintImpl(final Number min, final Number max, final Optional description, final Optional reference) { - super(); + this(min, max, description, reference, "range-out-of-specified-bounds", "The argument is out of bounds <" + min + + ", " + max + ">"); + } + + RangeConstraintImpl(final Number min, final Number max, final Optional description, + final Optional reference, final String errorAppTag, final String errorMessage) { this.min = Preconditions.checkNotNull(min, "min must not be null."); this.max = Preconditions.checkNotNull(max, "max must not be null."); - this.description = description.orNull(); - this.reference = reference.orNull(); - - this.errorAppTag = "range-out-of-specified-bounds"; - this.errorMessage = "The argument is out of bounds <" + min + ", " + max + ">"; + this.description = description.orElse(null); + this.reference = reference.orElse(null); + this.errorAppTag = errorAppTag != null ? errorAppTag : "range-out-of-specified-bounds"; + this.errorMessage = errorMessage != null ? errorMessage : "The argument is out of bounds <" + min + ", " + max + + ">"; } @Override - public String getDescription() { - return description; + public Optional getDescription() { + return Optional.ofNullable(description); } @Override - public String getErrorAppTag() { - return errorAppTag; + public Optional getErrorAppTag() { + return Optional.ofNullable(errorAppTag); } @Override - public String getErrorMessage() { - return errorMessage; + public Optional getErrorMessage() { + return Optional.ofNullable(errorMessage); } @Override - public String getReference() { - return reference; + public Optional getReference() { + return Optional.ofNullable(reference); } @Override @@ -96,60 +100,17 @@ final class RangeConstraintImpl implements RangeConstraint, Immutable { if (this == obj) { return true; } - if (obj == null) { - return false; - } - if (getClass() != obj.getClass()) { + if (!(obj instanceof RangeConstraintImpl)) { return false; } final RangeConstraintImpl other = (RangeConstraintImpl) obj; - if (description == null) { - if (other.description != null) { - return false; - } - } else if (!description.equals(other.description)) { - return false; - } - if (max == null) { - if (other.max != null) { - return false; - } - } else if (!max.equals(other.max)) { - return false; - } - if (min == null) { - if (other.min != null) { - return false; - } - } else if (!min.equals(other.min)) { - return false; - } - if (reference == null) { - if (other.reference != null) { - return false; - } - } else if (!reference.equals(other.reference)) { - return false; - } - return true; + return Objects.equals(description, other.description) && Objects.equals(max, other.max) + && Objects.equals(min, other.min) && Objects.equals(reference, other.reference); } @Override public String toString() { - final StringBuilder builder = new StringBuilder(); - builder.append("RangeConstraintImpl [min="); - builder.append(min); - builder.append(", max="); - builder.append(max); - builder.append(", description="); - builder.append(description); - builder.append(", reference="); - builder.append(reference); - builder.append(", errorAppTag="); - builder.append(errorAppTag); - builder.append(", errorMessage="); - builder.append(errorMessage); - builder.append("]"); - return builder.toString(); + return "RangeConstraintImpl [min=" + min + ", max=" + max + ", description=" + description + + ", reference=" + reference + ", errorAppTag=" + errorAppTag + ", errorMessage=" + errorMessage + "]"; } -} \ No newline at end of file +}