From: Tony Tkacik Date: Fri, 23 May 2014 13:56:17 +0000 (+0000) Subject: Merge "BUG-509: add some documentation" X-Git-Tag: autorelease-tag-v20140601202136_82eb3f9~34 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=commitdiff_plain;h=1e0f8fb34193bce41bacadd0219354537b6d8f8f;hp=b2f1e02e9c650f9c9dbbe8eb5b7fa52210276866 Merge "BUG-509: add some documentation" --- diff --git a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/AlwaysFailOperation.java b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/AlwaysFailOperation.java index 4e3aa49113..5934fd6246 100644 --- a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/AlwaysFailOperation.java +++ b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/AlwaysFailOperation.java @@ -6,8 +6,13 @@ import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier.PathArgument; import com.google.common.base.Optional; import com.google.common.primitives.UnsignedLong; +/** + * An implementation of apply operation which fails to do anything, + * consistently. An instance of this class is used by the data tree + * if it does not have a SchemaContext attached and hence cannot + * perform anything meaningful. + */ final class AlwaysFailOperation implements ModificationApplyOperation { - @Override public Optional apply(final NodeModification modification, final Optional storeMeta, final UnsignedLong subtreeVersion) { @@ -25,7 +30,7 @@ final class AlwaysFailOperation implements ModificationApplyOperation { } @Override - public void verifyStructure(final NodeModification modification) throws IllegalArgumentException { + public void verifyStructure(final NodeModification modification) { throw new IllegalStateException("Schema Context is not available."); } } \ No newline at end of file diff --git a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/DataNodeContainerModificationStrategy.java b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/DataNodeContainerModificationStrategy.java index aea070c120..dc891482ab 100644 --- a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/DataNodeContainerModificationStrategy.java +++ b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/DataNodeContainerModificationStrategy.java @@ -39,6 +39,12 @@ import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; +/** + * Base strategy for applying changes to a ContainerNode, irrespective of its + * actual type. + * + * @param Type of the container node + */ abstract class DataNodeContainerModificationStrategy extends NormalizedNodeContainerModificationStrategy { private final T schema; diff --git a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/NodeModification.java b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/NodeModification.java index f2720b57ae..fccc1ed5be 100644 --- a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/NodeModification.java +++ b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/store/impl/tree/data/NodeModification.java @@ -7,8 +7,6 @@ */ package org.opendaylight.controller.md.sal.dom.store.impl.tree.data; -import static com.google.common.base.Preconditions.checkState; - import java.util.LinkedHashMap; import java.util.Map; @@ -21,6 +19,7 @@ import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import com.google.common.base.Optional; +import com.google.common.base.Preconditions; import com.google.common.base.Predicate; /** @@ -187,7 +186,7 @@ final class NodeModification implements StoreTreeNode, Identif @GuardedBy("this") private void checkSealed() { - checkState(!sealed, "Node Modification is sealed. No further changes allowed."); + Preconditions.checkState(!sealed, "Node Modification is sealed. No further changes allowed."); } public synchronized void seal() {