import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionKey;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes;
+//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.opendaylight.inventory.rev130819.nodes.Node;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
private String getBridgeName(String nodeId){
/* TODO SB_MIGRATION */
- List<Node> ovsNodes = connectionService.getNodes();
+ List<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node> ovsNodes = connectionService.getNodes();
- for (Node ovsNode : ovsNodes) {
+ for (org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node ovsNode : ovsNodes) {
Map<String, Row> bridges = ovsdbConfigService.getRows(ovsNode, ovsdbConfigService.getTableName(ovsNode, Bridge.class));
if (bridges == null) continue;
for (String brUuid : bridges.keySet()) {
if (dpid.equals(Long.parseLong(nodeId))){
// Found the bridge
logger.debug("getOvsNode: found ovsNode {} bridge {} for ofNode {}",
- ovsNode.getId().getValue(), bridge.getName(), nodeId);
+ ovsNode.getNodeId().getValue(), bridge.getName(), nodeId);
return bridge.getName();
}
}
private static final InstanceIdentifier<Flow> createFlowPath(FlowBuilder flowBuilder, NodeBuilder nodeBuilder) {
return InstanceIdentifier.builder(Nodes.class)
- .child(Node.class, nodeBuilder.getKey())
+ .child(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node.class,
+ nodeBuilder.getKey())
.augmentation(FlowCapableNode.class)
.child(Table.class, new TableKey(flowBuilder.getTableId()))
.child(Flow.class, flowBuilder.getKey()).build();
import org.opendaylight.ovsdb.lib.notation.Row;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.openstack.netvirt.NetworkHandler;
-import org.opendaylight.ovsdb.openstack.netvirt.api.BridgeConfigurationManager;
-import org.opendaylight.ovsdb.openstack.netvirt.api.ClassifierProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.ConfigurationService;
-import org.opendaylight.ovsdb.openstack.netvirt.api.Constants;
-import org.opendaylight.ovsdb.openstack.netvirt.api.EgressAclProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.IngressAclProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.L2ForwardingProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.SecurityServicesManager;
-import org.opendaylight.ovsdb.openstack.netvirt.api.Status;
-import org.opendaylight.ovsdb.openstack.netvirt.api.StatusCode;
-import org.opendaylight.ovsdb.openstack.netvirt.api.StatusWithUuid;
-import org.opendaylight.ovsdb.openstack.netvirt.api.TenantNetworkManager;
+import org.opendaylight.ovsdb.openstack.netvirt.api.*;
import org.opendaylight.ovsdb.schema.openvswitch.Bridge;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+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.opendaylight.inventory.rev130819.nodes.NodeBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
private volatile ConfigurationService configurationService;
private volatile BridgeConfigurationManager bridgeConfigurationManager;
private volatile TenantNetworkManager tenantNetworkManager;
+ private volatile OvsdbConfigurationService ovsdbConfigurationService;
+ private volatile OvsdbConnectionService connectionService;
private volatile MdsalConsumer mdsalConsumer;
private volatile SecurityServicesManager securityServicesManager;
private volatile IngressAclProvider ingressAclProvider;
}
private boolean isTunnelPresent(Node node, String tunnelName, String bridgeUUID) throws Exception {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
Row bridgeRow = ovsdbConfigurationService
.getRow(node, ovsdbConfigurationService.getTableName(node, Bridge.class), bridgeUUID);
Port port = ovsdbConfigurationService.getTypedRow(node, Port.class, portRow);
if (port != null && tunnelName.equalsIgnoreCase(port.getName())) return true;
}
- }*/
+ }
return false;
}
private String getPortUuid(Node node, String name, String bridgeUUID) throws Exception {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
Row bridgeRow = ovsdbConfigurationService
.getRow(node, ovsdbConfigurationService.getTableName(node, Bridge.class), bridgeUUID);
Port port = ovsdbConfigurationService.getTypedRow(node, Port.class, portRow);
if (port != null && name.equalsIgnoreCase(port.getName())) return portUUID.toString();
}
- }*/
+ }
return null;
}
private Status addTunnelPort (Node node, String tunnelType, InetAddress src, InetAddress dst) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
try {
String bridgeUUID = null;
} catch (Exception e) {
logger.error("Exception in addTunnelPort", e);
return new Status(StatusCode.INTERNALERROR);
- }*/
- return new Status(StatusCode.INTERNALERROR);
+ }
}
/* delete port from ovsdb port table */
private Status deletePort(Node node, String bridgeName, String portName) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
try {
String bridgeUUID = null;
} catch (Exception e) {
logger.error("Exception in deletePort", e);
return new Status(StatusCode.INTERNALERROR);
- }*/
- return new Status(StatusCode.INTERNALERROR);
+ }
}
private Status deleteTunnelPort(Node node, String tunnelType, InetAddress src, InetAddress dst) {
NeutronSecurityGroup securityGroupInPort = securityServicesManager.getSecurityGroupInPort(intf);
logger.debug("Program Local rules for networkType: {} does contain a Port Security Group: {} " +
"to be installed on DPID: {}", networkType, securityGroupInPort, dpid);
- ingressAclProvider.programPortSecurityACL(node, dpid, segmentationId, attachedMac, localPort,
+ ingressAclProvider.programPortSecurityACL(dpid, segmentationId, attachedMac, localPort,
securityGroupInPort);
- egressAclProvider.programPortSecurityACL(node, dpid, segmentationId, attachedMac, localPort,
+ egressAclProvider.programPortSecurityACL(dpid, segmentationId, attachedMac, localPort,
securityGroupInPort);
}
if (networkType.equalsIgnoreCase(NetworkHandler.NETWORK_TYPE_GRE) ||
private void programTunnelRules (String tunnelType, String segmentationId, InetAddress dst, Node node,
Interface intf, boolean local) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
try {
programRemoteEgressTunnelBridgeRules(node, dpid, segmentationId, attachedMac, tunnelOFPort, localPort);
}
logger.trace("program local ingress tunnel rules: node"
- + node.getId().getValue() + " intf " + intf.getName());
+ + node.getNodeId().getValue() + " intf " + intf.getName());
if (local) {
programLocalIngressTunnelBridgeRules(node, dpid, segmentationId, attachedMac, tunnelOFPort, localPort);
}
} catch (Exception e) {
logger.error("", e);
}
- */
}
private void removeTunnelRules (String tunnelType, String segmentationId, InetAddress dst, Node node,
Interface intf, boolean local, boolean isLastInstanceOnNode) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
try {
}
} catch (Exception e) {
logger.error("", e);
- }*/
+ }
}
private void programVlanRules (NeutronNetwork network, Node node, Interface intf) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
logger.debug("Program vlan rules for interface {}", intf.getName());
try {
}
} catch (Exception e) {
logger.error("", e);
- }*/
+ }
}
private void removeVlanRules (NeutronNetwork network, Node node,
Interface intf, boolean isLastInstanceOnNode) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
logger.debug("Remove vlan rules for interface {}", intf.getName());
}
} catch (Exception e) {
logger.error("", e);
- }*/
+ }
}
@Override
public Status handleInterfaceUpdate(NeutronNetwork network, Node srcNode, Interface intf) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(connectionService);
List<Node> nodes = connectionService.getNodes();
nodes.remove(srcNode);
dst != null ? dst.getHostAddress() : "null");
}
}
- }*/
+ }
return new Status(StatusCode.SUCCESS);
}
private Status triggerInterfaceUpdates(Node node) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
try {
Map<String, Row> intfs = ovsdbConfigurationService.getRows(node, ovsdbConfigurationService.getTableName(node, Interface.class));
} catch (Exception e) {
logger.error("Error Triggering the lost interface updates for "+ node, e);
return new Status(StatusCode.INTERNALERROR, e.getLocalizedMessage());
- }*/
+ }
return new Status(StatusCode.SUCCESS);
}
@Override
@Override
public Status handleInterfaceDelete(String tunnelType, NeutronNetwork network, Node srcNode, Interface intf,
boolean isLastInstanceOnNode) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(connectionService);
Status status = new Status(StatusCode.SUCCESS);
List<Node> nodes = connectionService.getNodes();
InetAddress dst = configurationService.getTunnelEndPoint(dstNode);
if ((src != null) && (dst != null)) {
logger.info("Remove tunnel rules for interface "
- + intf.getName() + " on srcNode " + srcNode.getId().getValue());
+ + intf.getName() + " on srcNode " + srcNode.getNodeId().getValue());
this.removeTunnelRules(tunnelType, network.getProviderSegmentationID(),
dst, srcNode, intf, true, isLastInstanceOnNode);
logger.info("Remove tunnel rules for interface "
- + intf.getName() + " on dstNode " + dstNode.getId().getValue());
+ + intf.getName() + " on dstNode " + dstNode.getNodeId().getValue());
this.removeTunnelRules(tunnelType, network.getProviderSegmentationID(),
src, dstNode, intf, false, isLastInstanceOnNode);
} else {
}
}
}
- }*/
+ }
//return status;
return new Status(StatusCode.SUCCESS);
}
}
@Override
- public void initializeOFFlowRules(Node openflowNode) {
- /* TODO SB_MIGRATION
+ public void initializeOFFlowRules(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node openflowNode) {
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(connectionService);
List<Node> ovsNodes = connectionService.getNodes();
if (ovsNodes == null) return;
this.initializeFlowRules(ovsNode, configurationService.getIntegrationBridgeName());
this.triggerInterfaceUpdates(ovsNode);
}
- }*/
+ }
}
@Override
}
private String getInternalBridgeUUID (Node node, String bridgeName) {
- /* TODO SB_MIGRATION
+ /* TODO SB_MIGRATION */
Preconditions.checkNotNull(ovsdbConfigurationService);
try {
Map<String, Row> bridgeTable = ovsdbConfigurationService.getRows(node, ovsdbConfigurationService.getTableName(node, Bridge.class));
}
} catch (Exception e) {
logger.error("Error getting Bridge Identifier for {} / {}", node, bridgeName, e);
- }*/
+ }
return null;
}
}
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionKey;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+//import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.l2.types.rev130827.EtherType;
}
@Override
- public Status programStaticArpEntry(Node node, Long dpid, String segmentationId, String macAddressStr,
+ public Status programStaticArpEntry(Long dpid, String segmentationId, String macAddressStr,
InetAddress ipAddress, Action action) {
String nodeName = Constants.OPENFLOW_NODE_PREFIX + dpid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
}
@Override
- public void programPortSecurityACL(Node node, Long dpid, String segmentationId, String attachedMac, long localPort,
+ public void programPortSecurityACL(Long dpid, String segmentationId, String attachedMac, long localPort,
NeutronSecurityGroup securityGroup) {
logger.trace("programLocalBridgeRulesWithSec neutronSecurityGroup: {} ", securityGroup);
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+//import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder;
import com.google.common.collect.Lists;
}
@Override
- public Status programIpRewriteRule(Node node, Long dpid, String segmentationId, InetAddress matchAddress,
+ public Status programIpRewriteRule(Long dpid, String segmentationId, InetAddress matchAddress,
InetAddress rewriteAddress, Action action) {
String nodeName = Constants.OPENFLOW_NODE_PREFIX + dpid;
}
@Override
- public Status programIpRewriteExclusion(Node node, Long dpid, String segmentationId, String excludedCidr,
+ public Status programIpRewriteExclusion(Long dpid, String segmentationId, String excludedCidr,
Action action) {
String nodeName = Constants.OPENFLOW_NODE_PREFIX + dpid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
}
@Override
- public void programPortSecurityACL(Node node, Long dpid, String segmentationId, String attachedMac,
+ public void programPortSecurityACL(Long dpid, String segmentationId, String attachedMac,
long localPort, NeutronSecurityGroup securityGroup) {
logger.trace("programLocalBridgeRulesWithSec neutronSecurityGroup: {} ", securityGroup);
}
@Override
- public Status programForwardingTableEntry(Node node, Long dpid, String segmentationId, InetAddress ipAddress,
+ public Status programForwardingTableEntry(Long dpid, String segmentationId, InetAddress ipAddress,
String macAddress, Action action) {
String nodeName = Constants.OPENFLOW_NODE_PREFIX + dpid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder;
import com.google.common.collect.Lists;
}
@Override
- public Status programIpRewriteRule(Node node, Long dpid, String segmentationId, InetAddress matchAddress,
+ public Status programIpRewriteRule(Long dpid, String segmentationId, InetAddress matchAddress,
InetAddress rewriteAddress, Action action) {
String nodeName = Constants.OPENFLOW_NODE_PREFIX + dpid;
}
@Override
- public Status programIpRewriteExclusion(Node node, Long dpid, String segmentationId, String excludedCidr,
+ public Status programIpRewriteExclusion(Long dpid, String segmentationId, String excludedCidr,
Action action) {
String nodeName = Constants.OPENFLOW_NODE_PREFIX + dpid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.InstructionKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+//import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder;
import com.google.common.collect.Lists;
}
@Override
- public Status programRouterInterface(Node node, Long dpid, String sourceSegId, String destSegId, String macAddress,
+ public Status programRouterInterface(Long dpid, String sourceSegId, String destSegId, String macAddress,
InetAddress address, int mask, Action action) {
String nodeName = Constants.OPENFLOW_NODE_PREFIX + dpid;
}
@Override
- public Status programDefaultRouteEntry(Node node, Long dpid, String segmentationId, String macAddress,
+ public Status programDefaultRouteEntry(Long dpid, String segmentationId, String macAddress,
InetAddress nextHop, Action action) {
String nodeName = Constants.OPENFLOW_NODE_PREFIX + dpid;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
import org.opendaylight.ovsdb.utils.mdsal.node.StringConvertor;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+//import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
+//import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+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.opendaylight.inventory.rev130819.nodes.NodeBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
+//import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeKey;
import org.osgi.framework.ServiceReference;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
@InjectMocks private OF13Provider of13Provider;
@Mock private NeutronNetwork network;
+ @Mock private org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node openflowNode;
@Mock private Node node;
@Mock private Node node2;
@Mock private Node node3;
NodeKey nodeKey = new NodeKey(nodeId);
node = Mockito.mock(Node.class);
- when(node.getId()).thenReturn(nodeId);
+ when(node.getNodeId()).thenReturn(nodeId);
when(node.getKey()).thenReturn(new NodeKey(nodeId));
when(configurationService.getTunnelEndPoint(node)).thenReturn(InetAddress.getByName("192.168.0.1"));
nodeList.add(node);
nodeId = new NodeId("Node2");
node2 = Mockito.mock(Node.class);
- when(node2.getId()).thenReturn(nodeId);
+ when(node2.getNodeId()).thenReturn(nodeId);
when(node2.getKey()).thenReturn(new NodeKey(nodeId));
when(configurationService.getTunnelEndPoint(node2)).thenReturn(InetAddress.getByName("192.168.0.2"));
nodeList.add(node2);
nodeId = new NodeId("Node3");
node3 = Mockito.mock(Node.class);
- when(node3.getId()).thenReturn(nodeId);
+ when(node3.getNodeId()).thenReturn(nodeId);
when(node3.getKey()).thenReturn(new NodeKey(nodeId));
when(configurationService.getTunnelEndPoint(node3)).thenReturn(InetAddress.getByName("192.168.0.3"));
nodeList.add(node3);
@Test
public void initializeOFFlowRulesTest(){
- of13Provider.initializeOFFlowRules(node);
+ of13Provider.initializeOFFlowRules(openflowNode);
//verify(connectionService, times(1)).getNodes();
}
/**
* Test method
- * {@link OF13Provider#handleInterfaceUpdateTest(NeutronNetwor, Node, Interface)}
+ * {@link OF13Provider#handleInterfaceUpdateTest(NeutronNetwork, Node, Interface)}
*/
@Test
public void handleInterfaceUpdateTest(){
/**
* Test method
- * {@link OF13Provider#handleInterfaceDelete(String, NeutronNetwor, Node, Interface, boolean)}
+ * {@link OF13Provider#handleInterfaceDelete(String, NeutronNetwork, Node, Interface, boolean)}
*/
@Test
public void handleInterfaceDeleteTest(){
final String nodeId="node1";
NodeBuilder builder = new NodeBuilder();
- builder.setId(new NodeId(nodeId));
- builder.setKey(new NodeKey(builder.getId()));
+ builder.setId(new org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId(nodeId));
+ builder.setKey(new org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey(builder.getId()));
NodeBuilder builderStatic = OF13Provider.createNodeBuilder(nodeId);
when(mdsalConsumer.getDataBroker()).thenReturn(dataBroker);
// test for Action.ADD
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), arpResponderService.programStaticArpEntry(mock(Node.class), Long.valueOf(12), "2", MAC_ADDRESS, ipAddress, Action.ADD));
+ assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), arpResponderService.programStaticArpEntry(Long.valueOf(12), "2", MAC_ADDRESS, ipAddress, Action.ADD));
verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(1)).get();
// test other Action, here Action.DELETE
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), arpResponderService.programStaticArpEntry(mock(Node.class), Long.valueOf(12), "2", MAC_ADDRESS, ipAddress, Action.DELETE));
+ assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), arpResponderService.programStaticArpEntry(Long.valueOf(12), "2", MAC_ADDRESS, ipAddress, Action.DELETE));
verify(writeTransaction, times(1)).delete(any(LogicalDatastoreType.class), any(InstanceIdentifier.class));
verify(commitFuture, times(2)).get(); // 1 + 1 above
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(1);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(HOST_ADDRESS);
- egressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
+ egressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
verify(egressAclServiceSpy, times(1)).egressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(egressAclServiceSpy, times(1)).egressACLTcpPortWithPrefix(anyLong(), anyString(), anyString(), anyBoolean(), anyInt(), anyString(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(1);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(HOST_ADDRESS);
- egressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
+ egressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
verify(egressAclServiceSpy, times(1)).egressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(egressAclServiceSpy, times(1)).egressACLTcpPortWithPrefix(anyLong(), anyString(), anyString(), anyBoolean(), anyInt(), anyString(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(null);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(HOST_ADDRESS);
- egressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
+ egressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
verify(egressAclServiceSpy, times(1)).egressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(egressAclServiceSpy, times(1)).egressACLPermitAllProto(anyLong(), anyString(), anyString(), anyBoolean(), anyString(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(null);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(HOST_ADDRESS);
- egressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
+ egressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
verify(egressAclServiceSpy, times(1)).egressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(egressAclServiceSpy, times(1)).egressACLPermitAllProto(anyLong(), anyString(), anyString(), anyBoolean(), anyString(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(1);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(null);
- egressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
+ egressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
verify(egressAclServiceSpy, times(1)).egressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(egressAclServiceSpy, times(1)).egressACLTcpSyn(anyLong(), anyString(), anyString(), anyBoolean(), anyInt(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(1);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(null);
- egressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
+ egressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
verify(egressAclServiceSpy, times(1)).egressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(egressAclServiceSpy, times(1)).egressACLTcpSyn(anyLong(), anyString(), anyString(), anyBoolean(), anyInt(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(null);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(null);
- egressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
+ egressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), "2", MAC_ADDRESS, 124, securityGroup);
verify(egressAclServiceSpy, times(1)).egressAllowProto(anyLong(), anyString(), anyString(), anyBoolean(), anyString(), anyInt());
verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
}
/**
- * Test method {@link InboundNatService#programIpRewriteRule(Node, Long, String, InetAddress, InetAddress, Action)}
+ * Test method {@link InboundNatService#programIpRewriteRule(Long, String, InetAddress, InetAddress, Action)}
*/
@Test
public void testProgramIpRewriteRule() throws Exception {
InetAddress matchAddress = mock(InetAddress.class);
when(matchAddress.getHostAddress()).thenReturn(HOST_ADDRESS);
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), inboundNatService.programIpRewriteRule(mock(Node.class), Long.valueOf(123), "2", matchAddress, rewriteAddress, Action.ADD));
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ inboundNatService.programIpRewriteRule(Long.valueOf(123), "2",
+ matchAddress, rewriteAddress, Action.ADD));
verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(1)).get();
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), inboundNatService.programIpRewriteRule(mock(Node.class), Long.valueOf(123), "2", matchAddress, rewriteAddress, Action.DELETE));
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ inboundNatService.programIpRewriteRule(Long.valueOf(123), "2",
+ matchAddress, rewriteAddress, Action.DELETE));
verify(writeTransaction, times(1)).delete(any(LogicalDatastoreType.class), any(InstanceIdentifier.class));
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(2)).get(); // 1 + 1 above
}
/**
- * Test method {@link InboundNatService#programIpRewriteExclusion(Node, Long, String, String, Action)}
+ * Test method {@link InboundNatService#programIpRewriteExclusion(Long, String, String, Action)}
*/
@Test
public void testProgramIpRewriteExclusion() throws Exception {
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), inboundNatService.programIpRewriteExclusion(mock(Node.class), Long.valueOf(123), "2", HOST_ADDRESS_PREFIX, Action.ADD));
- verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ inboundNatService.programIpRewriteExclusion(Long.valueOf(123), "2", HOST_ADDRESS_PREFIX, Action.ADD));
+ verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class),
+ any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(1)).get();
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), inboundNatService.programIpRewriteExclusion(mock(Node.class), Long.valueOf(123), "2", HOST_ADDRESS_PREFIX, Action.DELETE));
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ inboundNatService.programIpRewriteExclusion(Long.valueOf(123), "2",
+ HOST_ADDRESS_PREFIX, Action.DELETE));
verify(writeTransaction, times(1)).delete(any(LogicalDatastoreType.class), any(InstanceIdentifier.class));
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(2)).get(); // 1 + 1 above
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(1);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(HOST_ADDRESS);
- ingressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
+ ingressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
verify(ingressAclServiceSpy, times(1)).ingressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(ingressAclServiceSpy, times(1)).ingressACLTcpPortWithPrefix(anyLong(), anyString(), anyString(), anyBoolean(), anyInt(), anyString(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(1);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(HOST_ADDRESS);
- ingressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
+ ingressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
verify(ingressAclServiceSpy, times(1)).ingressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(ingressAclServiceSpy, times(1)).ingressACLTcpPortWithPrefix(anyLong(), anyString(), anyString(), anyBoolean(), anyInt(), anyString(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(null);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(HOST_ADDRESS);
- ingressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
+ ingressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
verify(ingressAclServiceSpy, times(1)).ingressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(ingressAclServiceSpy, times(1)).ingressACLPermitAllProto(anyLong(), anyString(), anyString(), anyBoolean(), anyString(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(null);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(HOST_ADDRESS);
- ingressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
+ ingressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
verify(ingressAclServiceSpy, times(1)).ingressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(ingressAclServiceSpy, times(1)).ingressACLPermitAllProto(anyLong(), anyString(), anyString(), anyBoolean(), anyString(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(1);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(null);
- ingressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
+ ingressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
verify(ingressAclServiceSpy, times(1)).ingressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(ingressAclServiceSpy, times(1)).ingressACLTcpSyn(anyLong(), anyString(), anyString(), anyBoolean(), anyInt(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(1);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(null);
- ingressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
+ ingressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
verify(ingressAclServiceSpy, times(1)).ingressACLDefaultTcpDrop(anyLong(), anyString(), anyString(), anyInt(), anyBoolean());
verify(ingressAclServiceSpy, times(1)).ingressACLTcpSyn(anyLong(), anyString(), anyString(), anyBoolean(), anyInt(), anyInt());
verify(readWriteTransaction, times(4)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
when(portSecurityRule.getSecurityRulePortMin()).thenReturn(null);
when(portSecurityRule.getSecurityRuleRemoteIpPrefix()).thenReturn(null);
- ingressAclServiceSpy.programPortSecurityACL(mock(Node.class), Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
+ ingressAclServiceSpy.programPortSecurityACL(Long.valueOf(1554), SEGMENTATION_ID, MAC_ADDRESS, 124, securityGroup);
verify(ingressAclServiceSpy, times(1)).handleIngressAllowProto(anyLong(), anyString(), anyString(), anyBoolean(), anyString(), anyInt());
verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
}
/**
- * Test method {@link L3ForwardingService#programForwardingTableEntry(Node, Long, String, InetAddress, String, Action)}
+ * Test method {@link L3ForwardingService#programForwardingTableEntry(Long, String, InetAddress, String, Action)}
*/
@Test
public void testProgramForwardingTableEntry() throws Exception {
InetAddress address = mock(InetAddress.class);
when(address.getHostAddress()).thenReturn(HOST_ADDRESS);
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), l3ForwardingService.programForwardingTableEntry(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, address, MAC_ADDRESS, Action.ADD));
- verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ l3ForwardingService.programForwardingTableEntry(Long.valueOf(123),
+ SEGMENTATION_ID, address, MAC_ADDRESS, Action.ADD));
+ verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class),
+ any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(1)).get();
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), l3ForwardingService.programForwardingTableEntry(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, address, MAC_ADDRESS, Action.DELETE));
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ l3ForwardingService.programForwardingTableEntry(Long.valueOf(123),
+ SEGMENTATION_ID, address, MAC_ADDRESS, Action.DELETE));
verify(writeTransaction, times(1)).delete(any(LogicalDatastoreType.class), any(InstanceIdentifier.class));
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(2)).get(); // 1 + 1 above
}
/**
- * Test method {@link OutboundNatService#programIpRewriteRule(Node, Long, String, InetAddress, InetAddress, Action)}
+ * Test method {@link OutboundNatService#programIpRewriteRule(Long, String, InetAddress, InetAddress, Action)}
*/
@Test
public void testProgramIpRewriteRule() throws Exception {
InetAddress address = mock(InetAddress.class);
when(address.getHostAddress()).thenReturn(HOST_ADDRESS);
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), outboundNatService.programIpRewriteRule(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, address, address, Action.ADD));
+ assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), outboundNatService.programIpRewriteRule(Long.valueOf(123), SEGMENTATION_ID, address, address, Action.ADD));
verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(1)).get();
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), outboundNatService.programIpRewriteRule(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, address, address, Action.DELETE));
+ assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), outboundNatService.programIpRewriteRule(Long.valueOf(123), SEGMENTATION_ID, address, address, Action.DELETE));
verify(writeTransaction, times(1)).delete(any(LogicalDatastoreType.class), any(InstanceIdentifier.class));
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(2)).get(); // 1 + 1 above
}
/**
- * Test method {@link OutboundNatService#programIpRewriteExclusion(Node, Long, String, String, Action)}
+ * Test method {@link OutboundNatService#programIpRewriteExclusion(Long, String, String, Action)}
*/
@Test
public void testProgramIpRewriteExclusion() throws Exception {
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), outboundNatService.programIpRewriteExclusion(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, HOST_ADDRESS_PREFIX, Action.ADD));
+ assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), outboundNatService.programIpRewriteExclusion(Long.valueOf(123), SEGMENTATION_ID, HOST_ADDRESS_PREFIX, Action.ADD));
verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(1)).get();
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), outboundNatService.programIpRewriteExclusion(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, HOST_ADDRESS_PREFIX, Action.DELETE));
+ assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), outboundNatService.programIpRewriteExclusion(Long.valueOf(123), SEGMENTATION_ID, HOST_ADDRESS_PREFIX, Action.DELETE));
verify(writeTransaction, times(1)).delete(any(LogicalDatastoreType.class), any(InstanceIdentifier.class));
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(2)).get(); // 1 + 1 above
}
/**
- * Test method {@link RoutingService#programRouterInterface(Node, Long, String, String, String, InetAddress, int, Action)}
+ * Test method {@link RoutingService#programRouterInterface(Long, String, String, String, InetAddress, int, Action)}
*/
@Test
public void testProgramRouterInterface() throws Exception {
InetAddress address = mock(InetAddress.class);
when(address.getHostAddress()).thenReturn(HOST_ADDRESS);
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), routingService.programRouterInterface(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, SEGMENTATION_ID, MAC_ADDRESS, address, 1, Action.ADD));
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ routingService.programRouterInterface(Long.valueOf(123),
+ SEGMENTATION_ID, SEGMENTATION_ID, MAC_ADDRESS, address, 1, Action.ADD));
verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(1)).get();
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), routingService.programRouterInterface(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, SEGMENTATION_ID, MAC_ADDRESS, address, 1, Action.DELETE));
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ routingService.programRouterInterface(Long.valueOf(123),
+ SEGMENTATION_ID, SEGMENTATION_ID, MAC_ADDRESS, address, 1, Action.DELETE));
verify(writeTransaction, times(1)).delete(any(LogicalDatastoreType.class), any(InstanceIdentifier.class));
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(2)).get(); // 1 + 1 above
}
/**
- * Test method {@link RoutingService#programDefaultRouteEntry(Node, Long, String, String, InetAddress, Action)}
+ * Test method {@link RoutingService#programDefaultRouteEntry(Long, String, String, InetAddress, Action)}
*/
@Test
public void testProgramDefaultRouteEntry() throws Exception {
InetAddress address = mock(InetAddress.class);
when(address.getHostAddress()).thenReturn(HOST_ADDRESS);
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), routingService.programDefaultRouteEntry(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, MAC_ADDRESS, address, Action.ADD));
- verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class), any(InstanceIdentifier.class), any(Node.class), anyBoolean());
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ routingService.programDefaultRouteEntry(Long.valueOf(123),
+ SEGMENTATION_ID, MAC_ADDRESS, address, Action.ADD));
+ verify(readWriteTransaction, times(2)).put(any(LogicalDatastoreType.class),
+ any(InstanceIdentifier.class), any(Node.class), anyBoolean());
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(1)).get();
- assertEquals("Error, did not return the expected StatusCode", new Status(StatusCode.SUCCESS), routingService.programDefaultRouteEntry(mock(Node.class), Long.valueOf(123), SEGMENTATION_ID, MAC_ADDRESS, address, Action.DELETE));
+ assertEquals("Error, did not return the expected StatusCode",
+ new Status(StatusCode.SUCCESS),
+ routingService.programDefaultRouteEntry(Long.valueOf(123),
+ SEGMENTATION_ID, MAC_ADDRESS, address, Action.DELETE));
verify(writeTransaction, times(1)).delete(any(LogicalDatastoreType.class), any(InstanceIdentifier.class));
verify(readWriteTransaction, times(1)).submit();
verify(commitFuture, times(2)).get(); // 1 + 1 above
}
-
}
private void doNeutronLoadBalancerPoolMemberCreate(NeutronLoadBalancerPoolMember neutronLBPoolMember) {
Preconditions.checkNotNull(loadBalancerProvider);
LoadBalancerConfiguration lbConfig = extractLBConfiguration(neutronLBPoolMember);
- final List<Node> nodes = nodeCacheManager.getNodes();
+ final List<Node> nodes =
+ nodeCacheManager.getNodes();
if (lbConfig == null) {
logger.debug("Neutron LB configuration invalid for member {} ", neutronLBPoolMember.getPoolMemberAddress());
} else if (lbConfig.getVip() == null) {
import org.opendaylight.ovsdb.openstack.netvirt.impl.NeutronL3Adapter;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.opendaylight.ovsdb.openstack.netvirt.impl.NeutronL3Adapter;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.opendaylight.ovsdb.lib.notation.Row;
import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+//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;
public class SouthboundEvent extends AbstractEvent {
public enum Type { NODE, ROW }
import org.opendaylight.ovsdb.schema.openvswitch.OpenVSwitch;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
import org.opendaylight.ovsdb.utils.mdsal.node.StringConvertor;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Notification about an OpenFlow Node
*
- * @param openFlowNode the {@link org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node Node} of interest in the notification
+ * @param openFlowNode the {@link Node Node} of interest in the notification
* @param action the {@link Action}
* @see NodeCacheListener#notifyNode
*/
@Override
- public void notifyNode (Node openFlowNode, Action action) {
+ public void notifyNode (org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node openFlowNode,
+ Action action) {
logger.info("notifyNode: Node {} update {} from Controller's inventory Service",
openFlowNode, action);
if (action.equals(Action.ADD)) {
- networkingProviderManager.getProvider(openFlowNode).initializeOFFlowRules(openFlowNode);
+ /* TODO SB_MIGRATION
+ * Need to map from ovsdbNode to openflowNode
+ */
+ //networkingProviderManager.getProvider(ovsdbNode).initializeOFFlowRules(openFlowNode);
}
}
}
package org.opendaylight.ovsdb.openstack.netvirt.api;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-
import java.net.InetAddress;
/**
*/
public interface ArpProvider {
- Status programStaticArpEntry(Node node, Long dpid, String segmentationId,
+ Status programStaticArpEntry(Long dpid, String segmentationId,
String macAddress, InetAddress ipAddress, Action action);
}
import org.opendaylight.neutron.spi.NeutronNetwork;
import org.opendaylight.ovsdb.schema.openvswitch.Bridge;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import java.util.List;
* OpenStack Neutron with the Open vSwitch plugin relies on a typical bridge configuration that
* consists of br-int (Integration Bridge), br-net (Network bridge), br-ex (External bridge).
*
- * This class ensures that the bridges on each {@link org.opendaylight.controller.sal.core.Node}
+ * This class ensures that the bridges on each {@link Node}
* are correctly configured for OpenStack Neutron
*
*/
/**
* A helper function to get the UUID of a given Bridge
- * @param node the {@link org.opendaylight.controller.sal.core.Node} where the bridge is configured
+ * @param node the {@link Node} where the bridge is configured
* @param bridgeName the name of the bridge
* @return the UUID of the bridge
*/
/**
* Checks for the existence of the Integration Bridge on a given Node
- * @param node the {@link org.opendaylight.controller.sal.core.Node} where the bridge should be configured
+ * @param node the {@link Node} where the bridge should be configured
* @return True if the bridge exists, False if it does not
*/
public boolean isNodeNeutronReady(Node node);
/**
* Checks for the existence of the Network Bridge on a given Node
- * @param node the {@link org.opendaylight.controller.sal.core.Node} where the bridge should be configured
+ * @param node the {@link Node} where the bridge should be configured
* @return True if the bridge exists, False if it does not
*/
public boolean isNodeOverlayReady(Node node);
/**
* Checks for the existence of the Network Bridge on a given Node
- * @param node the {@link org.opendaylight.controller.sal.core.Node} where the bridge should be configured
+ * @param node the {@link Node} where the bridge should be configured
* @return True if the bridge exists, False if it does not
*/
* Checks that a Node is ready for a Tunnel Network Provider
* For OpenFlow 1.0 the Integration, Network Bridge and corresponding patch ports are required
* For OpenFlow 1.3 only the Integration Bridge is required
- * @param node the {@link org.opendaylight.controller.sal.core.Node} where the bridge is configured
+ * @param node the {@link Node} where the bridge is configured
* @return True or False
*/
public boolean isNodeTunnelReady(Node node);
* For OpenFlow 1.0 the Integration Bridge, Network Bridge, patch ports and a physical device connected to the
* Network Bridge are required.
* For OpenFlow 1.3 the Integration Bridge is required and must have a physical device connected.
- * @param node the {@link org.opendaylight.controller.sal.core.Node} where the bridge is configured
+ * @param node the {@link Node} where the bridge is configured
* @param network the {@link org.opendaylight.neutron.spi.NeutronNetwork}
* @return True or False
*/
/**
* A helper function to determine if a port exists on a given bridge
- * @param node the {@link org.opendaylight.controller.sal.core.Node} where the bridge is configured
+ * @param node the {@link Node} where the bridge is configured
* @param bridge the {@link org.opendaylight.ovsdb.schema.openvswitch.Bridge} to query
* @param portName the name of the port to search for
* @return True if the port exists, otherwise False
/**
* Returns true if the bridges required for the provider network type are created
* If the bridges are not created, this method will attempt to create them
- * @param node the {@link org.opendaylight.controller.sal.core.Node} to query
+ * @param node the {@link Node} to query
* @param network the {@link org.opendaylight.neutron.spi.NeutronNetwork}
* @return True or False
*/
/**
* Prepares the given Node for Neutron Networking by creating the Integration Bridge
- * @param node the {@link org.opendaylight.controller.sal.core.Node} to prepare
+ * @param node the {@link Node} to prepare
*/
public void prepareNode(Node node);
/** Returns all physical interfaces configured in the bridge mapping
* Bridge mappings will be of the following format:
- * @param node the {@link org.opendaylight.controller.sal.core.Node} to query
+ * @param node the {@link Node} to query
* @return a List in the format {eth1, eth2} given bridge_mappings=physnet1:eth1,physnet2:eth2
*/
public List<String> getAllPhysicalInterfaceNames(Node node);
package org.opendaylight.ovsdb.openstack.netvirt.api;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.apache.commons.lang3.tuple.Pair;
package org.opendaylight.ovsdb.openstack.netvirt.api;
import org.opendaylight.ovsdb.lib.OvsdbClient;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
private static final Logger logger = LoggerFactory.getLogger(Connection.class);
- public Connection(String identifier, OvsdbClient client) {
- super();
-
- this.identifier = identifier;
- this.client = client;
- this.idCounter = 0L;
- NodeId nodeId = new NodeId("OVS" + "|" + identifier);
- NodeKey nodeKey = new NodeKey(nodeId);
- node = new NodeBuilder()
- .setId(nodeId)
- .setKey(nodeKey)
- .build();
+ public Connection(String identifier) {
}
public String getIdentifier() {
package org.opendaylight.ovsdb.openstack.netvirt.api;
import org.opendaylight.neutron.spi.NeutronSecurityGroup;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
/**
* This interface allows egress Port Security flows to be written to devices
* @param localPort the local port
* @param securityGroup the security group
*/
- public void programPortSecurityACL(Node node, Long dpid, String segmentationId, String attachedMac,
+ public void programPortSecurityACL(Long dpid, String segmentationId, String attachedMac,
long localPort, NeutronSecurityGroup securityGroup);
}
package org.opendaylight.ovsdb.openstack.netvirt.api;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-
import java.net.InetAddress;
/**
* This interface allows NAT flows to be written to devices
*/
public interface InboundNatProvider {
- Status programIpRewriteRule(Node node, Long dpid, String segmentationId, InetAddress matchAddress,
+ Status programIpRewriteRule(Long dpid, String segmentationId, InetAddress matchAddress,
InetAddress rewriteAddress, Action action);
- Status programIpRewriteExclusion(Node node, Long dpid, String segmentationId,
+ Status programIpRewriteExclusion(Long dpid, String segmentationId,
String excludedCidr, Action action);
}
package org.opendaylight.ovsdb.openstack.netvirt.api;
import org.opendaylight.neutron.spi.NeutronSecurityGroup;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
/**
* This interface allows ingress Port Security flows to be written to devices
* @param localPort the local port
* @param securityGroup the security group
*/
- public void programPortSecurityACL(Node node, Long dpid, String segmentationId, String attachedMac,
+ public void programPortSecurityACL(Long dpid, String segmentationId, String attachedMac,
long localPort, NeutronSecurityGroup securityGroup);
}
package org.opendaylight.ovsdb.openstack.netvirt.api;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-
import java.net.InetAddress;
/**
*/
public interface L3ForwardingProvider {
- Status programForwardingTableEntry(Node node, Long dpid, String segmentationId, InetAddress ipAddress,
+ Status programForwardingTableEntry(Long dpid, String segmentationId, InetAddress ipAddress,
String macAddress, Action action);
}
import java.net.InetAddress;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
//import org.opendaylight.controller.sal.binding.api.NotificationProviderService;
/**
import org.opendaylight.neutron.spi.NeutronNetwork;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
/**
* The NetworkingProvider interface is implemented by Neutron Networking Providers
/**
* Initialize the Flow rules for a given OpenFlow node
*/
- public void initializeOFFlowRules(Node openflowNode);
+ public void initializeOFFlowRules(org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node openflowNode);
/**
* Generate event to announce flow capable node.
package org.opendaylight.ovsdb.openstack.netvirt.api;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
/**
- * The NetworkingProviderManager handles the mapping between {@link org.opendaylight.controller.sal.core.Node}
+ * The NetworkingProviderManager handles the mapping between {@Node}
* and registered {@link org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProvider} implementations
*/
public interface NetworkingProviderManager {
/**
* Returns the Networking Provider for a given node
- * @param node a {@link org.opendaylight.controller.sal.core.Node}
+ * @param ovsdbNode a {@link Node}
* @return a NetworkProvider
* @see NetworkingProvider
*/
- NetworkingProvider getProvider(Node node);
+ NetworkingProvider getProvider(Node ovsdbNode);
}
package org.opendaylight.ovsdb.openstack.netvirt.api;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-
import java.net.InetAddress;
/**
* This interface allows NAT flows to be written to devices
*/
public interface OutboundNatProvider {
- Status programIpRewriteRule(Node node, Long dpid, String segmentationId, InetAddress matchAddress,
+ Status programIpRewriteRule(Long dpid, String segmentationId, InetAddress matchAddress,
InetAddress rewriteAddress, Action action);
- Status programIpRewriteExclusion(Node node, Long dpid, String segmentationId,
+ Status programIpRewriteExclusion(Long dpid, String segmentationId,
String excludedCidr, Action action);
}
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.lib.schema.GenericTableSchema;
import org.opendaylight.ovsdb.lib.schema.typed.TypedBaseTable;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
/**
* Created by shague on 4/20/15.
import java.util.List;
import java.util.Map;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
/**
* Created by shague on 4/20/15.
package org.opendaylight.ovsdb.openstack.netvirt.api;
-import java.net.InetAddress;
import org.opendaylight.ovsdb.lib.notation.Row;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-//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;
public interface OvsdbInventoryListener {
public void ovsdbNodeAdded(Node node);
package org.opendaylight.ovsdb.openstack.netvirt.api;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-
import java.net.InetAddress;
/**
*/
public interface RoutingProvider {
- Status programRouterInterface(Node node, Long dpid, String srcSegId, String dstSegId, String macAddress,
+ Status programRouterInterface(Long dpid, String srcSegId, String dstSegId, String macAddress,
InetAddress address, int mask, Action action);
- Status programDefaultRouteEntry(Node node, Long dpid, String segmentationId, String macAddress,
+ Status programDefaultRouteEntry(Long dpid, String segmentationId, String macAddress,
InetAddress nextHop, Action action);
}
import org.opendaylight.neutron.spi.NeutronNetwork;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
/**
* Open vSwitch isolates Tenant Networks using VLANs on the Integration Bridge
package org.opendaylight.ovsdb.openstack.netvirt.api;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
/**
* This cache stores the VLAN assignments used for tenant separation within a vSwitch
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.schema.openvswitch.OpenVSwitch;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
import org.opendaylight.ovsdb.openstack.netvirt.api.OvsdbConfigurationService;
import org.opendaylight.ovsdb.schema.openvswitch.OpenVSwitch;
import org.opendaylight.ovsdb.utils.config.ConfigProperties;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public String getDefaultGatewayMacAddress(Node node) {
+ /* TODO SB_MIGRATION */
final String l3gatewayForNode =
node != null ?
- ConfigProperties.getProperty(this.getClass(), "ovsdb.l3gateway.mac." + node.getId().getValue()) : null;
+ ConfigProperties.getProperty(this.getClass(), "ovsdb.l3gateway.mac." + node.getNodeId().getValue()) : null;
return l3gatewayForNode != null ?
l3gatewayForNode : ConfigProperties.getProperty(this.getClass(), "ovsdb.l3gateway.mac");
}
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException;
+import org.opendaylight.ovsdb.southbound.SouthboundMapper;
+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.network.topology.topology.Node;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
*
* @param dataBroker the {@link org.opendaylight.controller.md.sal.binding.api.DataBroker}
*/
- public MdsalUtils (DataBroker dataBroker) {
+ public MdsalUtils(DataBroker dataBroker) {
this.databroker = dataBroker;
}
-
+/*
+ public static Node createNode(String nodeId) {
+ String[] pair = identifier.split("\\|");
+ if ((pair.length > 1) && (pair[0].equals("OVS"))) {
+ id = pair[1];
+ }
+ return id;
+ }
+ ConnectionInfo connectionInfo = getConnectionInfo(addressStr, portStr);
+ SouthboundMapper.createNode(connectionInfo);
+ }
+*/
/**
* Executes read transaction as a test2.
*
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.utils.config.ConfigProperties;
import org.opendaylight.ovsdb.utils.mdsal.node.StringConvertor;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import com.google.common.base.Preconditions;
import org.slf4j.Logger;
if (actionForNode == Action.DELETE && isProgrammed == Boolean.FALSE) {
logger.trace("programL3ForwardingStage1 for node {} providerId {} mac {} ip {} action {} is already done",
- node.getId().getValue(), providerSegmentationId, macAddress, ipStr, actionForNode);
+ node.getNodeId().getValue(), providerSegmentationId, macAddress, ipStr, actionForNode);
return;
}
if (actionForNode == Action.ADD && isProgrammed == Boolean.TRUE) {
logger.trace("programL3ForwardingStage1 for node {} providerId {} mac {} ip {} action {} is already done",
- node.getId().getValue(), providerSegmentationId, macAddress, ipStr, actionForNode);
+ node.getNodeId().getValue(), providerSegmentationId, macAddress, ipStr, actionForNode);
return;
}
InetAddress inetAddress = InetAddress.getByName(address);
status = l3ForwardingProvider == null ?
new Status(StatusCode.SUCCESS) :
- l3ForwardingProvider.programForwardingTableEntry(node, dpid, providerSegmentationId,
+ l3ForwardingProvider.programForwardingTableEntry(dpid, providerSegmentationId,
inetAddress, macAddress, actionForNode);
} catch (UnknownHostException e) {
status = new Status(StatusCode.BADREQUEST);
final String ipStr = neutronIP.getIpAddress();
if (ipStr.isEmpty()) {
logger.debug("programFlowsForNeutronRouterInterface is skipping node {} ip {}",
- node.getId().getValue(), ipStr);
+ node.getNodeId().getValue(), ipStr);
continue;
}
if (actionForNode == Action.DELETE && isProgrammed == Boolean.FALSE) {
logger.trace("programRouterInterfaceStage1 for node {} sourceSegId {} destSegId {} mac {} ip {} mask {}" +
"action {} is already done",
- node.getId().getValue(), sourceSegmentationId, destinationSegmentationId,
+ node.getNodeId().getValue(), sourceSegmentationId, destinationSegmentationId,
ipStr, mask, actionForNode);
return;
}
if (actionForNode == Action.ADD && isProgrammed == Boolean.TRUE) {
logger.trace("programRouterInterfaceStage1 for node {} sourceSegId {} destSegId {} mac {} ip {} mask {}" +
"action {} is already done",
- node.getId().getValue(), sourceSegmentationId, destinationSegmentationId,
+ node.getNodeId().getValue(), sourceSegmentationId, destinationSegmentationId,
ipStr, mask, actionForNode);
return;
}
InetAddress inetAddress = InetAddress.getByName(address);
status = routingProvider == null ?
new Status(StatusCode.SUCCESS) :
- routingProvider.programRouterInterface(node, dpid, sourceSegmentationId, destinationSegmentationId,
+ routingProvider.programRouterInterface(dpid, sourceSegmentationId, destinationSegmentationId,
macAddress, inetAddress, mask, actionForNode);
} catch (UnknownHostException e) {
status = new Status(StatusCode.BADREQUEST);
if (actionForNode == Action.DELETE && isProgrammed == Boolean.FALSE) {
logger.trace("programStaticArpStage1 node {} providerId {} mac {} ip {} action {} is already done",
- node.getId().getValue(), providerSegmentationId, macAddress, ipStr, actionForNode);
+ node.getNodeId().getValue(), providerSegmentationId, macAddress, ipStr, actionForNode);
return;
}
if (actionForNode == Action.ADD && isProgrammed == Boolean.TRUE) {
logger.trace("programStaticArpStage1 node {} providerId {} mac {} ip {} action {} is already done",
- node.getId().getValue(), providerSegmentationId, macAddress, ipStr, actionForNode);
+ node.getNodeId().getValue(), providerSegmentationId, macAddress, ipStr, actionForNode);
return;
}
InetAddress inetAddress = InetAddress.getByName(address);
status = arpProvider == null ?
new Status(StatusCode.SUCCESS) :
- arpProvider.programStaticArpEntry(node, dpid, providerSegmentationId,
+ arpProvider.programStaticArpEntry(dpid, providerSegmentationId,
macAddress, inetAddress, actionForNode);
} catch (UnknownHostException e) {
status = new Status(StatusCode.BADREQUEST);
if (actionForRewriteExclusion == Action.DELETE && isProgrammed == Boolean.FALSE) {
logger.trace("programIpRewriteExclusionStage1 node {} providerId {} {} cidr {} action {} is already done",
- node.getId().getValue(), providerSegmentationId, isInbound ? "inbound" : "outbound", cidr,
+ node.getNodeId().getValue(), providerSegmentationId, isInbound ? "inbound" : "outbound", cidr,
actionForRewriteExclusion);
return;
}
if (actionForRewriteExclusion == Action.ADD && isProgrammed == Boolean.TRUE) {
logger.trace("programIpRewriteExclusionStage1 node {} providerId {} {} cidr {} action {} is already done",
- node.getId().getValue(), providerSegmentationId, isInbound ? "inbound" : "outbound", cidr,
+ node.getNodeId().getValue(), providerSegmentationId, isInbound ? "inbound" : "outbound", cidr,
actionForRewriteExclusion);
return;
}
Status status;
if (isInbound) {
status = inboundNatProvider == null ? new Status(StatusCode.SUCCESS) :
- inboundNatProvider.programIpRewriteExclusion(node, dpid, providerSegmentationId, cidr,
+ inboundNatProvider.programIpRewriteExclusion(dpid, providerSegmentationId, cidr,
actionForNode);
} else {
status = outboundNatProvider == null ? new Status(StatusCode.SUCCESS) :
- outboundNatProvider.programIpRewriteExclusion(node, dpid, providerSegmentationId, cidr,
+ outboundNatProvider.programIpRewriteExclusion(dpid, providerSegmentationId, cidr,
actionForNode);
}
if (actionForNodeDefaultRoute == Action.DELETE && isProgrammed == Boolean.FALSE) {
logger.trace("programDefaultRouteStage1 node {} providerId {} mac {} gw {} action {} is already done",
- node.getId().getValue(), providerSegmentationId, defaultGatewayMacAddress, gatewayIp,
+ node.getNodeId().getValue(), providerSegmentationId, defaultGatewayMacAddress, gatewayIp,
actionForNodeDefaultRoute);
return;
}
if (actionForNodeDefaultRoute == Action.ADD && isProgrammed == Boolean.TRUE) {
logger.trace("programDefaultRouteStage1 node {} providerId {} mac {} gw {} action {} is already done",
- node.getId().getValue(), providerSegmentationId, defaultGatewayMacAddress, gatewayIp,
+ node.getNodeId().getValue(), providerSegmentationId, defaultGatewayMacAddress, gatewayIp,
actionForNodeDefaultRoute);
return;
}
InetAddress inetAddress = InetAddress.getByName(gatewayIp);
status = routingProvider == null ?
new Status(StatusCode.SUCCESS) :
- routingProvider.programDefaultRouteEntry(node, dpid, providerSegmentationId,
+ routingProvider.programDefaultRouteEntry(dpid, providerSegmentationId,
defaultGatewayMacAddress, inetAddress,
actionForNodeDefaultRoute);
} catch (UnknownHostException e) {
if (actionForNode == Action.DELETE && isProgrammed == Boolean.FALSE) {
logger.trace("programIpRewriteStage1 node {} providerId {} {} matchAddr {} rewriteAddr {} action {}" +
" is already done",
- node.getId().getValue(), providerSegmentationId, isInbound ? "inbound": "outbound",
+ node.getNodeId().getValue(), providerSegmentationId, isInbound ? "inbound": "outbound",
matchAddress, rewriteAddress, actionForNode);
return;
}
if (actionForNode == Action.ADD && isProgrammed == Boolean.TRUE) {
logger.trace("programIpRewriteStage1 node {} providerId {} {} matchAddr {} rewriteAddr {} action {}" +
" is already done",
- node.getId().getValue(), providerSegmentationId, isInbound ? "inbound": "outbound",
+ node.getNodeId().getValue(), providerSegmentationId, isInbound ? "inbound": "outbound",
matchAddress, rewriteAddress, actionForNode);
return;
}
if (isInbound) {
status = inboundNatProvider == null ?
new Status(StatusCode.SUCCESS) :
- inboundNatProvider.programIpRewriteRule(node, dpid, providerSegmentationId,
+ inboundNatProvider.programIpRewriteRule(dpid, providerSegmentationId,
inetMatchAddress, inetRewriteAddress, actionForNode);
} else {
status = outboundNatProvider == null ?
new Status(StatusCode.SUCCESS) :
- outboundNatProvider.programIpRewriteRule(node, dpid, providerSegmentationId,
+ outboundNatProvider.programIpRewriteRule(dpid, providerSegmentationId,
inetMatchAddress, inetRewriteAddress, actionForNode);
}
} catch (UnknownHostException e) {
private void notifyNodeAdded(Node node) {
Set<OvsdbInventoryListener> mdsalConsumerListeners = OvsdbInventoryServiceImpl.getMdsalConsumerListeners();
for (OvsdbInventoryListener mdsalConsumerListener : mdsalConsumerListeners) {
- mdsalConsumerListener.ovsdbNodeAdded(inventoryNodeFromTopology(node));
+ mdsalConsumerListener.ovsdbNodeAdded(node);
}
}
import org.opendaylight.controller.sal.binding.api.BindingAwareConsumer;
import org.opendaylight.ovsdb.openstack.netvirt.api.MdsalConsumer;
import org.opendaylight.ovsdb.openstack.netvirt.api.OvsdbInventoryListener;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
--- /dev/null
+package org.opendaylight.ovsdb.openstack.netvirt.impl;
+
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
+
+public class OvsdbNode {
+ private Node node;
+
+ OvsdbNode(Node node) {
+ this.node = node;
+ }
+
+ public String getNodeId() {
+ return node.getNodeId().getValue();
+ }
+}
import java.util.HashMap;
import java.util.Map;
-import org.opendaylight.ovsdb.openstack.netvirt.api.ConfigurationService;
import org.opendaylight.ovsdb.openstack.netvirt.api.Constants;
import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProvider;
import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProviderManager;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.osgi.framework.ServiceReference;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.opendaylight.ovsdb.openstack.netvirt.api.VlanConfigurationCache;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import com.google.common.base.Preconditions;
import org.slf4j.Logger;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.schema.openvswitch.OpenVSwitch;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import com.google.common.base.Preconditions;
import com.google.common.collect.Maps;
import org.mockito.runners.MockitoJUnitRunner;
import org.mockito.stubbing.Answer;
import org.opendaylight.neutron.spi.NeutronNetwork;
-//import org.opendaylight.controller.sal.core.Node;
import org.opendaylight.ovsdb.lib.notation.Column;
import org.opendaylight.ovsdb.lib.notation.Row;
import org.opendaylight.ovsdb.lib.notation.UUID;
import org.opendaylight.ovsdb.schema.openvswitch.Bridge;
import org.opendaylight.ovsdb.schema.openvswitch.OpenVSwitch;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;
import org.opendaylight.ovsdb.openstack.netvirt.api.Constants;
import org.opendaylight.ovsdb.schema.openvswitch.OpenVSwitch;
import org.opendaylight.ovsdb.utils.config.ConfigProperties;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+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.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
NodeId nodeId = mock(NodeId.class);
PowerMockito.mockStatic(ConfigProperties.class);
- when(node.getId()).thenReturn(nodeId);
+ when(node.getNodeId()).thenReturn(nodeId);
when(nodeId.getValue()).thenReturn("nodeIdValue");
- PowerMockito.when(ConfigProperties.getProperty(configurationServiceImpl.getClass(), "ovsdb.l3gateway.mac." + node.getId().getValue())).thenReturn("gateway");
+ PowerMockito.when(ConfigProperties.getProperty(configurationServiceImpl.getClass(),
+ "ovsdb.l3gateway.mac." + node.getNodeId().getValue())).thenReturn("gateway");
- assertEquals("Error, did not return the defaultGatewayMacAddress of the node", "gateway", configurationServiceImpl.getDefaultGatewayMacAddress(node));
+ assertEquals("Error, did not return the defaultGatewayMacAddress of the node", "gateway",
+ configurationServiceImpl.getDefaultGatewayMacAddress(node));
}
}
import org.opendaylight.ovsdb.openstack.netvirt.api.TenantNetworkManager;
import org.opendaylight.ovsdb.schema.openvswitch.Bridge;
import org.opendaylight.ovsdb.utils.config.ConfigProperties;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+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.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
when(tenantNetworkManager.isTenantNetworkPresentInNode(any(Node.class), anyString())).thenReturn(false);
when(tenantNetworkManager.isTenantNetworkPresentInNode(any(Node.class), anyString())).thenReturn(true);
- when(node.getId()).thenReturn(nodeID);
+ when(node.getNodeId()).thenReturn(nodeID);
when(nodeID.getValue()).thenReturn("nodeId");
import org.mockito.Spy;
import org.mockito.runners.MockitoJUnitRunner;
import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProvider;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
import org.osgi.framework.ServiceReference;
/**
import org.opendaylight.ovsdb.schema.openvswitch.Bridge;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
/**
* Unit test for {@link TenantNetworkManagerImpl}
import org.opendaylight.ovsdb.lib.schema.GenericTableSchema;
import org.opendaylight.ovsdb.schema.openvswitch.Interface;
import org.opendaylight.ovsdb.schema.openvswitch.Port;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
/**
* Unit test for {@link VlanConfigurationCacheImpl}