From 4321ee152a072801abb23e3f5de377c130be80e3 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Mon, 17 Jan 2022 20:32:42 +0100 Subject: [PATCH] Disconnect DataTreeConfiguration.Builder concepts.Builder is being removed, make sure we do not use it for DataTreeConfiguration. JIRA: YANGTOOLS-1328 Change-Id: Ifdfba8436fb8207e9fa56f20774d7265ebced818 Signed-off-by: Robert Varga --- .../data/tree/api/DataTreeConfiguration.java | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeConfiguration.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeConfiguration.java index 21d2bc890a..6fc4ee3382 100644 --- a/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeConfiguration.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeConfiguration.java @@ -13,6 +13,7 @@ import com.google.common.annotations.Beta; import com.google.common.base.MoreObjects; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.concepts.Immutable; +import org.opendaylight.yangtools.concepts.Mutable; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; /** @@ -91,19 +92,20 @@ public class DataTreeConfiguration implements Immutable { } } - public static Builder builder(final TreeType treeType) { + public static @NonNull Builder builder(final TreeType treeType) { return new Builder(treeType); } - public Builder copyBuilder() { + public @NonNull Builder copyBuilder() { return new Builder(treeType) .setMandatoryNodesValidation(isMandatoryNodesValidationEnabled()) .setUniqueIndexes(isUniqueIndexEnabled()) .setRootPath(getRootPath()); } - public static class Builder implements org.opendaylight.yangtools.concepts.Builder { + public static class Builder implements Mutable { private final TreeType treeType; + private YangInstanceIdentifier rootPath; private boolean uniqueIndexes; private boolean mandatoryNodesValidation; @@ -113,23 +115,27 @@ public class DataTreeConfiguration implements Immutable { rootPath = YangInstanceIdentifier.empty(); } - public Builder setUniqueIndexes(final boolean uniqueIndexes) { + public @NonNull Builder setUniqueIndexes(final boolean uniqueIndexes) { this.uniqueIndexes = uniqueIndexes; return this; } - public Builder setMandatoryNodesValidation(final boolean mandatoryNodesValidation) { + public @NonNull Builder setMandatoryNodesValidation(final boolean mandatoryNodesValidation) { this.mandatoryNodesValidation = mandatoryNodesValidation; return this; } - public Builder setRootPath(final YangInstanceIdentifier rootPath) { + public @NonNull Builder setRootPath(final YangInstanceIdentifier rootPath) { this.rootPath = rootPath.toOptimized(); return this; } - @Override - public DataTreeConfiguration build() { + /** + * Return {@link DataTreeConfiguration} as defined by this builder's current state. + * + * @return A DataTreeConfiguration + */ + public @NonNull DataTreeConfiguration build() { return new DataTreeConfiguration(treeType, rootPath, uniqueIndexes, mandatoryNodesValidation); } } -- 2.36.6