X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsamples%2Fclustering-test-app%2Fprovider%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fclustering%2Fit%2Fprovider%2FCarEntryDataTreeCommitCohort.java;h=8c2e0b5f29d55f877c5dac60c8a472dd47927b9c;hb=HEAD;hp=1b55dbac58cf4465c17f9cd6a9ae70c0164ff838;hpb=5fa5244653ee7ad3042324fb1f21fad69581b3d2;p=controller.git diff --git a/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/CarEntryDataTreeCommitCohort.java b/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/CarEntryDataTreeCommitCohort.java index 1b55dbac58..8c2e0b5f29 100644 --- a/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/CarEntryDataTreeCommitCohort.java +++ b/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/CarEntryDataTreeCommitCohort.java @@ -20,12 +20,11 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controll import org.opendaylight.yangtools.util.concurrent.FluentFutures; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild; import org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.model.api.SchemaContext; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -34,41 +33,39 @@ import org.slf4j.LoggerFactory; * * @author Thomas Pantelis */ -public class CarEntryDataTreeCommitCohort implements DOMDataTreeCommitCohort { +public final class CarEntryDataTreeCommitCohort implements DOMDataTreeCommitCohort { private static final Logger LOG = LoggerFactory.getLogger(CarEntryDataTreeCommitCohort.class); private static final QName YEAR_QNAME = QName.create(Cars.QNAME, "year").intern(); private static final NodeIdentifier YEAR_NODE_ID = new NodeIdentifier(YEAR_QNAME); @Override - public FluentFuture canCommit(Object txId, SchemaContext ctx, - Collection candidates) { + public FluentFuture canCommit(final Object txId, final EffectiveModelContext ctx, + final Collection candidates) { for (DOMDataTreeCandidate candidate : candidates) { // Simple data validation - verify the year, if present, is >= 1990 final DataTreeCandidateNode rootNode = candidate.getRootNode(); - final Optional> dataAfter = rootNode.getDataAfter(); + final NormalizedNode dataAfter = rootNode.dataAfter(); LOG.info("In canCommit: modificationType: {}, dataBefore: {}, dataAfter: {}", - rootNode.getModificationType(), rootNode.getDataBefore(), dataAfter); + rootNode.modificationType(), rootNode.dataBefore(), dataAfter); // Note: we don't want to process DELETE modifications but we don't need to explicitly check the // ModificationType because dataAfter will not be present. Also dataAfter *should* always contain a // MapEntryNode but we verify anyway. - if (dataAfter.isPresent()) { - final NormalizedNode normalizedNode = dataAfter.get(); - Verify.verify(normalizedNode instanceof DataContainerNode, - "Expected type DataContainerNode, actual was %s", normalizedNode.getClass()); - DataContainerNode entryNode = (DataContainerNode) normalizedNode; - final Optional> possibleYear = - entryNode.getChild(YEAR_NODE_ID); + if (dataAfter != null) { + Verify.verify(dataAfter instanceof DataContainerNode, + "Expected type DataContainerNode, actual was %s", dataAfter.getClass()); + DataContainerNode entryNode = (DataContainerNode) dataAfter; + final Optional possibleYear = entryNode.findChildByArg(YEAR_NODE_ID); if (possibleYear.isPresent()) { - final Number year = (Number) possibleYear.get().getValue(); + final Number year = (Number) possibleYear.orElseThrow().body(); LOG.info("year is {}", year); - if (!(year.longValue() >= 1990)) { + if (year.longValue() < 1990) { return FluentFutures.immediateFailedFluentFuture(new DataValidationFailedException( DOMDataTreeIdentifier.class, candidate.getRootPath(), String.format("Invalid year %d - year must be >= 1990", year)));