From b16cea20258ba537db7c0755208c82ab93331ff7 Mon Sep 17 00:00:00 2001 From: Michal Cmarada Date: Mon, 8 Apr 2019 11:37:45 +0200 Subject: HONEYCOMB-443: ODL bump to Neon - bumps ODL dependencies to neon - migrates guava optional to java.utils.optional Change-Id: Ibdaa365c7e21a341103aba88dfd67277e40d2969 Signed-off-by: Michal Cmarada --- .../translate/impl/read/GenericInitReader.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'infra/translate-impl/src/main/java/io/fd/honeycomb/translate/impl/read/GenericInitReader.java') diff --git a/infra/translate-impl/src/main/java/io/fd/honeycomb/translate/impl/read/GenericInitReader.java b/infra/translate-impl/src/main/java/io/fd/honeycomb/translate/impl/read/GenericInitReader.java index 147cbd3cc..59f9bc1b5 100644 --- a/infra/translate-impl/src/main/java/io/fd/honeycomb/translate/impl/read/GenericInitReader.java +++ b/infra/translate-impl/src/main/java/io/fd/honeycomb/translate/impl/read/GenericInitReader.java @@ -16,9 +16,8 @@ package io.fd.honeycomb.translate.impl.read; -import static org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType.CONFIGURATION; +import static org.opendaylight.mdsal.common.api.LogicalDatastoreType.CONFIGURATION; -import com.google.common.base.Optional; import com.google.common.util.concurrent.FluentFuture; import com.google.common.util.concurrent.FutureCallback; import com.google.common.util.concurrent.MoreExecutors; @@ -28,10 +27,12 @@ import io.fd.honeycomb.translate.read.ReadContext; import io.fd.honeycomb.translate.read.ReadFailedException; import io.fd.honeycomb.translate.spi.read.Initialized; import io.fd.honeycomb.translate.spi.read.InitializingReaderCustomizer; +import java.util.List; +import java.util.Optional; import javax.annotation.Nonnull; import org.checkerframework.checker.nullness.compatqual.NullableDecl; -import org.opendaylight.controller.md.sal.binding.api.DataBroker; -import org.opendaylight.controller.md.sal.binding.api.WriteTransaction; +import org.opendaylight.mdsal.binding.api.DataBroker; +import org.opendaylight.mdsal.binding.api.WriteTransaction; import org.opendaylight.mdsal.common.api.CommitInfo; import org.opendaylight.yangtools.concepts.Builder; import org.opendaylight.yangtools.yang.binding.DataObject; @@ -72,7 +73,15 @@ public final class GenericInitReader> @SuppressWarnings("unchecked") static void writeInit(final DataBroker broker, final Initialized init) { final WriteTransaction writeTx = broker.newWriteOnlyTransaction(); - writeTx.merge(CONFIGURATION, (InstanceIdentifier) init.getId(), init.getData(), true); + + InstanceIdentifier id = init.getId(); + if (id.getPathArguments() instanceof List && ((List) id.getPathArguments()).size() == 1) { + //root element only. not necessary to create parents + writeTx.merge(CONFIGURATION, id, init.getData()); + } + else { + writeTx.mergeParentStructureMerge(CONFIGURATION, id, init.getData()); + } FluentFuture future = writeTx.commit(); future.addCallback(new FutureCallback() { @Override -- cgit 1.2.3-korg