* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.ovsdb.utils.it.utils;
+package org.opendaylight.ovsdb.utils.ovsdb.it.utils;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import java.util.List;
+
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
import org.opendaylight.ovsdb.utils.mdsal.utils.MdsalUtils;
import org.opendaylight.ovsdb.utils.mdsal.utils.NotifyingDataChangeListener;
import org.opendaylight.ovsdb.utils.southbound.utils.SouthboundUtils;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Uri;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.bridge.attributes.ControllerEntry;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.ConnectionInfo;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NetworkTopology;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.TopologyId;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.TopologyKey;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* This class contains various utility methods used in OVSDB integration tests (IT).
*/
-public class ItUtils {
- private static final Logger LOG = LoggerFactory.getLogger(ItUtils.class);
+public class OvsdbItUtils {
+ private static final Logger LOG = LoggerFactory.getLogger(OvsdbItUtils.class);
MdsalUtils mdsalUtils;
SouthboundUtils southboundUtils;
DataBroker dataBroker;
/**
- * Create a new ItUtils instance
+ * Create a new OvsdbItUtils instance.
* @param dataBroker md-sal data broker
*/
- public ItUtils(DataBroker dataBroker) {
+ public OvsdbItUtils(DataBroker dataBroker) {
this.dataBroker = dataBroker;
mdsalUtils = new MdsalUtils(dataBroker);
southboundUtils = new SouthboundUtils(mdsalUtils);
}
/**
- * Get a NodeInfo instance initialized with this ItUtil's DataBroker
+ * Get a NodeInfo instance initialized with this ItUtil's DataBroker.
* @param connectionInfo ConnectionInfo for the OVSDB server
* @param waitList For tracking outstanding md-sal events notifications
- * @return
+ * @return a new NodeInfo object
*/
public NodeInfo createNodeInfo(ConnectionInfo connectionInfo, List<NotifyingDataChangeListener> waitList) {
return new NodeInfo(connectionInfo, this, waitList);
* AssertionError for any number of unexpected states.
* @param connectionInfo
* @return true if connected
- * @throws InterruptedException
+ * @throws InterruptedException if interrupted while waiting for connection to appear
*/
public boolean isControllerConnected(ConnectionInfo connectionInfo) throws InterruptedException {
LOG.info("isControllerConnected enter");
return false;
}
+ /**
+ * Get a DataBroker and assert that it is not null.
+ * @param providerContext ProviderContext from which to retrieve the DataBroker
+ * @return the Databroker
+ */
public static DataBroker getDatabroker(BindingAwareBroker.ProviderContext providerContext) {
DataBroker dataBroker = providerContext.getSALService(DataBroker.class);
assertNotNull("dataBroker should not be null", dataBroker);
return dataBroker;
}
- public Boolean getNetvirtTopology() {
- LOG.info("getNetvirtTopology: looking for {}...", ItConstants.NETVIRT_TOPOLOGY_ID);
- Boolean found = false;
- final TopologyId topologyId = new TopologyId(new Uri(ItConstants.NETVIRT_TOPOLOGY_ID));
- InstanceIdentifier<Topology> path =
- InstanceIdentifier.create(NetworkTopology.class).child(Topology.class, new TopologyKey(topologyId));
- for (int i = 0; i < 60; i++) {
- Topology topology = mdsalUtils.read(LogicalDatastoreType.OPERATIONAL, path);
- if (topology != null) {
- LOG.info("getNetvirtTopology: found {}...", ItConstants.NETVIRT_TOPOLOGY_ID);
- found = true;
- break;
- } else {
- LOG.info("getNetvirtTopology: still looking (try {})...", i);
- try {
- Thread.sleep(1000);
- } catch (InterruptedException e) {
- LOG.warn("Interrupted while waiting for {}", ItConstants.NETVIRT_TOPOLOGY_ID, e);
- }
- }
- }
- return found;
- }
}