import java.util.concurrent.ExecutionException;
import javax.annotation.Nonnull;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.mdsal.eos.binding.api.Entity;
import org.opendaylight.mdsal.eos.binding.api.EntityOwnershipCandidateRegistration;
import org.opendaylight.ovsdb.lib.LockAquisitionCallback;
import org.opendaylight.ovsdb.lib.schema.typed.TyperUtils;
import org.opendaylight.ovsdb.schema.openvswitch.OpenVSwitch;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.BridgeOperationalState;
+import org.opendaylight.ovsdb.southbound.ovsdb.transact.DataChangeEvent;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.TransactCommand;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.TransactInvoker;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.TransactInvokerImpl;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeKey;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
* @param instanceIdentifierCodec The instance identifier codec to use.
*/
public void transact(TransactCommand command, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
for (TransactInvoker transactInvoker : transactInvokers.values()) {
transactInvoker.invoke(command, state, events, instanceIdentifierCodec);
}
import java.util.concurrent.ExecutionException;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.Autoattach;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.ManagedNodeEntry;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractOriginal(events, OvsdbNodeAugmentation.class),
TransactUtils.extractUpdated(events, OvsdbNodeAugmentation.class));
}
import java.util.concurrent.ExecutionException;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.notation.UUID;
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.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeKey;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractCreatedOrUpdated(events, OvsdbNodeAugmentation.class));
}
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPointKey;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
private static final Logger LOG = LoggerFactory.getLogger(BridgeOperationalState.class);
private final Map<InstanceIdentifier<Node>, Node> operationalNodes = new HashMap<>();
- public BridgeOperationalState(DataBroker db, AsyncDataChangeEvent<InstanceIdentifier<?>,
- DataObject> changes) {
+ public BridgeOperationalState(DataBroker db, DataChangeEvent changes) {
try (ReadOnlyTransaction transaction = db.newReadOnlyTransaction()) {
Map<InstanceIdentifier<Node>, Node> nodeCreateOrUpdate =
TransactUtils.extractCreatedOrUpdatedOrRemoved(changes, Node.class);
import java.util.Map;
import java.util.Set;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractRemoved(events, OvsdbBridgeAugmentation.class),
TransactUtils.extractOriginal(events, OvsdbBridgeAugmentation.class));
}
import java.util.Map.Entry;
import javax.annotation.Nonnull;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.operations.Insert;
import org.opendaylight.ovsdb.lib.operations.Mutate;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.bridge.attributes.BridgeExternalIds;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.bridge.attributes.BridgeOtherConfigs;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractCreatedOrUpdated(events, OvsdbBridgeAugmentation.class),
instanceIdentifierCodec);
}
import java.util.Map;
import java.util.Set;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
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.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractRemoved(events, ControllerEntry.class),
TransactUtils.extractCreatedOrUpdatedOrRemoved(events, OvsdbBridgeAugmentation.class));
}
import java.util.Map;
import java.util.Map.Entry;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
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.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractCreatedOrUpdated(events, ControllerEntry.class),
TransactUtils.extractCreatedOrUpdated(events, OvsdbBridgeAugmentation.class));
}
--- /dev/null
+/*
+ * Copyright (c) 2018 Inocybe Technologies and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.opendaylight.ovsdb.southbound.ovsdb.transact;
+
+import java.util.Map;
+import java.util.Set;
+import org.opendaylight.yangtools.yang.binding.DataObject;
+import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+
+public interface DataChangeEvent {
+ /**
+ * Returns a map of paths and newly created objects, which were introduced by
+ * this change into conceptual data tree, if no new objects were introduced
+ * this map will be empty.
+ *
+ * @return map of paths and newly created objects
+ */
+ Map<InstanceIdentifier<?>, DataObject> getCreatedData();
+
+ /**
+ * Returns a map of paths and objects which were updated by this change in the
+ * conceptual data tree if no existing objects were updated
+ * this map will be empty.
+ *
+ * @return map of paths and newly created objects
+ */
+ Map<InstanceIdentifier<?>, DataObject> getUpdatedData();
+
+ /**
+ * Returns an immutable set of removed paths.
+ *
+ * @return set of removed paths
+ */
+ Set<InstanceIdentifier<?>> getRemovedPaths();
+
+ /**
+ * Returns an immutable map of updated or removed paths and their original
+ * states prior to this change.
+ *
+ * @return map of paths and original state of updated and removed objects.
+ */
+ Map<InstanceIdentifier<?>, DataObject> getOriginalData();
+}
import java.util.Map.Entry;
import java.util.Set;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.southbound.SouthboundUtil;
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.OvsdbNodeAugmentation;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
-public class DataChangesManagedByOvsdbNodeEvent implements
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> {
+public class DataChangesManagedByOvsdbNodeEvent implements DataChangeEvent {
- private InstanceIdentifier<?> iid;
- private DataBroker db;
- private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> event;
+ private final InstanceIdentifier<?> iid;
+ private final DataBroker db;
+ private final DataChangeEvent event;
private Map<InstanceIdentifier<?>, DataObject> createdData = null;
private Map<InstanceIdentifier<?>, DataObject> updatedData = null;
private Map<InstanceIdentifier<?>, DataObject> originalData = null;
private Set<InstanceIdentifier<?>> removedPaths;
public DataChangesManagedByOvsdbNodeEvent(DataBroker dataBroker, InstanceIdentifier<?> iid,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> event) {
+ DataChangeEvent event) {
this.db = dataBroker;
this.iid = iid;
this.event = event;
}
return this.originalData;
}
-
- @Override
- public DataObject getOriginalSubtree() {
- // TODO Auto-generated method stub
- return event.getOriginalSubtree();
- }
-
- @Override
- public DataObject getUpdatedSubtree() {
- // TODO Auto-generated method stub
- return event.getUpdatedSubtree();
- }
-
}
import java.util.Collections;
import java.util.List;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.operations.Insert;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.schema.openvswitch.OpenVSwitch;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
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.DataObject;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
public class OpenVSwitchBridgeAddCommand implements TransactCommand {
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction);
}
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
-
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.operations.Mutate;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.OpenvswitchExternalIds;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.OpenvswitchOtherConfigs;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, TransactUtils.extractCreatedOrUpdated(events, OvsdbNodeAugmentation.class),
instanceIdentifierCodec);
}
import java.util.Map;
import java.util.Set;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.error.SchemaVersionMismatchException;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
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.ProtocolEntry;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractRemoved(events, ProtocolEntry.class),
TransactUtils.extractCreatedOrUpdatedOrRemoved(events, OvsdbBridgeAugmentation.class));
}
import java.util.Map;
import java.util.Map.Entry;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.error.SchemaVersionMismatchException;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
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.ProtocolEntry;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractCreatedOrUpdated(events, ProtocolEntry.class),
TransactUtils.extractCreatedOrUpdated(events, OvsdbBridgeAugmentation.class));
}
import java.util.Collection;
import java.util.List;
import java.util.Map;
-
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.lib.schema.typed.TyperUtils;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbNodeAugmentation;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.QosEntries;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state,
TransactUtils.extractOriginal(events, OvsdbNodeAugmentation.class),
TransactUtils.extractUpdated(events, OvsdbNodeAugmentation.class));
import java.util.Map;
import java.util.Map.Entry;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.lib.schema.typed.TyperUtils;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.qos.entries.QosOtherConfig;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.qos.entries.QueueList;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractCreatedOrUpdated(events, QosEntries.class),
instanceIdentifierCodec);
}
import java.util.Collection;
import java.util.List;
import java.util.Map;
-
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.lib.schema.typed.TyperUtils;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbNodeAugmentation;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.Queues;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractOriginal(events, OvsdbNodeAugmentation.class),
TransactUtils.extractUpdated(events, OvsdbNodeAugmentation.class));
}
import java.util.Map.Entry;
import java.util.Set;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.lib.schema.typed.TyperUtils;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.queues.QueuesExternalIds;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.queues.QueuesOtherConfig;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractCreatedOrUpdated(events, Queues.class),
instanceIdentifierCodec);
}
import java.util.concurrent.ExecutionException;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException;
import org.opendaylight.ovsdb.lib.error.SchemaVersionMismatchException;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.Trunks;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractCreated(events, OvsdbTerminationPointAugmentation.class),
TransactUtils.extractCreatedOrUpdated(events, Node.class), instanceIdentifierCodec);
}
import java.util.Map;
import java.util.Set;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
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.OvsdbTerminationPointAugmentation;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state, TransactUtils.extractOriginal(events, OvsdbTerminationPointAugmentation.class),
TransactUtils.extractOriginal(events, Node.class),
TransactUtils.extractRemoved(events, OvsdbTerminationPointAugmentation.class));
import java.util.concurrent.ExecutionException;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException;
import org.opendaylight.ovsdb.lib.error.SchemaVersionMismatchException;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.PortOtherConfigs;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.Trunks;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
execute(transaction, state,
TransactUtils.extractCreatedOrUpdated(events, OvsdbTerminationPointAugmentation.class),
instanceIdentifierCodec);
package org.opendaylight.ovsdb.southbound.ovsdb.transact;
import java.util.Collection;
-
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
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.DataObject;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
/**
* Contract for a transactional command.
* @param instanceIdentifierCodec The instance identifier codec to use.
*/
void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
+ DataChangeEvent events,
InstanceIdentifierCodec instanceIdentifierCodec);
/**
package org.opendaylight.ovsdb.southbound.ovsdb.transact;
import java.util.Collection;
-
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
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.DataObject;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public void execute(TransactionBuilder transaction, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
for (Class<? extends TransactCommand> commandClass : COMMAND_CLASSES) {
try {
commandClass.newInstance().execute(transaction, state, events, instanceIdentifierCodec);
package org.opendaylight.ovsdb.southbound.ovsdb.transact;
import java.util.Collection;
-
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
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.DataObject;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
/**
* Contract for a transactional invoker.
* @param instanceIdentifierCodec The instance identifier codec to use.
*/
void invoke(TransactCommand command, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec);
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec);
/**
* Invoke the given transactional command, with the given bridge state, on the given modifications.
import java.util.List;
import java.util.concurrent.CancellationException;
import java.util.concurrent.ExecutionException;
-
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.OperationResult;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.lib.schema.DatabaseSchema;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
import org.opendaylight.ovsdb.southbound.OvsdbConnectionInstance;
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.DataObject;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class TransactInvokerImpl implements TransactInvoker {
private static final Logger LOG = LoggerFactory.getLogger(TransactInvokerImpl.class);
- private OvsdbConnectionInstance connectionInstance;
- private DatabaseSchema dbSchema;
+ private final OvsdbConnectionInstance connectionInstance;
+ private final DatabaseSchema dbSchema;
public TransactInvokerImpl(OvsdbConnectionInstance connectionInstance, DatabaseSchema dbSchema) {
this.connectionInstance = connectionInstance;
@Override
public void invoke(TransactCommand command, BridgeOperationalState state,
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> events,
- InstanceIdentifierCodec instanceIdentifierCodec) {
+ DataChangeEvent events, InstanceIdentifierCodec instanceIdentifierCodec) {
TransactionBuilder tb = new TransactionBuilder(connectionInstance.getOvsdbClient(), dbSchema);
command.execute(tb, state, events, instanceIdentifierCodec);
invoke(command, tb);
import java.util.function.Predicate;
import org.opendaylight.controller.md.sal.binding.api.DataObjectModification;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Mutation;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.notation.OvsdbSet;
}
public static <T extends DataObject> Map<InstanceIdentifier<T>,T> extractCreated(
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes,Class<T> klazz) {
+ DataChangeEvent changes, Class<T> klazz) {
return extract(changes.getCreatedData(),klazz);
}
}
public static <T extends DataObject> Map<InstanceIdentifier<T>,T> extractUpdated(
- AsyncDataChangeEvent<InstanceIdentifier<?>,DataObject> changes,Class<T> klazz) {
+ DataChangeEvent changes, Class<T> klazz) {
return extract(changes.getUpdatedData(),klazz);
}
}
public static <T extends DataObject> Map<InstanceIdentifier<T>,T> extractCreatedOrUpdated(
- AsyncDataChangeEvent<InstanceIdentifier<?>,DataObject> changes,Class<T> klazz) {
+ DataChangeEvent changes,Class<T> klazz) {
Map<InstanceIdentifier<T>,T> result = extractUpdated(changes,klazz);
result.putAll(extractCreated(changes,klazz));
return result;
}
public static <T extends DataObject> Map<InstanceIdentifier<T>, T> extractCreatedOrUpdatedOrRemoved(
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes,
- Class<T> klazz) {
+ DataChangeEvent changes, Class<T> klazz) {
Map<InstanceIdentifier<T>,T> result = extractCreatedOrUpdated(changes,klazz);
result.putAll(extractRemovedObjects(changes, klazz));
return result;
}
public static <T extends DataObject> Map<InstanceIdentifier<T>,T> extractOriginal(
- AsyncDataChangeEvent<InstanceIdentifier<?>,DataObject> changes,Class<T> klazz) {
+ DataChangeEvent changes, Class<T> klazz) {
return extract(changes.getOriginalData(),klazz);
}
}
public static <T extends DataObject> Set<InstanceIdentifier<T>> extractRemoved(
- AsyncDataChangeEvent<InstanceIdentifier<?>,DataObject> changes,Class<T> klazz) {
+ DataChangeEvent changes, Class<T> klazz) {
Set<InstanceIdentifier<T>> result = new HashSet<>();
if (changes != null && changes.getRemovedPaths() != null) {
for (InstanceIdentifier<?> iid : changes.getRemovedPaths()) {
InstanceIdentifier<? extends DataObject> extendPath(
InstanceIdentifier path,
DataObjectModification child) {
- Class<N> item = (Class<N>) child.getDataType();
+ Class<N> item = child.getDataType();
if (child.getIdentifier() instanceof InstanceIdentifier.IdentifiableItem) {
K key = (K) ((InstanceIdentifier.IdentifiableItem) child.getIdentifier()).getKey();
KeyedInstanceIdentifier<N, K> extendedPath = path.child(item, key);
}
public static <T extends DataObject> Map<InstanceIdentifier<T>, T> extractRemovedObjects(
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes,
- Class<T> klazz) {
+ DataChangeEvent changes, Class<T> klazz) {
Set<InstanceIdentifier<T>> iids = extractRemoved(changes, klazz);
return Maps.filterKeys(extractOriginal(changes, klazz),Predicates.in(iids));
}
import com.google.common.util.concurrent.CheckedFuture;
import com.google.common.util.concurrent.FutureCallback;
import com.google.common.util.concurrent.Futures;
-
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
-
import javax.annotation.Nullable;
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
import org.opendaylight.ovsdb.southbound.OvsdbConnectionInstance;
import org.opendaylight.ovsdb.southbound.SouthboundConstants;
import org.opendaylight.ovsdb.southbound.SouthboundMapper;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.BridgeOperationalState;
+import org.opendaylight.ovsdb.southbound.ovsdb.transact.DataChangeEvent;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.DataChangesManagedByOvsdbNodeEvent;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.TransactCommandAggregator;
import org.opendaylight.ovsdb.southbound.reconciliation.ReconciliationManager;
}
private void reconcileBridgeConfigurations(final Map<InstanceIdentifier<?>, DataObject> changes) {
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changeEvents = new AsyncDataChangeEvent() {
+ DataChangeEvent changeEvents = new DataChangeEvent() {
@Override
public Map<InstanceIdentifier<?>, DataObject> getCreatedData() {
return changes;
public Set<InstanceIdentifier<?>> getRemovedPaths() {
return Collections.emptySet();
}
-
- @Override
- public DataObject getOriginalSubtree() {
- return null;
- }
-
- @Override
- public DataObject getUpdatedSubtree() {
- return null;
- }
};
connectionInstance.transact(new TransactCommandAggregator(),
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
-
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
import org.opendaylight.ovsdb.southbound.OvsdbConnectionInstance;
import org.opendaylight.ovsdb.southbound.OvsdbConnectionManager;
import org.opendaylight.ovsdb.southbound.SouthboundMapper;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.BridgeOperationalState;
+import org.opendaylight.ovsdb.southbound.ovsdb.transact.DataChangeEvent;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.TerminationPointCreateCommand;
import org.opendaylight.ovsdb.southbound.reconciliation.ReconciliationManager;
import org.opendaylight.ovsdb.southbound.reconciliation.ReconciliationTask;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
-
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
final Map<InstanceIdentifier<?>, DataObject> changes = new HashMap<>();
changes.putAll(SouthboundMapper.extractTerminationPointConfigurationChanges((Node) configData));
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changeEvents = new AsyncDataChangeEvent() {
+ DataChangeEvent changeEvents = new DataChangeEvent() {
@Override
public Map<InstanceIdentifier<?>, DataObject> getCreatedData() {
return changes;
public Set<InstanceIdentifier<?>> getRemovedPaths() {
return Collections.emptySet();
}
-
- @Override
- public DataObject getOriginalSubtree() {
- return null;
- }
-
- @Override
- public DataObject getUpdatedSubtree() {
- return null;
- }
};
connectionInstance.transact(new TerminationPointCreateCommand(),
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.LockAquisitionCallback;
import org.opendaylight.ovsdb.lib.LockStolenCallback;
import org.opendaylight.ovsdb.lib.MonitorCallBack;
import org.opendaylight.ovsdb.lib.schema.DatabaseSchema;
import org.opendaylight.ovsdb.lib.schema.GenericTableSchema;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.BridgeOperationalState;
+import org.opendaylight.ovsdb.southbound.ovsdb.transact.DataChangeEvent;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.TransactCommand;
import org.opendaylight.ovsdb.southbound.ovsdb.transact.TransactInvoker;
import org.opendaylight.ovsdb.southbound.transactions.md.TransactionInvoker;
field(OvsdbConnectionInstance.class, "transactInvokers").set(ovsdbConnectionInstance , transactInvokers);
TransactCommand command = mock(TransactCommand.class);
- ovsdbConnectionInstance.transact(command, mock(BridgeOperationalState.class), mock(AsyncDataChangeEvent.class),
+ ovsdbConnectionInstance.transact(command, mock(BridgeOperationalState.class), mock(DataChangeEvent.class),
mock(InstanceIdentifierCodec.class));
verify(transactInvoker1).invoke(any(TransactCommand.class), any(BridgeOperationalState.class),
- any(AsyncDataChangeEvent.class), any(InstanceIdentifierCodec.class));
+ any(DataChangeEvent.class), any(InstanceIdentifierCodec.class));
verify(transactInvoker2).invoke(any(TransactCommand.class), any(BridgeOperationalState.class),
- any(AsyncDataChangeEvent.class), any(InstanceIdentifierCodec.class));
+ any(DataChangeEvent.class), any(InstanceIdentifierCodec.class));
}
@Test
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
public class BridgeRemovedCommandTest {
private BridgeRemovedCommand briRemovedCmd = new BridgeRemovedCommand();
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes;
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> returnChanges;
- private Set<InstanceIdentifier<OvsdbBridgeAugmentation>> removed = new HashSet<>();
- private Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> originals = new HashMap<>();
+ @Mock private DataChangeEvent changes;
+ @Mock private DataChangeEvent returnChanges;
+ private final Set<InstanceIdentifier<OvsdbBridgeAugmentation>> removed = new HashSet<>();
+ private final Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> originals = new HashMap<>();
@Before
public void setUp() throws Exception {
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
public class BridgeUpdateCommandTest {
@Mock private BridgeUpdateCommand briUpdatedCmd;
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes;
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> returnChanges;
+ @Mock private DataChangeEvent changes;
+ @Mock private DataChangeEvent returnChanges;
@Mock private Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> created;
@Mock private Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> updated;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
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.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
public class ControllerRemovedCommandTest {
private ControllerRemovedCommand contRemoveCmd = new ControllerRemovedCommand();
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes;
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> returnChanges;
- private Set<InstanceIdentifier<ControllerEntry>> removed = new HashSet<>();
- private Map<InstanceIdentifier<ControllerEntry>, ControllerEntry> operationalControllerEntries = new HashMap<>();
- private Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> created = new HashMap<>();
- private Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> updated = new HashMap<>();
+ @Mock private DataChangeEvent changes;
+ @Mock private DataChangeEvent returnChanges;
+ private final Set<InstanceIdentifier<ControllerEntry>> removed = new HashSet<>();
+ private final Map<InstanceIdentifier<ControllerEntry>, ControllerEntry> operationalControllerEntries =
+ new HashMap<>();
+ private final Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> created = new HashMap<>();
+ private final Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> updated = new HashMap<>();
@Before
public void setUp() throws Exception {
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
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.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
public class ControllerUpdateCommandTest {
@Mock private ControllerUpdateCommand contUpdateCmd;
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes;
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> returnChanges;
+ @Mock private DataChangeEvent changes;
+ @Mock private DataChangeEvent returnChanges;
@Mock private Map<InstanceIdentifier<ControllerEntry>, ControllerEntry> controllers;
@Mock private Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> bridges;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.powermock.core.classloader.annotations.PrepareForTest;
@Mock private InstanceIdentifier<?> iid;
@Mock private DataBroker db;
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> event;
+ @Mock private DataChangeEvent event;
private Set<InstanceIdentifier<?>> removedPaths;
private DataChangesManagedByOvsdbNodeEvent dataChangesManagedByOvsdbNodeEvent;
DataObject dataObject = mock(DataObject.class);
- //Test getOriginalSubtree()
- when(event.getOriginalSubtree()).thenReturn(dataObject);
- assertEquals(dataObject, dataChangesManagedByOvsdbNodeEvent.getOriginalSubtree());
-
- //Test getUpdatedSubtree()
- when(event.getUpdatedSubtree()).thenReturn(dataObject);
- assertEquals(dataObject, dataChangesManagedByOvsdbNodeEvent.getUpdatedSubtree());
-
//Test getRemovedPaths()
removedPaths = new HashSet<>();
when(event.getRemovedPaths()).thenReturn(removedPaths);
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Column;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.notation.UUID;
when(mutate.addMutation(any(ColumnSchema.class), any(Mutator.class), any(Set.class))).thenReturn(mutate);
when(transaction.add(any(Operation.class))).thenReturn(transaction);
- ovsBridgeAddCommand.execute(transaction, mock(BridgeOperationalState.class), mock(AsyncDataChangeEvent.class),
+ ovsBridgeAddCommand.execute(transaction, mock(BridgeOperationalState.class), mock(DataChangeEvent.class),
mock(InstanceIdentifierCodec.class));
verify(transaction).add(any(Operation.class));
}
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Column;
import org.opendaylight.ovsdb.lib.operations.Mutate;
import org.opendaylight.ovsdb.lib.operations.Operation;
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.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.OpenvswitchExternalIds;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.OpenvswitchOtherConfigs;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.api.support.membermodification.MemberMatcher;
private static final String OTHER_CONFIG_KEY = "other config key";
private static final String OTHER_CONFIG_VALUE = "other config value";
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes;
+ @Mock private DataChangeEvent changes;
private OvsdbNodeUpdateCommand ovsdbNodeUpdateCommand;
@Before
updated.put(iid, ovsdbNode);
PowerMockito.mockStatic(TransactUtils.class);
PowerMockito.when(
- TransactUtils.extractCreatedOrUpdated(any(AsyncDataChangeEvent.class), eq(OvsdbNodeAugmentation.class)))
+ TransactUtils.extractCreatedOrUpdated(any(DataChangeEvent.class), eq(OvsdbNodeAugmentation.class)))
.thenReturn(updated);
ConnectionInfo connectionInfo = mock(ConnectionInfo.class);
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.stubbing.Answer;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Column;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.operations.Mutate;
@PrepareForTest({InstanceIdentifier.class, TransactUtils.class, TyperUtils.class })
public class ProtocolRemovedCommandTest {
- private Set<InstanceIdentifier<ProtocolEntry>> removed = new HashSet<>();
+ private final Set<InstanceIdentifier<ProtocolEntry>> removed = new HashSet<>();
@Mock private Map<InstanceIdentifier<OvsdbBridgeAugmentation>, OvsdbBridgeAugmentation> updatedBridges;
@SuppressWarnings("unchecked")
when(TyperUtils.getTypedRowWrapper(any(DatabaseSchema.class), any(Class.class))).thenReturn(bridge);
TransactionBuilder transaction = mock(TransactionBuilder.class);
- protocolRemovedCommand.execute(transaction, bridgeOpState, mock(AsyncDataChangeEvent.class),
+ protocolRemovedCommand.execute(transaction, bridgeOpState, mock(DataChangeEvent.class),
mock(InstanceIdentifierCodec.class));
Mockito.verify(transaction).add(any(Operation.class));
}
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.stubbing.Answer;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Column;
import org.opendaylight.ovsdb.lib.notation.Condition;
import org.opendaylight.ovsdb.lib.notation.Mutator;
@SuppressWarnings("unchecked")
public void testExecute() throws Exception {
PowerMockito.mockStatic(TransactUtils.class);
- AsyncDataChangeEvent changes = mock(AsyncDataChangeEvent.class);
+ DataChangeEvent changes = mock(DataChangeEvent.class);
when(TransactUtils.extractCreatedOrUpdated(changes, ProtocolEntry.class)).thenReturn(protocols);
when(TransactUtils.extractCreatedOrUpdated(changes, OvsdbBridgeAugmentation.class)).thenReturn(
Collections.emptyMap());
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Column;
import org.opendaylight.ovsdb.lib.notation.Condition;
import org.opendaylight.ovsdb.lib.notation.UUID;
@Ignore("This needs to be rewritten")
public void testExecute() throws Exception {
MemberModifier.suppress(MemberMatcher.method(TerminationPointCreateCommand.class, "getChanges"));
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> asynEvent = mock(AsyncDataChangeEvent.class);
+ DataChangeEvent asynEvent = mock(DataChangeEvent.class);
Map<InstanceIdentifier<?>, DataObject> map = new HashMap<>();
OvsdbTerminationPointAugmentation terminationPoint = mock(OvsdbTerminationPointAugmentation.class);
InstanceIdentifier terminationPointIid = mock(InstanceIdentifier.class);
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.lib.schema.typed.TyperUtils;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentation;
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
private TerminationPointDeleteCommand terminationPointDeleteCommand;
@Mock private BridgeOperationalState state;
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes;
- private Map<InstanceIdentifier<OvsdbTerminationPointAugmentation>, OvsdbTerminationPointAugmentation>
+ @Mock private DataChangeEvent changes;
+ private final Map<InstanceIdentifier<OvsdbTerminationPointAugmentation>, OvsdbTerminationPointAugmentation>
originals = new HashMap<>();
- private Map<InstanceIdentifier<Node>, Node> originalNodes = new HashMap<>();
- private Set<InstanceIdentifier<OvsdbTerminationPointAugmentation>> removedTps = new HashSet<>();
+ private final Map<InstanceIdentifier<Node>, Node> originalNodes = new HashMap<>();
+ private final Set<InstanceIdentifier<OvsdbTerminationPointAugmentation>> removedTps = new HashSet<>();
@Before
public void setUp() throws Exception {
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Column;
import org.opendaylight.ovsdb.lib.notation.Condition;
import org.opendaylight.ovsdb.lib.operations.Operation;
= new HashMap<>();
created.put(mock(InstanceIdentifier.class), mock(OvsdbTerminationPointAugmentation.class));
PowerMockito.mockStatic(TransactUtils.class);
- PowerMockito.when(TransactUtils.extractCreated(any(AsyncDataChangeEvent.class),
+ PowerMockito.when(TransactUtils.extractCreated(any(DataChangeEvent.class),
eq(OvsdbTerminationPointAugmentation.class))).thenReturn(created);
MemberModifier.suppress(MemberMatcher.method(TerminationPointUpdateCommand.class, "updateTerminationPoint",
TransactionBuilder.class, BridgeOperationalState.class,
Map<InstanceIdentifier<OvsdbTerminationPointAugmentation>, OvsdbTerminationPointAugmentation> updated
= new HashMap<>();
updated.put(mock(InstanceIdentifier.class), mock(OvsdbTerminationPointAugmentation.class));
- PowerMockito.when(TransactUtils.extractUpdated(any(AsyncDataChangeEvent.class),
+ PowerMockito.when(TransactUtils.extractUpdated(any(DataChangeEvent.class),
eq(OvsdbTerminationPointAugmentation.class))).thenReturn(updated);
TransactionBuilder transactionBuilder = mock(TransactionBuilder.class);
terminationPointUpdateCommand.execute(transactionBuilder, mock(BridgeOperationalState.class),
- mock(AsyncDataChangeEvent.class), mock(InstanceIdentifierCodec.class));
+ mock(DataChangeEvent.class), mock(InstanceIdentifierCodec.class));
// TODO Verify something useful
}
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
-import org.opendaylight.yangtools.yang.binding.DataObject;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
@RunWith(PowerMockRunner.class)
public class TransactCommandAggregatorTest {
- private List<TransactCommand> commands = new ArrayList<>();
+ private final List<TransactCommand> commands = new ArrayList<>();
private TransactCommandAggregator transactCommandAggregator;
- @Mock private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes;
+ @Mock private DataChangeEvent changes;
@Mock private BridgeOperationalState operationalState;
@Before
TransactionBuilder transaction = mock(TransactionBuilder.class);
for (TransactCommand command: commands) {
doNothing().when(command).execute(any(TransactionBuilder.class), any(BridgeOperationalState.class),
- any(AsyncDataChangeEvent.class), any(InstanceIdentifierCodec.class));
+ any(DataChangeEvent.class), any(InstanceIdentifierCodec.class));
}
transactCommandAggregator.execute(transaction, mock(BridgeOperationalState.class),
- mock(AsyncDataChangeEvent.class), mock(InstanceIdentifierCodec.class));
+ mock(DataChangeEvent.class), mock(InstanceIdentifierCodec.class));
for (TransactCommand command: commands) {
verify(command).execute(any(TransactionBuilder.class), any(BridgeOperationalState.class),
- any(AsyncDataChangeEvent.class), any(InstanceIdentifierCodec.class));
+ any(DataChangeEvent.class), any(InstanceIdentifierCodec.class));
}
}
}
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.operations.Operation;
import org.opendaylight.ovsdb.lib.operations.OperationResult;
import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
TransactionBuilder tb = mock(TransactionBuilder.class);
PowerMockito.whenNew(TransactionBuilder.class).withAnyArguments().thenReturn(tb);
doNothing().when(command).execute(any(TransactionBuilder.class), any(BridgeOperationalState.class),
- any(AsyncDataChangeEvent.class), any(InstanceIdentifierCodec.class));
+ any(DataChangeEvent.class), any(InstanceIdentifierCodec.class));
ListenableFuture<List<OperationResult>> result = mock(ListenableFuture.class);
when(tb.execute()).thenReturn(result);
when(tb.getOperations()).thenReturn(operation);
List<OperationResult> got = new ArrayList<>();
when(result.get()).thenReturn(got);
- transactInvokerImpl.invoke(command, mock(BridgeOperationalState.class), mock(AsyncDataChangeEvent.class),
+ transactInvokerImpl.invoke(command, mock(BridgeOperationalState.class), mock(DataChangeEvent.class),
mock(InstanceIdentifierCodec.class));
verify(result).get();
}
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
import org.opendaylight.ovsdb.lib.notation.Mutation;
import org.opendaylight.ovsdb.lib.notation.Mutator;
import org.opendaylight.ovsdb.lib.notation.OvsdbSet;
@SuppressWarnings("unchecked")
@Test
public void testExtractCreatedAndExtractUpdated() {
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes = mock(AsyncDataChangeEvent.class);
+ DataChangeEvent changes = mock(DataChangeEvent.class);
Class<DataObject> klazz = DataObject.class;
Map<InstanceIdentifier<?>, DataObject> map = new HashMap<>();
when(changes.getCreatedData()).thenReturn(map);
Map<InstanceIdentifier<DataObject>, DataObject> result = new HashMap<>();
PowerMockito.suppress(
- MemberMatcher.method(TransactUtils.class, "extractUpdated", AsyncDataChangeEvent.class, Class.class));
- PowerMockito.when(TransactUtils.extractUpdated(any(AsyncDataChangeEvent.class), eq(DataObject.class)))
+ MemberMatcher.method(TransactUtils.class, "extractUpdated", DataChangeEvent.class, Class.class));
+ PowerMockito.when(TransactUtils.extractUpdated(any(DataChangeEvent.class), eq(DataObject.class)))
.thenReturn(result);
Map<InstanceIdentifier<DataObject>, DataObject> map = new HashMap<>();
DataObject db = mock(DataObject.class);
map.put(iid, db);
PowerMockito.suppress(
- MemberMatcher.method(TransactUtils.class, "extractCreated", AsyncDataChangeEvent.class, Class.class));
- PowerMockito.when(TransactUtils.extractCreated(any(AsyncDataChangeEvent.class), eq(DataObject.class)))
+ MemberMatcher.method(TransactUtils.class, "extractCreated", DataChangeEvent.class, Class.class));
+ PowerMockito.when(TransactUtils.extractCreated(any(DataChangeEvent.class), eq(DataObject.class)))
.thenReturn(map);
Map<InstanceIdentifier<DataObject>, DataObject> testResult = new HashMap<>();
testResult.put(iid, db);
Class<DataObject> klazz = DataObject.class;
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes = mock(AsyncDataChangeEvent.class);
+ DataChangeEvent changes = mock(DataChangeEvent.class);
assertEquals(testResult, TransactUtils.extractCreatedOrUpdated(changes, klazz));
}
Map<InstanceIdentifier<DataObject>, DataObject> result = new HashMap<>();
PowerMockito.suppress(MemberMatcher.method(TransactUtils.class, "extractCreatedOrUpdated",
- AsyncDataChangeEvent.class, Class.class));
- PowerMockito.when(TransactUtils.extractCreatedOrUpdated(any(AsyncDataChangeEvent.class), eq(DataObject.class)))
+ DataChangeEvent.class, Class.class));
+ PowerMockito.when(TransactUtils.extractCreatedOrUpdated(any(DataChangeEvent.class), eq(DataObject.class)))
.thenReturn(result);
Map<InstanceIdentifier<DataObject>, DataObject> map = new HashMap<>();
DataObject db = mock(DataObject.class);
map.put(iid, db);
PowerMockito.suppress(MemberMatcher.method(TransactUtils.class, "extractRemovedObjects",
- AsyncDataChangeEvent.class, Class.class));
- PowerMockito.when(TransactUtils.extractRemovedObjects(any(AsyncDataChangeEvent.class), eq(DataObject.class)))
+ DataChangeEvent.class, Class.class));
+ PowerMockito.when(TransactUtils.extractRemovedObjects(any(DataChangeEvent.class), eq(DataObject.class)))
.thenReturn(map);
Map<InstanceIdentifier<DataObject>, DataObject> testResult = new HashMap<>();
testResult.put(iid, db);
Class<DataObject> klazz = DataObject.class;
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes = mock(AsyncDataChangeEvent.class);
+ DataChangeEvent changes = mock(DataChangeEvent.class);
assertEquals(testResult, TransactUtils.extractCreatedOrUpdatedOrRemoved(changes, klazz));
}
@SuppressWarnings("unchecked")
@Test
public void testExtractOriginal() {
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes = mock(AsyncDataChangeEvent.class);
+ DataChangeEvent changes = mock(DataChangeEvent.class);
Class<DataObject> klazz = DataObject.class;
Map<InstanceIdentifier<?>, DataObject> map = new HashMap<>();
when(changes.getOriginalData()).thenReturn(map);
@SuppressWarnings("unchecked")
@Test
public void testExtractRemoved() {
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes = mock(AsyncDataChangeEvent.class);
+ DataChangeEvent changes = mock(DataChangeEvent.class);
Class<DataObject> klazz = DataObject.class;
assertEquals(HashSet.class, TransactUtils.extractRemoved(changes, klazz).getClass());
}
public void testExtractRemovedObjects() {
Set<InstanceIdentifier<DataObject>> iids = new HashSet<>();
PowerMockito.suppress(
- MemberMatcher.method(TransactUtils.class, "extractRemoved", AsyncDataChangeEvent.class, Class.class));
- PowerMockito.when(TransactUtils.extractRemoved(any(AsyncDataChangeEvent.class), eq(DataObject.class)))
+ MemberMatcher.method(TransactUtils.class, "extractRemoved", DataChangeEvent.class, Class.class));
+ PowerMockito.when(TransactUtils.extractRemoved(any(DataChangeEvent.class), eq(DataObject.class)))
.thenReturn(iids);
Map<InstanceIdentifier<DataObject>, DataObject> result = new HashMap<>();
PowerMockito.suppress(
- MemberMatcher.method(TransactUtils.class, "extractOriginal", AsyncDataChangeEvent.class, Class.class));
- PowerMockito.when(TransactUtils.extractOriginal(any(AsyncDataChangeEvent.class), eq(DataObject.class)))
+ MemberMatcher.method(TransactUtils.class, "extractOriginal", DataChangeEvent.class, Class.class));
+ PowerMockito.when(TransactUtils.extractOriginal(any(DataChangeEvent.class), eq(DataObject.class)))
.thenReturn(result);
Class<DataObject> klazz = DataObject.class;
- AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes = mock(AsyncDataChangeEvent.class);
+ DataChangeEvent changes = mock(DataChangeEvent.class);
assertEquals(Maps.filterKeys(result, Predicates.in(iids)), TransactUtils.extractRemovedObjects(changes, klazz));
}