*/
package org.opendaylight.transportpce.tapi.utils;
-import edu.umd.cs.findbugs.annotations.NonNull;
+import com.google.common.util.concurrent.FluentFuture;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.util.Optional;
+import java.util.concurrent.ExecutionException;
import org.opendaylight.mdsal.binding.api.DataBroker;
import org.opendaylight.mdsal.binding.api.WriteTransaction;
+import org.opendaylight.mdsal.common.api.CommitInfo;
import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
-import org.opendaylight.transportpce.common.DataStoreContext;
-import org.opendaylight.transportpce.common.converter.XMLDataObjectConverter;
+import org.opendaylight.transportpce.test.DataStoreContext;
+import org.opendaylight.transportpce.test.converter.XMLDataObjectConverter;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.Network;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.Networks;
import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210.GetTopologyDetailsInput;
public final class TopologyDataUtils {
private static final Logger LOG = LoggerFactory.getLogger(TopologyDataUtils.class);
- public static final String OPENROADM_TOPOLOGY_FILE = "src/test/resources/openroadm-topology2.xml";
- public static final String OTN_TOPOLOGY_FILE = "src/test/resources/otn-topology.xml";
- public static final String PORTMAPPING_FILE = "src/test/resources/portmapping-example.xml";
+ public static final String OPENROADM_TOPOLOGY_FILE = "src/test/resources/get_openroadm-topology2.xml";
+ public static final String OTN_TOPOLOGY_WITH_OTN_LINKS_FILE = "src/test/resources/otn-topology-with-otn-links.xml";
+ public static final String PORTMAPPING_FILE = "src/test/resources/get_portmapping.xml";
public static GetTopologyDetailsInput buildGetTopologyDetailsInput(String topoName) {
GetTopologyDetailsInputBuilder builtInput = new GetTopologyDetailsInputBuilder();
}
public static <T> void writeTopologyFromFileToDatastore(DataStoreContext dataStoreContextUtil, String file,
- InstanceIdentifier ii) {
+ InstanceIdentifier ii) throws InterruptedException, ExecutionException {
Networks networks = null;
File topoFile = new File(file);
if (topoFile.exists()) {
} else {
LOG.error("xml file {} not found at {}", topoFile.getName(), topoFile.getAbsolutePath());
}
- writeTransaction(dataStoreContextUtil.getDataBroker(), ii, networks.getNetwork().get(0));
+ FluentFuture<? extends CommitInfo> commitFuture = writeTransaction(dataStoreContextUtil.getDataBroker(), ii,
+ networks.nonnullNetwork().values().stream().findFirst().get());
+ commitFuture.get();
LOG.info("extraction from {} stored with success in datastore", topoFile.getName());
}
@SuppressWarnings("unchecked")
- private static boolean writeTransaction(DataBroker dataBroker, InstanceIdentifier instanceIdentifier,
- DataObject object) {
- @NonNull
+ private static FluentFuture<? extends CommitInfo> writeTransaction(DataBroker dataBroker,
+ InstanceIdentifier instanceIdentifier, DataObject object) {
WriteTransaction transaction = dataBroker.newWriteOnlyTransaction();
transaction.put(LogicalDatastoreType.CONFIGURATION, instanceIdentifier, object);
- transaction.commit();
- return true;
+ return transaction.commit();
}
- public static void writePortmappingFromFileToDatastore(DataStoreContext dataStoreContextUtil) {
+ public static void writePortmappingFromFileToDatastore(DataStoreContext dataStoreContextUtil)
+ throws InterruptedException, ExecutionException {
Network result = null;
File portmappingFile = new File(PORTMAPPING_FILE);
if (portmappingFile.exists()) {
LOG.error("xml file {} not found at {}", portmappingFile.getName(), portmappingFile.getAbsolutePath());
}
InstanceIdentifier<Network> portmappingIID = InstanceIdentifier.builder(Network.class).build();
- writeTransaction(dataStoreContextUtil.getDataBroker(), portmappingIID, result);
+ FluentFuture<? extends CommitInfo> writeTransaction = writeTransaction(dataStoreContextUtil.getDataBroker(),
+ portmappingIID, result);
+ writeTransaction.get();
LOG.info("portmapping-example stored with success in datastore");
}