X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-dom-it%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Ftest%2Fconnect%2Fdom%2FCrossBrokerMountPointTest.java;h=7ad1b547f08bb362d8e201c7a379a948f9d58741;hp=ee9f0063653d98b72fc0e5ee9918f501e4d71d36;hb=4ad8e1880cfee424eac9e4f12e461d98445a6e44;hpb=d8d8f731bbe6c58fcbd0e616734e2e230aaf4ab4 diff --git a/opendaylight/md-sal/sal-binding-dom-it/src/test/java/org/opendaylight/controller/sal/binding/test/connect/dom/CrossBrokerMountPointTest.java b/opendaylight/md-sal/sal-binding-dom-it/src/test/java/org/opendaylight/controller/sal/binding/test/connect/dom/CrossBrokerMountPointTest.java index ee9f006365..7ad1b547f0 100644 --- a/opendaylight/md-sal/sal-binding-dom-it/src/test/java/org/opendaylight/controller/sal/binding/test/connect/dom/CrossBrokerMountPointTest.java +++ b/opendaylight/md-sal/sal-binding-dom-it/src/test/java/org/opendaylight/controller/sal/binding/test/connect/dom/CrossBrokerMountPointTest.java @@ -9,32 +9,36 @@ package org.opendaylight.controller.sal.binding.test.connect.dom; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; import com.google.common.base.Optional; import com.google.common.util.concurrent.CheckedFuture; +import com.google.common.util.concurrent.FluentFuture; import com.google.common.util.concurrent.Futures; -import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.MoreExecutors; import java.util.Collections; import java.util.Map; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; +import org.gaul.modernizer_maven_annotations.SuppressModernizer; import org.junit.Before; import org.junit.Test; -import org.opendaylight.controller.md.sal.common.api.TransactionStatus; +import org.opendaylight.controller.md.sal.binding.api.DataBroker; +import org.opendaylight.controller.md.sal.binding.api.MountPoint; +import org.opendaylight.controller.md.sal.binding.api.MountPointService; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException; import org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener; -import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException; import org.opendaylight.controller.md.sal.dom.api.DOMDataBroker; -import org.opendaylight.controller.md.sal.dom.api.DOMDataChangeListener; +import org.opendaylight.controller.md.sal.dom.api.DOMDataBrokerExtension; import org.opendaylight.controller.md.sal.dom.api.DOMDataReadOnlyTransaction; import org.opendaylight.controller.md.sal.dom.api.DOMDataReadWriteTransaction; import org.opendaylight.controller.md.sal.dom.api.DOMDataWriteTransaction; import org.opendaylight.controller.md.sal.dom.api.DOMMountPointService; import org.opendaylight.controller.md.sal.dom.api.DOMTransactionChain; -import org.opendaylight.controller.sal.binding.api.mount.MountProviderInstance; -import org.opendaylight.controller.sal.binding.api.mount.MountProviderService; import org.opendaylight.controller.sal.binding.test.util.BindingBrokerTestFactory; import org.opendaylight.controller.sal.binding.test.util.BindingTestContext; +import org.opendaylight.mdsal.common.api.CommitInfo; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.of.migration.test.model.rev150210.List11SimpleAugment; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.of.migration.test.model.rev150210.TllComplexAugment; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.of.migration.test.model.rev150210.aug.grouping.List1; @@ -45,10 +49,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controll import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.Top; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.two.level.list.TopLevelList; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.two.level.list.TopLevelListKey; -import org.opendaylight.yangtools.concepts.ListenerRegistration; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.opendaylight.yangtools.yang.common.QName; -import org.opendaylight.yangtools.yang.common.RpcResult; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; @@ -56,7 +58,6 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; -@SuppressWarnings("deprecation") public class CrossBrokerMountPointTest { private static final QName TLL_NAME_QNAME = QName.create(TopLevelList.QNAME, "name"); @@ -64,7 +65,7 @@ public class CrossBrokerMountPointTest { private static final TopLevelListKey TLL_KEY = new TopLevelListKey(TLL_NAME); - private static final Map TLL_KEY_BI = Collections. singletonMap(TLL_NAME_QNAME, + private static final Map TLL_KEY_BI = Collections.singletonMap(TLL_NAME_QNAME, TLL_NAME); private static final InstanceIdentifier TLL_INSTANCE_ID_BA = InstanceIdentifier.builder(Top.class) // @@ -85,34 +86,34 @@ public class CrossBrokerMountPointTest { Cont.QNAME.getLocalName()); private static final org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier TLL_INSTANCE_ID_BI = // - org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.builder() // + YangInstanceIdentifier.builder() // .node(Top.QNAME) // .node(TopLevelList.QNAME) // .nodeWithKey(TopLevelList.QNAME, TLL_KEY_BI) // .build(); - private static final org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier GROUP_STATISTICS_ID_BI = org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier - // + private static final org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier GROUP_STATISTICS_ID_BI = + YangInstanceIdentifier .builder(TLL_INSTANCE_ID_BI) - .nodeWithKey(QName.create(TllComplexAugment.QNAME, "list1"), QName.create(TllComplexAugment.QNAME, "attr-str"), - LIST1_KEY.getAttrStr()) - .nodeWithKey(QName.create(TllComplexAugment.QNAME, "list1-1"), QName.create(TllComplexAugment.QNAME, "attr-int"), - LIST11_KEY.getAttrInt()) + .nodeWithKey(QName.create(TllComplexAugment.QNAME, "list1"), + QName.create(TllComplexAugment.QNAME, "attr-str"), LIST1_KEY.getAttrStr()) + .nodeWithKey(QName.create(TllComplexAugment.QNAME, "list1-1"), + QName.create(TllComplexAugment.QNAME, "attr-int"), LIST11_KEY.getAttrInt()) .node(AUG_CONT).build(); private BindingTestContext testContext; - private MountProviderService bindingMountPointService; + private MountPointService bindingMountPointService; private DOMMountPointService domMountPointService; @Before public void setup() { final BindingBrokerTestFactory testFactory = new BindingBrokerTestFactory(); - testFactory.setExecutor(MoreExecutors.sameThreadExecutor()); + testFactory.setExecutor(MoreExecutors.newDirectExecutorService()); testFactory.setStartWithParsedSchema(true); testContext = testFactory.getTestContext(); testContext.start(); - bindingMountPointService = testContext.getBindingMountProviderService(); + bindingMountPointService = testContext.getBindingMountPointService(); domMountPointService = testContext.getDomMountProviderService(); // biRpcInvoker = testContext.getDomRpcInvoker(); @@ -123,17 +124,11 @@ public class CrossBrokerMountPointTest { } @Test - public void testMountPoint() { + public void testMountPoint() throws ReadFailedException, TimeoutException { final Integer attrIntValue = 500; domMountPointService.createMountPoint(TLL_INSTANCE_ID_BI) .addService(DOMDataBroker.class, new DOMDataBroker() { - @Override - public ListenerRegistration registerDataChangeListener(final LogicalDatastoreType store, - final YangInstanceIdentifier path, final DOMDataChangeListener listener, final DataChangeScope triggeringScope) { - throw new UnsupportedOperationException(); - } - @Override public DOMDataWriteTransaction newWriteOnlyTransaction() { throw new UnsupportedOperationException(); @@ -144,18 +139,22 @@ public class CrossBrokerMountPointTest { return new DOMDataReadWriteTransaction() { @Override + @SuppressModernizer public CheckedFuture>, ReadFailedException> read( final LogicalDatastoreType store, final YangInstanceIdentifier path) { - if(store == LogicalDatastoreType.OPERATIONAL && path.getLastPathArgument().equals(GROUP_STATISTICS_ID_BI.getLastPathArgument())) { + if (store == LogicalDatastoreType.OPERATIONAL && path.getLastPathArgument() + .equals(GROUP_STATISTICS_ID_BI.getLastPathArgument())) { final ContainerNode data = Builders.containerBuilder() .withNodeIdentifier(new NodeIdentifier(AUG_CONT)) - .withChild(ImmutableNodes.leafNode(QName.create(AUG_CONT, "attr-int"), attrIntValue)) + .withChild(ImmutableNodes.leafNode(QName.create(AUG_CONT, "attr-int"), + attrIntValue)) .build(); return Futures.immediateCheckedFuture(Optional.>of(data)); } - return Futures.immediateFailedCheckedFuture(new ReadFailedException(TLL_NAME, new Exception())); + return Futures.immediateFailedCheckedFuture(new ReadFailedException(TLL_NAME, + new Exception())); } @Override @@ -174,11 +173,6 @@ public class CrossBrokerMountPointTest { return false; } - @Override - public ListenableFuture> commit() { - return null; - } - @Override public void delete(final LogicalDatastoreType store, final YangInstanceIdentifier path) { throw new UnsupportedOperationException(); @@ -197,10 +191,9 @@ public class CrossBrokerMountPointTest { } @Override - public CheckedFuture submit() { + public FluentFuture commit() { throw new UnsupportedOperationException(); } - }; } @@ -213,15 +206,22 @@ public class CrossBrokerMountPointTest { public DOMTransactionChain createTransactionChain(final TransactionChainListener listener) { throw new UnsupportedOperationException(); } - }).register(); + @Override + public Map, DOMDataBrokerExtension> getSupportedExtensions() { + return Collections.emptyMap(); + } + }).register(); + final Optional bindingMountPoint = bindingMountPointService.getMountPoint(TLL_INSTANCE_ID_BA); + assertTrue(bindingMountPoint.isPresent()); - final MountProviderInstance bindingMountPoint = bindingMountPointService.getMountPoint(TLL_INSTANCE_ID_BA); - assertNotNull(bindingMountPoint); + final Optional dataBroker = bindingMountPoint.get().getService(DataBroker.class); + assertTrue(dataBroker.isPresent()); - final Cont data = (Cont) bindingMountPoint.readOperationalData(AUG_CONT_ID_BA); - assertNotNull(data); - assertEquals(attrIntValue ,data.getAttrInt()); + final Optional data = dataBroker.get().newReadWriteTransaction().read(LogicalDatastoreType.OPERATIONAL, + AUG_CONT_ID_BA).checkedGet(5, TimeUnit.SECONDS); + assertTrue(data.isPresent()); + assertEquals(attrIntValue ,data.get().getAttrInt()); } }