/* * Copyright (c) 2013 Cisco Systems, Inc. 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.controller.protocol_plugin.ovsdb.internal; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import org.opendaylight.controller.sal.configuration.IPluginInNetworkConfigurationService; import org.opendaylight.controller.sal.core.Node; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class ConfigurationService implements IPluginInNetworkConfigurationService { private static final Logger logger = LoggerFactory .getLogger(ConfigurationService.class); IConnectionServiceInternal connectionService; void init() { } /** * Function called by the dependency manager when at least one dependency * become unsatisfied or when the component is shutting down because for * example bundle is being stopped. * */ void destroy() { } /** * Function called by dependency manager after "init ()" is called and after * the services provided by the class are registered in the service registry * */ void start() { } /** * Function called by the dependency manager before the services exported by * the component are unregistered, this will be followed by a "destroy ()" * calls * */ void stop() { } public void setConnectionServiceInternal(IConnectionServiceInternal connectionService) { this.connectionService = connectionService; } public void unsetConnectionServiceInternal(IConnectionServiceInternal connectionService) { if (this.connectionService == connectionService) { this.connectionService = null; } } @Override public boolean createBridgeDomain(Node node, String bridgeIdentifier) { if (connectionService == null) { logger.error("Couldnt refer to the ConnectionService"); return false; } Connection connection = connectionService.getConnection(node); /* ArrayList nulist = new ArrayList(); ArrayList nulist5 = new ArrayList(); ArrayList nulist6 = new ArrayList(); ArrayList nulist4 = new ArrayList(); Map brmap1 = new LinkedHashMap(); Map opinsert = new LinkedHashMap(); Map opcomment = new LinkedHashMap(); Map opmutate = new LinkedHashMap(); ArrayList comarr = new ArrayList(); ArrayList comarr2 = new ArrayList(); ArrayList comarr3 = new ArrayList(); ArrayList comarr4 = new ArrayList(); ArrayList mutwhere = new ArrayList(); ArrayList mutwhere2 = new ArrayList(); ArrayList mutwhere3 = new ArrayList(); ArrayList mutwhere4 = new ArrayList(); ArrayList mutwhere5 = new ArrayList(); ArrayList mutwhere6 = new ArrayList(); brmap1.put("op", "insert"); brmap1.put("table", "Bridge"); brmap1.put("row", opinsert); opinsert.put("external_ids", nulist); nulist.add("map"); nulist.add(nulist4); nulist4.add(nulist5); nulist4.add(nulist6); nulist5.add("brId"); nulist5.add("11111111-1111-1111-1111-111111111111"); nulist6.add("engine_test"); nulist6.add("eTest"); brmap1.put("uuid-name", "new_bridge"); opinsert.put("name", bridgeIdentifier); // Mutate operation opmutate.put("op", "mutate"); opmutate.put("table", "Open_vSwitch"); opmutate.put("where", mutwhere); opmutate.put("mutations", mutwhere2); mutwhere2.add(mutwhere3); mutwhere3.add("bridges"); mutwhere3.add("insert"); mutwhere3.add(mutwhere4); mutwhere4.add("set"); mutwhere4.add(mutwhere5); mutwhere5.add(mutwhere6); mutwhere6.add("named-uuid"); mutwhere6.add("new_bridge"); // Comment operation opcomment.put("op", "comment"); opcomment.put("comment", "ovs-vsctl add-br x"); */ /* * Add the 3 operations into the object * params along with the db_name OVS */ // Arrays for JSON Interfaces ArrayList intarr1 = new ArrayList(); ArrayList intarr2 = new ArrayList(); ArrayList intarr3 = new ArrayList(); ArrayList intarr4 = new ArrayList(); ArrayList intarr5 = new ArrayList(); ArrayList intarr6 = new ArrayList(); ArrayList intarr7 = new ArrayList(); // Arrays for Port ArrayList portarr1 = new ArrayList(); ArrayList portarr2 = new ArrayList(); ArrayList portarr3 = new ArrayList(); ArrayList portarr4 = new ArrayList(); ArrayList portarr5 = new ArrayList(); ArrayList portarr6 = new ArrayList(); // Arrays for Bridge ArrayList brarr1 = new ArrayList(); ArrayList brarr2 = new ArrayList(); ArrayList brarr3 = new ArrayList(); ArrayList brarr4 = new ArrayList(); ArrayList brarr5 = new ArrayList(); ArrayList brarr6 = new ArrayList(); // Maps for JSON Bridge Map brmap1 = new LinkedHashMap(); Map brmap2 = new LinkedHashMap(); // Maps for JSON Port Map portmap1 = new LinkedHashMap(); Map portmap2 = new LinkedHashMap(); // Maps for Update Map updtmap1 = new LinkedHashMap(); Map updtmap2 = new LinkedHashMap(); // Arrays for Update ArrayList updtarr1 = new ArrayList(); ArrayList updtarr2 = new ArrayList(); ArrayList updtarr3 = new ArrayList(); ArrayList updtarr4 = new ArrayList(); ArrayList updtarr5 = new ArrayList(); ArrayList updtarr6 = new ArrayList(); ArrayList updtarr7 = new ArrayList(); //Maps for Interface Insert Map insintmap1 = new LinkedHashMap(); Map insintmap2 = new LinkedHashMap(); Map insintmap3 = new LinkedHashMap(); Map insintmap4 = new LinkedHashMap(); //Arrays for Interface Insert ArrayList insintarr1 = new ArrayList(); ArrayList insintarr2 = new ArrayList(); ArrayList insintarr3 = new ArrayList(); ArrayList insintarr4 = new ArrayList(); ArrayList insintarr5 = new ArrayList(); ArrayList insintarr6 = new ArrayList(); // Maps for Port Update Map insportmap1 = new LinkedHashMap(); Map insportmap2 = new LinkedHashMap(); // Arrays for Port Update ArrayList insportarr1 = new ArrayList(); // Arrays for Mutation Op ArrayList mutearr1 = new ArrayList(); ArrayList mutearr2 = new ArrayList(); ArrayList mutearr3 = new ArrayList(); ArrayList mutearr4 = new ArrayList(); ArrayList mutearr5 = new ArrayList(); // Maps for Mutate Op Map mutemap1 = new LinkedHashMap(); // Arrays for Op Select OVS ArrayList opselarr1 = new ArrayList(); ArrayList opselarr2 = new ArrayList(); ArrayList opselarr3 = new ArrayList(); ArrayList opselarr4 = new ArrayList(); // Maps for Op Select OVS Map opselmap1 = new LinkedHashMap(); // HMaps for JSON Interface Map intmap1 = new LinkedHashMap(); Map intmap2 = new LinkedHashMap(); Map intmap3 = new LinkedHashMap(); Map intmap4 = new LinkedHashMap(); // Arrays for JSON Open_vSwitch Table ArrayList ovsarr1 = new ArrayList(); ArrayList ovsarr2 = new ArrayList(); ArrayList ovsarr3 = new ArrayList(); ArrayList ovsarr4 = new ArrayList(); // HMaps for JSON Open_vSwitch Table Map ovsmap1 = new LinkedHashMap(); Map ovsmap2 = new LinkedHashMap(); Map ovsmap3 = new LinkedHashMap(); Map ovsmap4 = new LinkedHashMap(); // Array for Comment ArrayList commarr5 = new ArrayList(); // Maps for Comment Map commmap1 = new LinkedHashMap(); //OVSDB Server Defined UUIDs String intuuid = "e7c6fc73-a4a1-4d7d-b6b7-eb2e0d2fa900"; String bridgetabluuid = "435de935-54e2-474d-aba6-cb85468fcc65"; String portabluuid = "5aa60514-8a65-4739-8ea9-46fb1906a7ed"; String ovstbluuid = "2cfdf9dd-e2a3-46b9-b09d-fbc68f23bc5d"; //OVS User Defined Port Name String ovsbridgename = "br1"; //Array for printing only ArrayList print = new ArrayList(); //Rows Bridge Set intmap1.put("rows", intarr1); intarr1.add(intmap2); intmap2.put("bridges", intarr2); intarr2.add("set"); intarr2.add(intarr3); intmap1.put("until", "=="); intmap1.put("table", "Open_vSwitch"); intmap1.put("op", "wait"); intmap1.put("timeout", 0); intmap1.put("where", intarr4); intarr4.add(intarr5); intarr5.add("_uuid"); intarr5.add("=="); intarr5.add(intarr6); intarr6.add("uuid"); intarr6.add(ovstbluuid); intmap1.put("columns", intarr7); intarr7.add("bridges"); //Table OVS update ovsmap1.put("table", "Open_vSwitch"); ovsmap1.put("where", ovsarr1); ovsarr1.add(ovsarr2); ovsarr2.add("_uuid"); ovsarr2.add("=="); ovsarr2.add(ovsarr3); ovsarr3.add("uuid"); ovsarr3.add(ovstbluuid); ovsmap1.put("op", "update"); ovsmap1.put("row", ovsmap3); ovsmap3.put("bridges", ovsarr4); ovsarr4.add("named-uuid"); ovsarr4.add("row64781566_ce8a_447a_a762_8835ebd42a9b"); //Table Interface Insert insintmap1.put("table","Interface"); insintmap1.put("uuid-name","rowe943d8f1_411c_4c3f_bad4_131ed80e4dfc"); insintmap1.put("op", "insert"); insintmap1.put("row", insintmap2); insintmap2.put("name", ovsbridgename); insintmap2.put("type", "internal"); //Bridge Table Inser brmap1.put("table","Bridge"); brmap1.put("uuid-name","row64781566_ce8a_447a_a762_8835ebd42a9b"); brmap1.put("op", "insert"); brmap1.put("row", brmap2); brmap2.put("name", ovsbridgename); brmap2.put("ports", brarr1); brarr1.add("named-uuid"); brarr1.add("row54bfd27e_8744_4f6a_a9e4_f982404de816"); //Port Table Inser portmap1.put("table","Port"); portmap1.put("uuid-name","row54bfd27e_8744_4f6a_a9e4_f982404de816"); portmap1.put("op", "insert"); portmap1.put("row", portmap2); portmap2.put("interfaces", portarr1); portarr1.add("named-uuid"); portarr1.add("rowe943d8f1_411c_4c3f_bad4_131ed80e4dfc"); portmap2.put("name", ovsbridgename); //Op Mutate Open_vSwtich table mutemap1.put("mutations", mutearr1); mutearr1.add(mutearr2); mutearr2.add("next_cfg"); mutearr2.add("+="); mutearr2.add(1); mutemap1.put("table", "Open_vSwitch"); mutemap1.put("op", "mutate"); mutemap1.put("where", mutearr3); mutearr3.add(mutearr4); mutearr4.add("_uuid"); mutearr4.add("=="); mutearr4.add(mutearr5); mutearr5.add("uuid"); mutearr5.add("2cfdf9dd-e2a3-46b9-b09d-fbc68f23bc5d"); //Op Select OVS opselmap1.put("table", "Open_vSwitch"); opselmap1.put("where", opselarr1); opselarr1.add(opselarr2); opselarr2.add("_uuid"); opselarr2.add("=="); opselarr2.add(opselarr3); opselarr3.add("uuid"); opselarr3.add("2cfdf9dd-e2a3-46b9-b09d-fbc68f23bc5d"); opselmap1.put("op", "select"); opselmap1.put("columns", opselarr4); opselarr4.add("next_cfg"); //Comment commmap1.put("comment", "ovs-vsctl: ovs-vsctl --db=tcp:172.16.58.170:6634 add-br " + ovsbridgename); commmap1.put("op", "comment"); Object[] params = { "Open_vSwitch", intmap1, ovsmap1, insintmap1, brmap1, portmap1, mutemap1, opselmap1, commmap1}; OvsdbMessage message = new OvsdbMessage("transact", params, "efg"); try { connection.sendMessage(message); connection.readResponse(String[].class); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } catch (Throwable e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } return true; } @Override public boolean deleteBridgeDomain(Node node, String bridgeIdentifier) { // TODO Auto-generated method stub return false; } @Override public List getBridgeDomains(Node node) { // TODO Auto-generated method stub return null; } @Override public boolean addBridgeDomainConfig(Node node, String bridgeIdentifier, Map config) { // TODO Auto-generated method stub return false; } @Override public boolean removeBridgeDomainConfig(Node node, String bridgeIdentifier, Map config) { // TODO Auto-generated method stub return false; } @Override public Map getBridgeDomainConfigs(Node node, String bridgeIdentifier) { // TODO Auto-generated method stub return null; } @Override public boolean createBridgeConnector(Node node, String bridgeConnectorIdentifier) { // TODO Auto-generated method stub return false; } @Override public boolean deleteBridgeConnector(Node node, String bridgeConnectorIdentifier) { // TODO Auto-generated method stub return false; } @Override public boolean associateBridgeConnector(Node node, String bridgeIdentifier, String bridgeConnectorIdentifier) { if (connectionService == null) { logger.error("Couldnt refer to the ConnectionService"); return false; } Connection connection = connectionService.getConnection(node); //OVSDB Server Defined UUIDs String intuuid = "e8f6eeaa-c5f9-47dd-90ff-e729077bccef"; String bridgetabluuid = "d80726a3-3a66-45dc-9f80-05a54499ced8"; String portabluuid = "e4eeec4e-a087-4fba-b780-6bc10d187140"; String ovstbluuid = "2cfdf9dd-e2a3-46b9-b09d-fbc68f23bc5d"; //OVS User Defined Port Name String ovsportname = "vnic0"; //Array for printing only ArrayList printout = new ArrayList(); //Arrays for JSON obj ArrayList intarr0 = new ArrayList(); ArrayList intarr1 = new ArrayList(); ArrayList intarr2 = new ArrayList(); ArrayList intarr3 = new ArrayList(); ArrayList intarr4 = new ArrayList(); ArrayList intarr5 = new ArrayList(); ArrayList intarr6 = new ArrayList(); ArrayList intarr7 = new ArrayList(); ArrayList intarr8 = new ArrayList(); ArrayList intarr9 = new ArrayList(); ArrayList intarr10 = new ArrayList(); ArrayList intarr11 = new ArrayList(); ArrayList intarr12 = new ArrayList(); ArrayList intarr13 = new ArrayList(); ArrayList intarr14 = new ArrayList(); //Arrays for Port ArrayList portarr6 = new ArrayList(); ArrayList portarr7 = new ArrayList(); ArrayList portarr8 = new ArrayList(); ArrayList portarr9 = new ArrayList(); ArrayList portarr10 = new ArrayList(); ArrayList portarr11 = new ArrayList(); //Arrays for Bridge ArrayList brarr6 = new ArrayList(); ArrayList brarr7 = new ArrayList(); ArrayList brarr8 = new ArrayList(); ArrayList brarr9 = new ArrayList(); ArrayList brarr10 = new ArrayList(); ArrayList brarr11 = new ArrayList(); //Maps for JSON Port Map intmap0 = new LinkedHashMap(); Map intmap1 = new LinkedHashMap(); Map intmap2 = new LinkedHashMap(); Map intmap3 = new LinkedHashMap(); Map intmap4 = new LinkedHashMap(); Map intmap5 = new LinkedHashMap(); Map intmap6 = new LinkedHashMap(); Map intmap7 = new LinkedHashMap(); Map intmap8 = new LinkedHashMap(); //Maps for JSON Bridge Map brmap2 = new LinkedHashMap(); Map brmap3 = new LinkedHashMap(); //Maps for JSON Port Map portmap2 = new LinkedHashMap(); Map portmap3 = new LinkedHashMap(); //Maps for Update Map updtmap1 = new LinkedHashMap(); Map updtmap2 = new LinkedHashMap(); //Arrays for Update ArrayList updtarr1 = new ArrayList(); ArrayList updtarr2 = new ArrayList(); ArrayList updtarr3 = new ArrayList(); ArrayList updtarr4 = new ArrayList(); ArrayList updtarr5 = new ArrayList(); ArrayList updtarr6 = new ArrayList(); ArrayList updtarr7 = new ArrayList(); //Maps for Port Update Map insportmap1 = new LinkedHashMap(); Map insportmap2 = new LinkedHashMap(); Map insportmap3 = new LinkedHashMap(); Map insportmap4 = new LinkedHashMap(); //Arrays for Port Update ArrayList insportarr1 = new ArrayList(); ArrayList insportarr2 = new ArrayList(); ArrayList insportarr3 = new ArrayList(); ArrayList insportarr4 = new ArrayList(); ArrayList insportarr5 = new ArrayList(); ArrayList insportarr6 = new ArrayList(); //Maps for Interface Update Map insintmap1 = new LinkedHashMap(); Map insintmap2 = new LinkedHashMap(); Map insintmap3 = new LinkedHashMap(); Map insintmap4 = new LinkedHashMap(); //Arrays for Interface Update ArrayList insintarr1 = new ArrayList(); ArrayList insintarr2 = new ArrayList(); ArrayList insintarr3 = new ArrayList(); ArrayList insintarr4 = new ArrayList(); ArrayList insintarr5 = new ArrayList(); ArrayList insintarr6 = new ArrayList(); //Arrays for Mutation Op ArrayList mutearr1 = new ArrayList(); ArrayList mutearr2 = new ArrayList(); ArrayList mutearr3 = new ArrayList(); ArrayList mutearr4 = new ArrayList(); ArrayList mutearr5 = new ArrayList(); ArrayList mutearr6 = new ArrayList(); //Maps for Mutate Op Map mutemap1 = new LinkedHashMap(); Map mutemap2 = new LinkedHashMap(); Map mutemap3 = new LinkedHashMap(); Map mutemap4 = new LinkedHashMap(); //Arrays for Op Select OVS ArrayList opselarr1 = new ArrayList(); ArrayList opselarr2 = new ArrayList(); ArrayList opselarr3 = new ArrayList(); ArrayList opselarr4 = new ArrayList(); ArrayList opselarr5 = new ArrayList(); //Maps for Op Select OVS Map opselmap1 = new LinkedHashMap(); //Array for Comment ArrayList commarr5 = new ArrayList(); //Maps for Comment Map commmap1 = new LinkedHashMap(); //Interface intmap0.put("rows", intarr0); intarr0.add(intmap1); intmap1.put("interfaces", intarr1); intarr1.add("uuid"); intarr1.add(intuuid); intmap0.put("until", "=="); intmap0.put("table", "Port"); intmap0.put("op", "wait"); intmap0.put("timeout", 0); intmap0.put("where", intarr2); intarr2.add(intarr3); intarr3.add("_uuid"); intarr3.add("=="); intarr3.add(intarr4); intarr4.add("uuid"); intarr4.add(portabluuid); intmap0.put("columns", intarr5); intarr5.add("interfaces"); //Bridge brmap2.put("rows", brarr6); brarr6.add(brmap3); brarr7.add("uuid"); brarr7.add(bridgetabluuid); brmap3.put("bridges", brarr7); brmap2.put("until", "=="); brmap2.put("table", "Open_vSwitch"); brmap2.put("op", "wait"); brmap2.put("timeout", 0); brmap2.put("where", brarr8); brarr8.add(brarr9); brarr9.add("_uuid"); brarr9.add("=="); brarr9.add(brarr10); brarr10.add("uuid"); brarr10.add(ovstbluuid); brmap2.put("columns", brarr11); brarr11.add("bridges"); //Ports portmap2.put("rows", portarr6); portarr6.add(portmap3); portarr7.add("uuid"); portarr7.add(portabluuid); portmap3.put("ports", portarr7); portmap2.put("until", "=="); portmap2.put("table", "Bridge"); portmap2.put("op", "wait"); portmap2.put("timeout", 0); portmap2.put("where", portarr8); portarr8.add(portarr9); portarr9.add("_uuid"); portarr9.add("=="); portarr9.add(portarr10); portarr10.add("uuid"); portarr10.add(bridgetabluuid); portmap2.put("columns", portarr11); portarr11.add("ports"); //Update updtmap1.put("where", updtarr1); updtarr1.add(updtarr2); updtarr2.add("_uuid"); updtarr2.add("=="); updtarr2.add(updtarr3); updtarr3.add("uuid"); updtarr3.add(bridgetabluuid); updtmap1.put("op", "update"); updtmap1.put("table", "Bridge"); updtmap1.put("row", updtmap2); updtmap2.put("ports", updtarr4); updtarr4.add("set"); updtarr4.add(updtarr5); updtarr5.add(updtarr6); updtarr6.add("uuid"); updtarr6.add(portabluuid); updtarr5.add(updtarr7); updtarr7.add("named-uuid"); updtarr7.add("rowc1ee45e7_e736_4cd2_8e30_55a460d0f11a"); //Insert Port insportmap1.put("uuid-name", "rowc1ee45e7_e736_4cd2_8e30_55a460d0f11a"); insportmap1.put("op", "insert"); insportmap1.put("table", "Port"); insportmap1.put("row", insportmap2); insportmap2.put("interfaces", insportarr1); insportarr1.add("named-uuid"); insportarr1.add("row50c0ab47_0077_4ac3_8d84_8b1906a39947"); insportmap2.put("name", ovsportname); //Insert Interface insintmap1.put("uuid-name", "row50c0ab47_0077_4ac3_8d84_8b1906a39947"); insintmap1.put("op", "insert"); insintmap1.put("table", "Interface"); insintmap1.put("row", insintmap2); insintmap2.put("name", ovsportname); //Mutation Op mutemap1.put("mutations", mutearr1); mutearr1.add(mutearr2); mutearr2.add("next_cfg"); mutearr2.add("+="); mutearr2.add(1); mutemap1.put("table", "Open_vSwitch"); mutemap1.put("op", "mutate"); mutemap1.put("where", mutearr3); mutearr3.add(mutearr4); mutearr4.add("_uuid"); mutearr4.add("=="); mutearr4.add(mutearr5); mutearr5.add("uuid"); mutearr5.add(ovstbluuid); opselmap1.put("where", opselarr1); opselarr1.add(opselarr2); opselarr2.add("_uuid"); opselarr2.add("=="); opselarr2.add(opselarr3); opselarr3.add("uuid"); opselarr3.add(ovstbluuid); opselmap1.put("op", "select"); opselmap1.put("table", "Open_vSwitch"); opselmap1.put("columns", opselarr4); opselarr4.add("next_cfg"); //Comment commmap1.put("comment", "ovs-vsctl: ovs-vsctl -vjsonrpc --db=tcp:172.16.58.170:6634 add-port br0 vnic0"); commmap1.put("op", "comment"); Object[] params = { "Open_vSwitch", intmap0, brmap2, portmap2, updtmap1, insportmap1, insintmap1, mutemap1, opselmap1, commmap1}; OvsdbMessage message = new OvsdbMessage("transact", params, "efg"); try { connection.sendMessage(message); connection.readResponse(String[].class); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } catch (Throwable e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } return true; } @Override public boolean disassociateBridgeConnector(Node node, String bridgeIdentifier, String bridgeConnectorIdentifier) { // TODO Auto-generated method stub return false; } @Override public boolean addBridgeConnectorConfig(Node node, String bridgeConnectorIdentifier, Map config) { // TODO Auto-generated method stub return false; } @Override public boolean removeBridgeConnectorConfig(Node node, String bridgeConnectorIdentifier, Map config) { // TODO Auto-generated method stub return false; } @Override public Map getBridgeConnectorConfigs(Node node, String bridgeConnectorIdentifier) { // TODO Auto-generated method stub return null; } @Override public Object genericConfigurationEvent(Node node, Map config) { // TODO Auto-generated method stub return null; } } ==============================OvsdbTestAddBridge Junit========================================= package org.opendaylight.controller.protocol_plugin.ovsdb; import java.io.IOException; import java.util.HashMap; import java.util.Map; import org.junit.Test; import org.opendaylight.controller.protocol_plugin.ovsdb.internal.ConfigurationService; import org.opendaylight.controller.protocol_plugin.ovsdb.internal.ConnectionService; import org.opendaylight.controller.sal.connection.ConnectionConstants; import org.opendaylight.controller.sal.core.Node; import org.opendaylight.controller.sal.core.NodeConnector; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class OvsdbTestAddBridge { private static final Logger logger = LoggerFactory .getLogger(OvsdbTestAddBridge.class); //@Test public void addBridgeDomain() throws IOException, Throwable { Node.NodeIDType.registerIDType("OVS", String.class); NodeConnector.NodeConnectorIDType.registerIDType("OVS", String.class, "OVS"); ConnectionService connectionService = new ConnectionService(); connectionService.init(); String identifier = "TEST"; Map params = new HashMap(); params.put(ConnectionConstants.ADDRESS, "172.16.58.170"); Node node = connectionService.connect(identifier, params); if (node == null) { logger.error("Could not connect to ovsdb server"); return; } ConfigurationService configurationService = new ConfigurationService(); configurationService.setConnectionServiceInternal(connectionService); configurationService.createBridgeDomain(node, "JUNIT_BRIDGE_TEST"); } @Test public void addPort() throws IOException, Throwable { Node.NodeIDType.registerIDType("OVS", String.class); NodeConnector.NodeConnectorIDType.registerIDType("OVS", String.class, "OVS"); ConnectionService connectionService = new ConnectionService(); connectionService.init(); String identifier = "TEST"; Map params = new HashMap(); params.put(ConnectionConstants.ADDRESS, "172.16.58.170"); Node node = connectionService.connect(identifier, params); if (node == null) { logger.error("Could not connect to ovsdb server"); return; } ConfigurationService configurationService = new ConfigurationService(); configurationService.setConnectionServiceInternal(connectionService); configurationService.associateBridgeConnector(node, "JUNIT_BRIDGE_TEST", "vnic0"); } }