From: Madhu Venugopal Date: Fri, 18 Apr 2014 14:47:36 +0000 (-0700) Subject: Code ReOrganization and Re-Architecture changes X-Git-Tag: release/helium~170^2~103 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=bc3cbc2dc194aa1da4bc5f4430ffdc16742076f9;p=ovsdb.git Code ReOrganization and Re-Architecture changes 1. Split OVSDB library from plugin 2. Removed all Opendaylight dependencies from OVSDB library 3. Modified the library to take in context vars to retain consistency with the current design. 4. Changed the artifact-id of all the bundles from random conventions to a consistent convention "ovsdb_*" 5. Also changed the directory structure to fit in the reorg/rearch. Change-Id: Iea0bc8b24c398f0de861a64ddceafe49593aefdb Signed-off-by: Madhu Venugopal --- diff --git a/commons/parent/pom.xml b/commons/parent/pom.xml index 0c7b73546..a752b6e7e 100755 --- a/commons/parent/pom.xml +++ b/commons/parent/pom.xml @@ -1,30 +1,23 @@ 4.0.0 - - 3.0 - org.opendaylight.controller commons.opendaylight 1.4.2-SNAPSHOT org.opendaylight.ovsdb - commons.ovsdb + ovsdb_commons 1.1.0-SNAPSHOT pom - https://wiki.opendaylight.org/view/OVSDB_Integration:Main - - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - https://wiki.opendaylight.org/view/OVSDB_Integration:Main - HEAD - + + 3.0 + - http://nexus.opendaylight.org/content - UTF-8 1.7 1.7 + http://nexus.opendaylight.org/content + UTF-8 @@ -43,16 +36,23 @@ + https://wiki.opendaylight.org/view/OVSDB_Integration:Main + + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + HEAD + https://wiki.opendaylight.org/view/OVSDB_Integration:Main + - opendaylight-public - opendaylight-public - ${nexusproxy}/groups/public/ false + opendaylight-public + opendaylight-public + ${nexusproxy}/groups/public/ @@ -70,12 +70,12 @@ - opendaylight-public - opendaylight-public - http://nexus.opendaylight.org/content/groups/public/ false + opendaylight-public + opendaylight-public + http://nexus.opendaylight.org/content/groups/public/ opendaylight-release diff --git a/distribution/opendaylight/pom.xml b/distribution/opendaylight/pom.xml index a2f226aa2..da9a9a48a 100755 --- a/distribution/opendaylight/pom.xml +++ b/distribution/opendaylight/pom.xml @@ -1,3 +1,4 @@ + - provided - org.opendaylight.ovsdb - ovsdb + ovsdb_library 1.0.0-SNAPSHOT org.opendaylight.ovsdb - ovsdb.northbound + ovsdb_neutron 0.6.0-SNAPSHOT org.opendaylight.ovsdb - ovsdb.neutron + ovsdb_northbound 0.6.0-SNAPSHOT + + org.opendaylight.ovsdb + ovsdb_plugin + 1.0.0-SNAPSHOT + + + org.opendaylight.controller + distribution.opendaylight + 0.1.2-SNAPSHOT + osgipackage + zip + + provided + @@ -53,49 +52,56 @@ see https://git.opendaylight.org/gerrit/#/c/390/ ${basedir}/src/main/resources - ${project.build.directory}/generated-resources true + ${project.build.directory}/generated-resources - org.apache.maven.plugins - maven-dependency-plugin - 2.8 + maven-assembly-plugin - unpack-shared-resources + distro-assembly - unpack-dependencies + single - generate-resources + package - ${project.build.directory}/generated-resources - distribution.opendaylight - org.opendaylight.controller - true - false + + src/assemble/bin.xml + - maven-assembly-plugin + org.apache.maven.plugins + maven-dependency-plugin + 2.8 - distro-assembly - package + unpack-shared-resources - single + unpack-dependencies + generate-resources - - src/assemble/bin.xml - + ${project.build.directory}/generated-resources + distribution.opendaylight + org.opendaylight.controller + true + false + + + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + HEAD + https://wiki.opendaylight.org/view/OVSDB_Integration:Main + diff --git a/library/pom.xml b/library/pom.xml new file mode 100755 index 000000000..b281bf32a --- /dev/null +++ b/library/pom.xml @@ -0,0 +1,173 @@ + + + 4.0.0 + + org.opendaylight.ovsdb + ovsdb_commons + 1.1.0-SNAPSHOT + ../commons/parent + + ovsdb_library + 1.0.0-SNAPSHOT + bundle + + + + 192.168.56.10 + 6640 + true + + + + ch.qos.logback + logback-classic + + + ch.qos.logback + logback-core + + + com.fasterxml.jackson.core + jackson-annotations + ${jackson.version} + + + com.fasterxml.jackson.core + jackson-core + ${jackson.version} + + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + + + com.google.code.gson + gson + 2.1 + compile + + + com.google.guava + guava + ${guava.version} + + + commons-codec + commons-codec + 1.4 + true + + + commons-collections + commons-collections + 1.0 + + + commons-lang + commons-lang + 2.3 + + + equinoxSDK381 + org.eclipse.osgi + + + io.netty + netty-all + 4.0.10.Final + + + javax.portlet + portlet-api + 2.0 + + + junit + junit + + + org.apache.httpcomponents + httpcore-nio + 4.2.1 + true + + + org.slf4j + slf4j-api + + + + + + + true + src/test/resources + + + + + org.apache.felix + maven-bundle-plugin + 2.3.6 + true + + + org.apache.commons.lang3.builder, + org.apache.commons.lang3.tuple, + org.apache.felix.dm, + org.slf4j, + org.eclipse.osgi.framework.console, + org.osgi.framework, + javax.net.ssl, + * + true + org.opendaylight.ovsdb.lib, + org.opendaylight.ovsdb.lib.table, + org.opendaylight.ovsdb.lib.jsonrpc, + org.opendaylight.ovsdb.lib.notation, + org.opendaylight.ovsdb.lib.database, + org.opendaylight.ovsdb.lib.operations, + org.opendaylight.ovsdb.lib.message, + org.opendaylight.ovsdb.lib.schema + + ${project.basedir}/META-INF + + + + org.apache.maven.plugins + maven-failsafe-plugin + + ${skip.integrationtest} + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.16 + + + + **/*IT + + + + + + + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + HEAD + https://wiki.opendaylight.org/view/OVSDB_Integration:Main + + + + + integrationtest + + + false + + + + diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/EchoServiceCallbackFilters.java b/library/src/main/java/org/opendaylight/ovsdb/lib/EchoServiceCallbackFilters.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/EchoServiceCallbackFilters.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/EchoServiceCallbackFilters.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/LockAquisitionCallback.java b/library/src/main/java/org/opendaylight/ovsdb/lib/LockAquisitionCallback.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/LockAquisitionCallback.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/LockAquisitionCallback.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/LockStolenCallback.java b/library/src/main/java/org/opendaylight/ovsdb/lib/LockStolenCallback.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/LockStolenCallback.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/LockStolenCallback.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/MonitorCallBack.java b/library/src/main/java/org/opendaylight/ovsdb/lib/MonitorCallBack.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/MonitorCallBack.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/MonitorCallBack.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/MonitorHandle.java b/library/src/main/java/org/opendaylight/ovsdb/lib/MonitorHandle.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/MonitorHandle.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/MonitorHandle.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/OvsDBClient.java b/library/src/main/java/org/opendaylight/ovsdb/lib/OvsDBClient.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/OvsDBClient.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/OvsDBClient.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/OvsDBClientImpl.java b/library/src/main/java/org/opendaylight/ovsdb/lib/OvsDBClientImpl.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/OvsDBClientImpl.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/OvsDBClientImpl.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/Column.java b/library/src/main/java/org/opendaylight/ovsdb/lib/database/Column.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/Column.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/database/Column.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/ColumnSchema.java b/library/src/main/java/org/opendaylight/ovsdb/lib/database/ColumnSchema.java similarity index 95% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/ColumnSchema.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/database/ColumnSchema.java index 19e1cc5e6..64c3503b7 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/ColumnSchema.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/database/ColumnSchema.java @@ -1,54 +1,54 @@ -/* - * [[ Authors will Fill in the Copyright header ]] - * - * 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 - * - * Authors : Brent Salisbury, Evan Zeller - */ -package org.opendaylight.ovsdb.lib.database; - -import com.fasterxml.jackson.annotation.JsonProperty; - -public class ColumnSchema { - - String name; - - @JsonProperty("type") - private OvsdbType type; - - @JsonProperty("ephemeral") - private Boolean ephemeral; - - @JsonProperty("mutable") - private Boolean mutable; - - public OvsdbType getType() { - return type; - } - - public Boolean getEphemeral() { - return ephemeral; - } - - public Boolean getMutable() { - return mutable; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - - @Override - public String toString() { - return "ColumnType [type=" + type + ", ephemeral=" + ephemeral - + ", mutable=" + mutable + "]"; - } - -} +/* + * [[ Authors will Fill in the Copyright header ]] + * + * 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 + * + * Authors : Brent Salisbury, Evan Zeller + */ +package org.opendaylight.ovsdb.lib.database; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class ColumnSchema { + + String name; + + @JsonProperty("type") + private OvsdbType type; + + @JsonProperty("ephemeral") + private Boolean ephemeral; + + @JsonProperty("mutable") + private Boolean mutable; + + public OvsdbType getType() { + return type; + } + + public Boolean getEphemeral() { + return ephemeral; + } + + public Boolean getMutable() { + return mutable; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + + @Override + public String toString() { + return "ColumnType [type=" + type + ", ephemeral=" + ephemeral + + ", mutable=" + mutable + "]"; + } + +} diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/DatabaseSchema.java b/library/src/main/java/org/opendaylight/ovsdb/lib/database/DatabaseSchema.java similarity index 95% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/DatabaseSchema.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/database/DatabaseSchema.java index ce2620ea0..b456fc381 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/DatabaseSchema.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/database/DatabaseSchema.java @@ -1,54 +1,54 @@ -/* - * [[ Authors will Fill in the Copyright header ]] - * - * 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 - * - * Authors : Brent Salisbury, Evan Zeller - */ -package org.opendaylight.ovsdb.lib.database; - -import java.util.Map; - -import com.fasterxml.jackson.annotation.JsonProperty; - -public class DatabaseSchema { - @JsonProperty("name") - private String name; - - @JsonProperty("version") - private String version; - - @JsonProperty("cksum") - private String cksum; - - @JsonProperty("tables") - private Map tables; - - public String getName() { - return name; - } - - public String getVersion() { - return version; - } - - public String getCksum() { - return cksum; - } - - public Map getTables() { - return tables; - } - - public TableSchema getTable(String tableName) { - return tables.get(tableName); - } - - @Override - public String toString() { - return "DatabaseSchema [name=" + name + ", version=" + version - + ", cksum=" + cksum + ", tables=" + tables + "]"; - } -} +/* + * [[ Authors will Fill in the Copyright header ]] + * + * 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 + * + * Authors : Brent Salisbury, Evan Zeller + */ +package org.opendaylight.ovsdb.lib.database; + +import java.util.Map; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class DatabaseSchema { + @JsonProperty("name") + private String name; + + @JsonProperty("version") + private String version; + + @JsonProperty("cksum") + private String cksum; + + @JsonProperty("tables") + private Map tables; + + public String getName() { + return name; + } + + public String getVersion() { + return version; + } + + public String getCksum() { + return cksum; + } + + public Map getTables() { + return tables; + } + + public TableSchema getTable(String tableName) { + return tables.get(tableName); + } + + @Override + public String toString() { + return "DatabaseSchema [name=" + name + ", version=" + version + + ", cksum=" + cksum + ", tables=" + tables + "]"; + } +} diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/OVSBridge.java b/library/src/main/java/org/opendaylight/ovsdb/lib/database/OVSBridge.java similarity index 86% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/OVSBridge.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/database/OVSBridge.java index 2c404c280..e3f8003da 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/OVSBridge.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/database/OVSBridge.java @@ -7,67 +7,62 @@ * * Authors : Brent Salisbury, Evan Zeller */ -package org.opendaylight.ovsdb.lib.database; - - +package org.opendaylight.ovsdb.lib.database; + + import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; -import org.opendaylight.ovsdb.plugin.Connection; -import org.opendaylight.ovsdb.plugin.OvsdbMessage; - -public class OVSBridge { - - private String uuid; - private String name; - - public OVSBridge(String uuid, String name){ - this.uuid = uuid; - this.name = name; - } - - public String getUuid(){ - return this.uuid; - } - - public String getName(){ - return this.name; - } - - @SuppressWarnings("unchecked") - public static Map monitorBridge(Connection connection){ - List columns = new ArrayList(); - columns.add("_uuid"); - columns.add("name"); - - Map> row = new HashMap>(); - row.put("columns", columns); - - Map tables = new HashMap(); - tables.put("Bridge", row); - - Object[] params = {"Open_vSwitch", null, tables}; - - OvsdbMessage msg = new OvsdbMessage("monitor", params); - Map monitorResponse = new HashMap(); - - Map bridgeTable = (Map) monitorResponse.get("Bridge"); - - Object[] uuidObjects = bridgeTable.keySet().toArray(); - String[] uuids = Arrays.copyOf(uuidObjects, uuidObjects.length, String[].class); - - Map result = new HashMap(); - - for(String uuid : uuids){ - Map newRow = (Map) bridgeTable.get(uuid); - Map newColumns = (Map) newRow.get("new"); - String name = (String) newColumns.get("name"); - result.put(name, new OVSBridge(uuid, name)); - } - - return result; - } -} +public class OVSBridge { + + private String uuid; + private String name; + + public OVSBridge(String uuid, String name){ + this.uuid = uuid; + this.name = name; + } + + public String getUuid(){ + return this.uuid; + } + + public String getName(){ + return this.name; + } + + @SuppressWarnings("unchecked") + public static Map monitorBridge(){ + List columns = new ArrayList(); + columns.add("_uuid"); + columns.add("name"); + + Map> row = new HashMap>(); + row.put("columns", columns); + + Map tables = new HashMap(); + tables.put("Bridge", row); + + Object[] params = {"Open_vSwitch", null, tables}; + + Map monitorResponse = new HashMap(); + Map bridgeTable = (Map) monitorResponse.get("Bridge"); + + Object[] uuidObjects = bridgeTable.keySet().toArray(); + String[] uuids = Arrays.copyOf(uuidObjects, uuidObjects.length, String[].class); + + Map result = new HashMap(); + + for(String uuid : uuids){ + Map newRow = (Map) bridgeTable.get(uuid); + Map newColumns = (Map) newRow.get("new"); + String name = (String) newColumns.get("name"); + result.put(name, new OVSBridge(uuid, name)); + } + + return result; + } +} diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/OVSInstance.java b/library/src/main/java/org/opendaylight/ovsdb/lib/database/OVSInstance.java similarity index 84% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/OVSInstance.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/database/OVSInstance.java index f5fd7244b..5fa6cb650 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/OVSInstance.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/database/OVSInstance.java @@ -7,55 +7,50 @@ * * Authors : Brent Salisbury, Evan Zeller */ -package org.opendaylight.ovsdb.lib.database; - - -import org.opendaylight.ovsdb.plugin.Connection; -import org.opendaylight.ovsdb.plugin.OvsdbMessage; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -public class OVSInstance { - private String uuid; - - public OVSInstance(){ - this.uuid = null; - } - - public OVSInstance(String uuid){ - this.uuid = uuid; - } - - @SuppressWarnings("unchecked") - public static OVSInstance monitorOVS(Connection connection){ - List columns = new ArrayList(); - columns.add("_uuid"); - columns.add("bridges"); - - Map> row = new HashMap>(); - row.put("columns", columns); - - Map tables = new HashMap(); - tables.put("Open_vSwitch", row); - - Object[] params = {"Open_vSwitch", null, tables}; - - OvsdbMessage msg = new OvsdbMessage("monitor", params); - Map monitorResponse = new HashMap(); - - Map vSwitchTable = (Map) monitorResponse.get("Open_vSwitch"); - if(vSwitchTable != null){ - String uuid = (String) vSwitchTable.keySet().toArray()[0]; - return new OVSInstance(uuid); - } - return null; - } - - public String getUuid(){ - return this.uuid; - } - -} +package org.opendaylight.ovsdb.lib.database; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class OVSInstance { + private String uuid; + + public OVSInstance(){ + this.uuid = null; + } + + public OVSInstance(String uuid){ + this.uuid = uuid; + } + + @SuppressWarnings("unchecked") + public static OVSInstance monitorOVS(){ + List columns = new ArrayList(); + columns.add("_uuid"); + columns.add("bridges"); + + Map> row = new HashMap>(); + row.put("columns", columns); + + Map tables = new HashMap(); + tables.put("Open_vSwitch", row); + + Object[] params = {"Open_vSwitch", null, tables}; + + Map monitorResponse = new HashMap(); + + Map vSwitchTable = (Map) monitorResponse.get("Open_vSwitch"); + if(vSwitchTable != null){ + String uuid = (String) vSwitchTable.keySet().toArray()[0]; + return new OVSInstance(uuid); + } + return null; + } + + public String getUuid(){ + return this.uuid; + } + +} diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/OvsdbType.java b/library/src/main/java/org/opendaylight/ovsdb/lib/database/OvsdbType.java similarity index 97% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/OvsdbType.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/database/OvsdbType.java index f7b3ee85d..9685ebbe3 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/OvsdbType.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/database/OvsdbType.java @@ -7,94 +7,94 @@ * * Authors : Brent Salisbury, Evan Zeller */ -package org.opendaylight.ovsdb.lib.database; - +package org.opendaylight.ovsdb.lib.database; + import com.fasterxml.jackson.annotation.JsonProperty; - - -public class OvsdbType { - public enum PortType { - VLAN("vlan"), - TUNNEL("Tunnel"), - BONDING("Bonding"), - PATCH("patch"), - INTERNAL("internal"); - - private PortType(String name) { - this.name = name; - } - - private String name; - + + +public class OvsdbType { + public enum PortType { + VLAN("vlan"), + TUNNEL("Tunnel"), + BONDING("Bonding"), + PATCH("patch"), + INTERNAL("internal"); + + private PortType(String name) { + this.name = name; + } + + private String name; + @Override - public String toString() { - return name; - } - } - public OvsdbType(String type){ - this.key = new BaseType(type); - } - - public OvsdbType(@JsonProperty("key") BaseType key, @JsonProperty("value") BaseType value, - @JsonProperty("min") Integer min, @JsonProperty("max") Object max){ - this.key = key; - this.value = value; - this.min = min; - this.max = max; - } - - public BaseType key; - public BaseType value; - public Integer min; - public Object max; - - public static class BaseType{ - - public BaseType(String type){ - this.type = type; - } - - public BaseType(@JsonProperty("type") String type, @JsonProperty("enum") Object ovsdbEnum, - @JsonProperty("minInteger") Integer minInteger, @JsonProperty("maxInteger") Integer maxInteger, - @JsonProperty("minReal") Double minReal, @JsonProperty("maxReal") Double maxReal, - @JsonProperty("minLength") Integer minLength, @JsonProperty("maxLength") Integer maxLength, - @JsonProperty("refTable") String refTable, @JsonProperty("refType") String refType){ - this.type = type; - this.ovsdbEnum = ovsdbEnum; - this.minInteger = minInteger; - this.maxInteger = maxInteger; - this.minReal = minReal; - this.maxReal = maxReal; - this.minLength = minLength; - this.maxLength = maxLength; - this.refTable = refTable; - this.refType = refType; - } - - public String type; - public Object ovsdbEnum; - public Integer minInteger; - public Integer maxInteger; - public Double minReal; - public Double maxReal; - public Integer minLength; - public Integer maxLength; - public String refTable; - public String refType; - @Override - public String toString() { - return "BaseType [type=" + type + ", ovsdbEnum=" - + ovsdbEnum + ", minInteger=" + minInteger - + ", maxInteger=" + maxInteger + ", minReal=" + minReal - + ", maxReal=" + maxReal + ", minLength=" + minLength - + ", maxLength=" + maxLength + ", refTable=" + refTable - + ", refType=" + refType + "]"; - } - } - - @Override - public String toString() { - return "OvsdbType [key=" + key + ", value=" + value + ", min=" + min - + ", max=" + max + "]"; - } -} + public String toString() { + return name; + } + } + public OvsdbType(String type){ + this.key = new BaseType(type); + } + + public OvsdbType(@JsonProperty("key") BaseType key, @JsonProperty("value") BaseType value, + @JsonProperty("min") Integer min, @JsonProperty("max") Object max){ + this.key = key; + this.value = value; + this.min = min; + this.max = max; + } + + public BaseType key; + public BaseType value; + public Integer min; + public Object max; + + public static class BaseType{ + + public BaseType(String type){ + this.type = type; + } + + public BaseType(@JsonProperty("type") String type, @JsonProperty("enum") Object ovsdbEnum, + @JsonProperty("minInteger") Integer minInteger, @JsonProperty("maxInteger") Integer maxInteger, + @JsonProperty("minReal") Double minReal, @JsonProperty("maxReal") Double maxReal, + @JsonProperty("minLength") Integer minLength, @JsonProperty("maxLength") Integer maxLength, + @JsonProperty("refTable") String refTable, @JsonProperty("refType") String refType){ + this.type = type; + this.ovsdbEnum = ovsdbEnum; + this.minInteger = minInteger; + this.maxInteger = maxInteger; + this.minReal = minReal; + this.maxReal = maxReal; + this.minLength = minLength; + this.maxLength = maxLength; + this.refTable = refTable; + this.refType = refType; + } + + public String type; + public Object ovsdbEnum; + public Integer minInteger; + public Integer maxInteger; + public Double minReal; + public Double maxReal; + public Integer minLength; + public Integer maxLength; + public String refTable; + public String refType; + @Override + public String toString() { + return "BaseType [type=" + type + ", ovsdbEnum=" + + ovsdbEnum + ", minInteger=" + minInteger + + ", maxInteger=" + maxInteger + ", minReal=" + minReal + + ", maxReal=" + maxReal + ", minLength=" + minLength + + ", maxLength=" + maxLength + ", refTable=" + refTable + + ", refType=" + refType + "]"; + } + } + + @Override + public String toString() { + return "OvsdbType [key=" + key + ", value=" + value + ", min=" + min + + ", max=" + max + "]"; + } +} diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/Table.java b/library/src/main/java/org/opendaylight/ovsdb/lib/database/Table.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/Table.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/database/Table.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/TableSchema.java b/library/src/main/java/org/opendaylight/ovsdb/lib/database/TableSchema.java similarity index 95% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/TableSchema.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/database/TableSchema.java index cc6a735be..a0632ef3e 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/TableSchema.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/database/TableSchema.java @@ -1,55 +1,55 @@ -/* - * [[ Authors will Fill in the Copyright header ]] - * - * 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 - * - * Authors : Brent Salisbury, Evan Zeller - */ -package org.opendaylight.ovsdb.lib.database; - -import java.util.Map; - -import com.fasterxml.jackson.annotation.JsonProperty; - -public class TableSchema { - - @JsonProperty("columns") - private Map columns; - - @JsonProperty("maxRows") - private Integer maxRows; - - @JsonProperty("isRoot") - private Boolean isRoot; - - @JsonProperty("indexes") - private Object indexes; - - public Map getColumns() { - return this.columns; - } - - public ColumnSchema getColumn(String columnName) { - return this.columns.get(columnName); - } - - public Integer getMaxRows() { - return maxRows; - } - - public Boolean getIsRoot() { - return isRoot; - } - - public Object getIndexes() { - return indexes; - } - - @Override - public String toString() { - return "TableSchema [columns=" + columns + ", maxRows=" + maxRows - + ", isRoot=" + isRoot + ", indexes=" + indexes + "]"; - } -} +/* + * [[ Authors will Fill in the Copyright header ]] + * + * 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 + * + * Authors : Brent Salisbury, Evan Zeller + */ +package org.opendaylight.ovsdb.lib.database; + +import java.util.Map; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class TableSchema { + + @JsonProperty("columns") + private Map columns; + + @JsonProperty("maxRows") + private Integer maxRows; + + @JsonProperty("isRoot") + private Boolean isRoot; + + @JsonProperty("indexes") + private Object indexes; + + public Map getColumns() { + return this.columns; + } + + public ColumnSchema getColumn(String columnName) { + return this.columns.get(columnName); + } + + public Integer getMaxRows() { + return maxRows; + } + + public Boolean getIsRoot() { + return isRoot; + } + + public Object getIndexes() { + return indexes; + } + + @Override + public String toString() { + return "TableSchema [columns=" + columns + ", maxRows=" + maxRows + + ", isRoot=" + isRoot + ", indexes=" + indexes + "]"; + } +} diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/Uuid.java b/library/src/main/java/org/opendaylight/ovsdb/lib/database/Uuid.java similarity index 98% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/Uuid.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/database/Uuid.java index e08af5fd6..da4b5950c 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/database/Uuid.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/database/Uuid.java @@ -7,11 +7,11 @@ * * Authors : Brent Salisbury, Evan Zeller */ -package org.opendaylight.ovsdb.lib.database; - -import com.fasterxml.jackson.annotation.JsonProperty; - -public class Uuid { - @JsonProperty("uuid") - public String[] uuid; -} +package org.opendaylight.ovsdb.lib.database; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class Uuid { + @JsonProperty("uuid") + public String[] uuid; +} diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/ExceptionHandler.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/ExceptionHandler.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/ExceptionHandler.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/ExceptionHandler.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/InvalidEncodingException.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/InvalidEncodingException.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/InvalidEncodingException.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/InvalidEncodingException.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpc10Request.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpc10Request.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpc10Request.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpc10Request.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpc10Response.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpc10Response.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpc10Response.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpc10Response.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcDecoder.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcDecoder.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcDecoder.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcDecoder.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEncoder.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEncoder.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEncoder.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEncoder.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEndpoint.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEndpoint.java similarity index 93% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEndpoint.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEndpoint.java index 8357342b4..29b529d38 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEndpoint.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcEndpoint.java @@ -18,7 +18,6 @@ import java.util.List; import java.util.Map; import java.util.UUID; -import org.opendaylight.controller.sal.core.Node; import org.opendaylight.ovsdb.lib.message.OvsdbRPC; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -65,21 +64,21 @@ public class JsonRpcEndpoint { ObjectMapper objectMapper; Channel nettyChannel; Map methodContext = Maps.newHashMap(); - Map requestCallbacks = Maps.newHashMap(); + Map requestCallbacks = Maps.newHashMap(); public JsonRpcEndpoint(ObjectMapper objectMapper, Channel channel) { this.objectMapper = objectMapper; this.nettyChannel = channel; } - public T getClient(final Node node, Class klazz) { + public T getClient(final Object context, Class klazz) { return Reflection.newProxy(klazz, new InvocationHandler() { @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { if (method.getName().equals(OvsdbRPC.REGISTER_CALLBACK_METHOD)) { if ((args == null) || args.length != 1 || !(args[0] instanceof OvsdbRPC.Callback)) return false; - requestCallbacks.put(node, (OvsdbRPC.Callback)args[0]); + requestCallbacks.put(context, (OvsdbRPC.Callback)args[0]); return true; } @@ -145,11 +144,11 @@ public class JsonRpcEndpoint { } } - public void processRequest(Node node, JsonNode requestJson) { + public void processRequest(Object context, JsonNode requestJson) { JsonRpc10Request request = new JsonRpc10Request(requestJson.get("id").asText()); request.setMethod(requestJson.get("method").asText()); logger.trace("Request : {} {}", requestJson.get("method"), requestJson.get("params")); - OvsdbRPC.Callback callback = requestCallbacks.get(node); + OvsdbRPC.Callback callback = requestCallbacks.get(context); if (callback != null) { Method[] methods = callback.getClass().getDeclaredMethods(); for (Method m : methods) { @@ -158,7 +157,7 @@ public class JsonRpcEndpoint { JsonNode params = requestJson.get("params"); Object param = objectMapper.convertValue(params, parameters[1]); try { - m.invoke(callback, node, param); + m.invoke(callback, context, param); } catch (IllegalAccessException | InvocationTargetException e) { logger.error("Unable to invoke callback " + m.getName(), e); } @@ -182,7 +181,7 @@ public class JsonRpcEndpoint { return; } - logger.error("No handler for Request : {} on {}",requestJson.toString(), node); + logger.error("No handler for Request : {} on {}",requestJson.toString(), context); } public Map getMethodContext() { diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcServiceBinderHandler.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcServiceBinderHandler.java similarity index 85% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcServiceBinderHandler.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcServiceBinderHandler.java index 46841a37d..8b93dffed 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcServiceBinderHandler.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonRpcServiceBinderHandler.java @@ -7,62 +7,61 @@ * * Authors : Ashwin Raveendran, Madhu Venugopal */ -package org.opendaylight.ovsdb.lib.jsonrpc; - -import com.fasterxml.jackson.databind.JsonNode; -import com.google.common.base.Strings; -import com.google.common.collect.Maps; -import com.google.common.util.concurrent.SettableFuture; - -import io.netty.channel.ChannelHandlerContext; -import io.netty.channel.ChannelInboundHandlerAdapter; - -import org.opendaylight.controller.sal.core.Node; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.Map; - -public class JsonRpcServiceBinderHandler extends ChannelInboundHandlerAdapter { - protected static final Logger logger = LoggerFactory.getLogger(JsonRpcServiceBinderHandler.class); - Map> waitingForReply = Maps.newHashMap(); - JsonRpcEndpoint factory = null; - Node node = null; - - public Node getNode() { - return node; - } - - public void setNode(Node node) { - this.node = node; - } - - public JsonRpcServiceBinderHandler(JsonRpcEndpoint factory) { - this.factory = factory; - } - - @Override - public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { - - if (msg instanceof JsonNode) { - JsonNode jsonNode = (JsonNode) msg; - - if (jsonNode.has("result")) { - factory.processResult(jsonNode); - } else if (jsonNode.hasNonNull("method")) { - if (jsonNode.has("id") && !Strings.isNullOrEmpty(jsonNode.get("id").asText())) { - factory.processRequest(node, jsonNode); - } - } - - return; - } - - ctx.channel().close(); - } - - @Override - public void channelReadComplete(ChannelHandlerContext ctx) throws Exception { - ctx.flush(); - } +package org.opendaylight.ovsdb.lib.jsonrpc; + +import io.netty.channel.ChannelHandlerContext; +import io.netty.channel.ChannelInboundHandlerAdapter; + +import java.util.Map; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.fasterxml.jackson.databind.JsonNode; +import com.google.common.base.Strings; +import com.google.common.collect.Maps; +import com.google.common.util.concurrent.SettableFuture; + +public class JsonRpcServiceBinderHandler extends ChannelInboundHandlerAdapter { + protected static final Logger logger = LoggerFactory.getLogger(JsonRpcServiceBinderHandler.class); + Map> waitingForReply = Maps.newHashMap(); + JsonRpcEndpoint factory = null; + Object context = null; + + public Object getContext() { + return context; + } + + public void setContext(Object context) { + this.context = context; + } + + public JsonRpcServiceBinderHandler(JsonRpcEndpoint factory) { + this.factory = factory; + } + + @Override + public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { + + if (msg instanceof JsonNode) { + JsonNode jsonNode = (JsonNode) msg; + + if (jsonNode.has("result")) { + factory.processResult(jsonNode); + } else if (jsonNode.hasNonNull("method")) { + if (jsonNode.has("id") && !Strings.isNullOrEmpty(jsonNode.get("id").asText())) { + factory.processRequest(context, jsonNode); + } + } + + return; + } + + ctx.channel().close(); + } + + @Override + public void channelReadComplete(ChannelHandlerContext ctx) throws Exception { + ctx.flush(); + } } diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonUtils.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonUtils.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonUtils.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/JsonUtils.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/Params.java b/library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/Params.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/Params.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/jsonrpc/Params.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/EchoResponse.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/EchoResponse.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/EchoResponse.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/EchoResponse.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/InsertSerializer.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/InsertSerializer.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/InsertSerializer.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/InsertSerializer.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequest.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequest.java similarity index 95% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequest.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequest.java index 99330b087..ff8e2aa00 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequest.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequest.java @@ -14,7 +14,7 @@ import com.google.common.collect.Lists; import java.util.List; -import org.opendaylight.ovsdb.lib.table.internal.Column; +import org.opendaylight.ovsdb.lib.table.Column; @JsonInclude(JsonInclude.Include.NON_NULL) public class MonitorRequest { diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequestBuilder.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequestBuilder.java similarity index 94% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequestBuilder.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequestBuilder.java index 406eb1aa7..4106dbc04 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequestBuilder.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorRequestBuilder.java @@ -13,7 +13,7 @@ import com.google.common.collect.Lists; import com.google.common.collect.Maps; import org.opendaylight.ovsdb.lib.jsonrpc.Params; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import java.util.List; import java.util.Map; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorSelect.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorSelect.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorSelect.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/MonitorSelect.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/OvsdbRPC.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/OvsdbRPC.java similarity index 87% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/OvsdbRPC.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/OvsdbRPC.java index 440bda911..0358a0303 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/OvsdbRPC.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/message/OvsdbRPC.java @@ -11,12 +11,11 @@ package org.opendaylight.ovsdb.lib.message; import java.util.List; +import org.opendaylight.ovsdb.lib.operations.OperationResult; + import com.fasterxml.jackson.databind.JsonNode; import com.google.common.util.concurrent.ListenableFuture; -import org.opendaylight.controller.sal.core.Node; -import org.opendaylight.ovsdb.lib.operations.OperationResult; - public interface OvsdbRPC { public static final String REGISTER_CALLBACK_METHOD = "registerCallback"; @@ -45,9 +44,9 @@ public interface OvsdbRPC { public static interface Callback { - public void update(Node node, UpdateNotification upadateNotification); - public void locked(Node node, List ids); - public void stolen(Node node, List ids); + public void update(Object context, UpdateNotification upadateNotification); + public void locked(Object context, List ids); + public void stolen(Object context, List ids); // ECHO is handled by JsonRPCEndpoint directly. // We can add Echo request here if there is a need for clients to handle it. } diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/Response.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/Response.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/Response.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/Response.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdate.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdate.java similarity index 97% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdate.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdate.java index 2bebe92b4..4b57dabd4 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdate.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdate.java @@ -18,7 +18,7 @@ import com.google.common.collect.Maps; import java.util.Collection; import java.util.Map; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; public class TableUpdate { diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdates.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdates.java similarity index 99% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdates.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdates.java index f484102c0..ef1b8c41c 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdates.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/message/TableUpdates.java @@ -11,6 +11,7 @@ package org.opendaylight.ovsdb.lib.message; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.collect.Maps; + import org.opendaylight.ovsdb.lib.table.Bridge; import org.opendaylight.ovsdb.lib.table.Capability; import org.opendaylight.ovsdb.lib.table.Interface; @@ -27,7 +28,7 @@ import org.opendaylight.ovsdb.lib.table.SSL; import org.opendaylight.ovsdb.lib.table.Flow_Sample_Collector_Set; import org.opendaylight.ovsdb.lib.table.Flow_Table; import org.opendaylight.ovsdb.lib.table.IPFIX; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import java.util.Map; import java.util.Set; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TransactBuilder.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/TransactBuilder.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TransactBuilder.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/TransactBuilder.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TransactResponse.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/TransactResponse.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/TransactResponse.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/TransactResponse.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/UpdateNotification.java b/library/src/main/java/org/opendaylight/ovsdb/lib/message/UpdateNotification.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/message/UpdateNotification.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/message/UpdateNotification.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Condition.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/Condition.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Condition.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/Condition.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Function.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/Function.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Function.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/Function.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Mutation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/Mutation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Mutation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/Mutation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Mutator.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/Mutator.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Mutator.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/Mutator.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/OvsDBMap.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/OvsDBMap.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/OvsDBMap.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/OvsDBMap.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/OvsDBSet.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/OvsDBSet.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/OvsDBSet.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/OvsDBSet.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Row.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/Row.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/Row.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/Row.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/UUID.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/UUID.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/UUID.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/UUID.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/ConditionSerializer.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/ConditionSerializer.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/ConditionSerializer.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/ConditionSerializer.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/Converter.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/Converter.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/Converter.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/Converter.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/MutationSerializer.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/MutationSerializer.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/MutationSerializer.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/MutationSerializer.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OVSDBTypesIDResolver.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OVSDBTypesIDResolver.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OVSDBTypesIDResolver.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OVSDBTypesIDResolver.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OvsDBMapSerializer.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OvsDBMapSerializer.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OvsDBMapSerializer.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OvsDBMapSerializer.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OvsDBSetSerializer.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OvsDBSetSerializer.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OvsDBSetSerializer.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/OvsDBSetSerializer.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/UUIDSerializer.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/UUIDSerializer.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/UUIDSerializer.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/UUIDSerializer.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/UUIDStringConverter.java b/library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/UUIDStringConverter.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/notation/json/UUIDStringConverter.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/notation/json/UUIDStringConverter.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/AbortOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/AbortOperation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/AbortOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/AbortOperation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/AssertOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/AssertOperation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/AssertOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/AssertOperation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/CommentOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/CommentOperation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/CommentOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/CommentOperation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/CommitOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/CommitOperation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/CommitOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/CommitOperation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/ConditionalOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/ConditionalOperation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/ConditionalOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/ConditionalOperation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/DeleteOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/DeleteOperation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/DeleteOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/DeleteOperation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Insert.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/Insert.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Insert.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/Insert.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/InsertOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/InsertOperation.java similarity index 96% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/InsertOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/InsertOperation.java index 2c3c63969..5552665d4 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/InsertOperation.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/InsertOperation.java @@ -9,7 +9,7 @@ */ package org.opendaylight.ovsdb.lib.operations; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import com.fasterxml.jackson.annotation.JsonProperty; // TODO Madhu : This is not complete. Getting it in to enable other committers to make progress diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/MutateOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/MutateOperation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/MutateOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/MutateOperation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Operation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/Operation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Operation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/Operation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/OperationResult.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/OperationResult.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/OperationResult.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/OperationResult.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Operations.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/Operations.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Operations.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/Operations.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/SelectOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/SelectOperation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/SelectOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/SelectOperation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/TransactionBuilder.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/TransactionBuilder.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/TransactionBuilder.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/TransactionBuilder.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Update.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/Update.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Update.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/Update.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/UpdateOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/UpdateOperation.java similarity index 96% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/UpdateOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/UpdateOperation.java index 800d4843b..0103d965c 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/UpdateOperation.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/UpdateOperation.java @@ -12,7 +12,7 @@ package org.opendaylight.ovsdb.lib.operations; import java.util.List; import org.opendaylight.ovsdb.lib.notation.Condition; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; //TODO Madhu : This is not complete. Getting it in to enable other committers to make progress public class UpdateOperation extends Operation { String table; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/WaitOperation.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/WaitOperation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/WaitOperation.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/WaitOperation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Where.java b/library/src/main/java/org/opendaylight/ovsdb/lib/operations/Where.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/operations/Where.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/operations/Where.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/ATableSchema.java b/library/src/main/java/org/opendaylight/ovsdb/lib/schema/ATableSchema.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/ATableSchema.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/schema/ATableSchema.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/BaseType.java b/library/src/main/java/org/opendaylight/ovsdb/lib/schema/BaseType.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/BaseType.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/schema/BaseType.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/ColumnSchema.java b/library/src/main/java/org/opendaylight/ovsdb/lib/schema/ColumnSchema.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/ColumnSchema.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/schema/ColumnSchema.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/ColumnType.java b/library/src/main/java/org/opendaylight/ovsdb/lib/schema/ColumnType.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/ColumnType.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/schema/ColumnType.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/DatabaseSchema.java b/library/src/main/java/org/opendaylight/ovsdb/lib/schema/DatabaseSchema.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/DatabaseSchema.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/schema/DatabaseSchema.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/TableSchema.java b/library/src/main/java/org/opendaylight/ovsdb/lib/schema/TableSchema.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/schema/TableSchema.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/schema/TableSchema.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Bridge.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Bridge.java similarity index 97% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Bridge.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Bridge.java index 3dba186b6..2a8f53d96 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Bridge.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Bridge.java @@ -12,13 +12,12 @@ package org.opendaylight.ovsdb.lib.table; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; import org.opendaylight.ovsdb.lib.notation.UUID; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; public class Bridge extends Table { public static final Name NAME = new Name("Bridge"){}; - public enum Column implements org.opendaylight.ovsdb.lib.table.internal.Column{controller, fail_mode, name, ports} + public enum Column implements org.opendaylight.ovsdb.lib.table.Column{controller, fail_mode, name, ports} private String name; private OvsDBSet ports; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Capability.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Capability.java similarity index 95% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Capability.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Capability.java index b431a2cee..4ad9203ac 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Capability.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Capability.java @@ -10,7 +10,6 @@ package org.opendaylight.ovsdb.lib.table; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/internal/Column.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Column.java similarity index 87% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/internal/Column.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Column.java index 5d8645ac1..7c4e18075 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/internal/Column.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Column.java @@ -7,7 +7,7 @@ * * Authors : Ashwin Raveendran */ -package org.opendaylight.ovsdb.lib.table.internal; +package org.opendaylight.ovsdb.lib.table; public interface Column { diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Controller.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Controller.java similarity index 94% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Controller.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Controller.java index 2225667f6..bca9f9721 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Controller.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Controller.java @@ -9,8 +9,6 @@ */ package org.opendaylight.ovsdb.lib.table; -import org.opendaylight.ovsdb.lib.table.internal.Table; - import com.fasterxml.jackson.annotation.JsonIgnore; public class Controller extends Table { diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Sample_Collector_Set.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Sample_Collector_Set.java similarity index 94% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Sample_Collector_Set.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Sample_Collector_Set.java index 8b2117fc7..5efeb8010 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Sample_Collector_Set.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Sample_Collector_Set.java @@ -1,8 +1,8 @@ package org.opendaylight.ovsdb.lib.table; import com.fasterxml.jackson.annotation.JsonIgnore; + import org.opendaylight.ovsdb.lib.notation.OvsDBMap; -import org.opendaylight.ovsdb.lib.table.internal.Table; /** * Per ovs-vswitchd.conf.db 2.0.90 @@ -70,7 +70,7 @@ public class Flow_Sample_Collector_Set extends Table "]"; } - public enum Column implements org.opendaylight.ovsdb.lib.table.internal.Column { + public enum Column implements org.opendaylight.ovsdb.lib.table.Column { id, bridge, external_ids, diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Table.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Table.java similarity index 95% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Table.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Table.java index e7a085baa..e8003f474 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Table.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Flow_Table.java @@ -1,8 +1,8 @@ package org.opendaylight.ovsdb.lib.table; import com.fasterxml.jackson.annotation.JsonIgnore; + import org.opendaylight.ovsdb.lib.notation.OvsDBSet; -import org.opendaylight.ovsdb.lib.table.internal.Table; /** * Per ovs-vswitchd.conf.db 2.0.90 @@ -67,7 +67,7 @@ public class Flow_Table extends Table { } - public enum Column implements org.opendaylight.ovsdb.lib.table.internal.Column { + public enum Column implements org.opendaylight.ovsdb.lib.table.Column { name, flow_limit, overflow_policy, diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/IPFIX.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/IPFIX.java similarity index 98% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/IPFIX.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/IPFIX.java index 01b39c967..212ca97e6 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/IPFIX.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/IPFIX.java @@ -1,9 +1,9 @@ package org.opendaylight.ovsdb.lib.table; import com.fasterxml.jackson.annotation.JsonIgnore; + import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; -import org.opendaylight.ovsdb.lib.table.internal.Table; /** * Per ovs-vswitchd.conf.db 2.0.90 diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Interface.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Interface.java similarity index 98% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Interface.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Interface.java index 4ea314d06..337627c44 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Interface.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Interface.java @@ -13,7 +13,6 @@ import java.math.BigInteger; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Manager.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Manager.java similarity index 94% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Manager.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Manager.java index f581db8a4..d670cb7a9 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Manager.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Manager.java @@ -9,8 +9,6 @@ */ package org.opendaylight.ovsdb.lib.table; -import org.opendaylight.ovsdb.lib.table.internal.Table; - import com.fasterxml.jackson.annotation.JsonIgnore; public class Manager extends Table { diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Mirror.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Mirror.java similarity index 98% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Mirror.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Mirror.java index d52c2bfb0..63c74578d 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Mirror.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Mirror.java @@ -12,7 +12,6 @@ package org.opendaylight.ovsdb.lib.table; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; import org.opendaylight.ovsdb.lib.notation.UUID; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/NetFlow.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/NetFlow.java similarity index 95% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/NetFlow.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/NetFlow.java index ed57e1f35..200ae492a 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/NetFlow.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/NetFlow.java @@ -10,7 +10,6 @@ package org.opendaylight.ovsdb.lib.table; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Open_vSwitch.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Open_vSwitch.java similarity index 97% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Open_vSwitch.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Open_vSwitch.java index ad5cec3d3..4e4aceefc 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Open_vSwitch.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Open_vSwitch.java @@ -12,7 +12,6 @@ package org.opendaylight.ovsdb.lib.table; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; import org.opendaylight.ovsdb.lib.notation.UUID; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; @@ -168,5 +167,5 @@ public class Open_vSwitch extends Table { + external_ids + ", statistics=" + statistics + "]"; } - public enum Column implements org.opendaylight.ovsdb.lib.table.internal.Column{ controller, fail_mode, name, ports} + public enum Column implements org.opendaylight.ovsdb.lib.table.Column{ controller, fail_mode, name, ports} } diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Port.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Port.java similarity index 97% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Port.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Port.java index 83f58f857..a1f394de8 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Port.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Port.java @@ -14,7 +14,6 @@ import java.math.BigInteger; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; import org.opendaylight.ovsdb.lib.notation.UUID; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; @@ -112,7 +111,7 @@ public class Port extends Table { + external_ids + "]"; } - public enum Column implements org.opendaylight.ovsdb.lib.table.internal.Column { + public enum Column implements org.opendaylight.ovsdb.lib.table.Column { interfaces, name, tag, diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Qos.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Qos.java similarity index 96% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Qos.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Qos.java index 0eb8a6150..bbbe6fef4 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Qos.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Qos.java @@ -12,7 +12,6 @@ package org.opendaylight.ovsdb.lib.table; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.UUID; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; @@ -72,7 +71,7 @@ public class Qos extends Table { + other_config + ", external_ids=" + external_ids + "]"; } - public enum Column implements org.opendaylight.ovsdb.lib.table.internal.Column { + public enum Column implements org.opendaylight.ovsdb.lib.table.Column { queues, type, other_config, diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Queue.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Queue.java similarity index 95% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Queue.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Queue.java index 122f3bcf8..f8a7072f3 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/Queue.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Queue.java @@ -12,7 +12,6 @@ package org.opendaylight.ovsdb.lib.table; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; @@ -63,7 +62,7 @@ public class Queue extends Table { + ", external_ids=" + external_ids + "]"; } - public enum Column implements org.opendaylight.ovsdb.lib.table.internal.Column { + public enum Column implements org.opendaylight.ovsdb.lib.table.Column { dscp, other_config, external_ids} diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/SFlow.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/SFlow.java similarity index 97% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/SFlow.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/SFlow.java index 27f1cb7bd..ef1a0c890 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/SFlow.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/SFlow.java @@ -11,7 +11,6 @@ package org.opendaylight.ovsdb.lib.table; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/SSL.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/SSL.java similarity index 96% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/SSL.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/SSL.java index 1236d75b9..25a762a3c 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/SSL.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/SSL.java @@ -10,7 +10,6 @@ package org.opendaylight.ovsdb.lib.table; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; -import org.opendaylight.ovsdb.lib.table.internal.Table; import com.fasterxml.jackson.annotation.JsonIgnore; @@ -68,7 +67,7 @@ public class SSL extends Table { + external_ids + "]"; } - public enum Column implements org.opendaylight.ovsdb.lib.table.internal.Column { + public enum Column implements org.opendaylight.ovsdb.lib.table.Column { ca_cert, bootstrap_ca_cert, certificate, diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/internal/Table.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Table.java similarity index 94% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/internal/Table.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Table.java index 16304e064..791d01a3e 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/internal/Table.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Table.java @@ -7,7 +7,7 @@ * * Authors : Ashwin Raveendran */ -package org.opendaylight.ovsdb.lib.table.internal; +package org.opendaylight.ovsdb.lib.table; public abstract class Table { public abstract Name getTableName(); diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/internal/Tables.java b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Tables.java similarity index 56% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/internal/Tables.java rename to library/src/main/java/org/opendaylight/ovsdb/lib/table/Tables.java index b66a49ee4..d8148b931 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/lib/table/internal/Tables.java +++ b/library/src/main/java/org/opendaylight/ovsdb/lib/table/Tables.java @@ -7,24 +7,7 @@ * * Authors : Ashwin Raveendran */ -package org.opendaylight.ovsdb.lib.table.internal; - -import org.opendaylight.ovsdb.lib.table.Bridge; -import org.opendaylight.ovsdb.lib.table.Capability; -import org.opendaylight.ovsdb.lib.table.Interface; -import org.opendaylight.ovsdb.lib.table.Port; -import org.opendaylight.ovsdb.lib.table.Controller; -import org.opendaylight.ovsdb.lib.table.Manager; -import org.opendaylight.ovsdb.lib.table.Mirror; -import org.opendaylight.ovsdb.lib.table.NetFlow; -import org.opendaylight.ovsdb.lib.table.Open_vSwitch; -import org.opendaylight.ovsdb.lib.table.Qos; -import org.opendaylight.ovsdb.lib.table.Queue; -import org.opendaylight.ovsdb.lib.table.SFlow; -import org.opendaylight.ovsdb.lib.table.SSL; -import org.opendaylight.ovsdb.lib.table.Flow_Sample_Collector_Set; -import org.opendaylight.ovsdb.lib.table.Flow_Table; -import org.opendaylight.ovsdb.lib.table.IPFIX; +package org.opendaylight.ovsdb.lib.table; import java.util.ArrayList; import java.util.List; diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestIT.java b/library/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestIT.java similarity index 84% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestIT.java rename to library/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestIT.java index 8793b3907..cdfb1e2a4 100644 --- a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestIT.java +++ b/library/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestIT.java @@ -9,28 +9,30 @@ */ package org.opendaylight.ovsdb.lib; -import com.google.common.util.concurrent.ListenableFuture; +import static org.opendaylight.ovsdb.lib.operations.Operations.op; + +import java.io.IOException; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + import junit.framework.Assert; + import org.junit.Before; import org.junit.Test; import org.opendaylight.ovsdb.lib.message.OvsdbRPC; +import org.opendaylight.ovsdb.lib.message.UpdateNotification; import org.opendaylight.ovsdb.lib.operations.OperationResult; import org.opendaylight.ovsdb.lib.schema.ATableSchema; import org.opendaylight.ovsdb.lib.schema.ColumnSchema; import org.opendaylight.ovsdb.lib.schema.DatabaseSchema; import org.opendaylight.ovsdb.lib.schema.TableSchema; -import org.opendaylight.ovsdb.plugin.OvsdbTestBase; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.IOException; -import java.util.List; -import java.util.Map; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; - -import static org.opendaylight.ovsdb.lib.operations.Operations.op; +import com.google.common.util.concurrent.ListenableFuture; public class OvsDBClientTestIT extends OvsdbTestBase { @@ -81,11 +83,28 @@ public class OvsDBClientTestIT extends OvsdbTestBase { if (ovs != null) { return; } - TestObjects testConnection = getTestConnection(); - OvsdbRPC rpc = testConnection.connectionService.getConnection(testConnection.node).getRpc(); - + OvsdbRPC rpc = getTestConnection(); + if (rpc == null) { + System.out.println("Unable to Establish Test Connection"); + } ExecutorService executorService = Executors.newFixedThreadPool(3); ovs = new OvsDBClientImpl(rpc, executorService); } + + @Override + public void update(Object node, UpdateNotification upadateNotification) { + // TODO Auto-generated method stub + + } + @Override + public void locked(Object node, List ids) { + // TODO Auto-generated method stub + + } + @Override + public void stolen(Object node, List ids) { + // TODO Auto-generated method stub + + } } diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestITTyped.java b/library/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestITTyped.java similarity index 84% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestITTyped.java rename to library/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestITTyped.java index 3e69df0a3..d52ae5932 100644 --- a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestITTyped.java +++ b/library/src/test/java/org/opendaylight/ovsdb/lib/OvsDBClientTestITTyped.java @@ -9,26 +9,28 @@ */ package org.opendaylight.ovsdb.lib; -import com.google.common.util.concurrent.ListenableFuture; +import static org.opendaylight.ovsdb.lib.operations.Operations.op; + +import java.io.IOException; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + import junit.framework.Assert; + import org.junit.Test; import org.opendaylight.ovsdb.lib.message.OvsdbRPC; +import org.opendaylight.ovsdb.lib.message.UpdateNotification; import org.opendaylight.ovsdb.lib.operations.OperationResult; import org.opendaylight.ovsdb.lib.schema.ColumnSchema; import org.opendaylight.ovsdb.lib.schema.TableSchema; import org.opendaylight.ovsdb.lib.schema.temp.Reference; -import org.opendaylight.ovsdb.plugin.OvsdbTestBase; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.IOException; -import java.util.List; -import java.util.Map; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; - -import static org.opendaylight.ovsdb.lib.operations.Operations.op; +import com.google.common.util.concurrent.ListenableFuture; public class OvsDBClientTestITTyped extends OvsdbTestBase { @@ -79,12 +81,11 @@ public class OvsDBClientTestITTyped extends OvsdbTestBase { System.out.println("operationResults = " + operationResults); } - - - private OvsDBClientImpl getVswitch() throws IOException, InterruptedException { - TestObjects testConnection = getTestConnection(); - OvsdbRPC rpc = testConnection.connectionService.getConnection(testConnection.node).getRpc(); + OvsdbRPC rpc = getTestConnection(); + if (rpc == null) { + System.out.println("Unable to Establish Test Connection"); + } ExecutorService executorService = Executors.newFixedThreadPool(3); OvsDBClientImpl ovs = new OvsDBClientImpl(rpc, executorService); @@ -98,4 +99,21 @@ public class OvsDBClientTestITTyped extends OvsdbTestBase { return ovs; } + + @Override + public void update(Object node, UpdateNotification upadateNotification) { + // TODO Auto-generated method stub + + } + @Override + public void locked(Object node, List ids) { + // TODO Auto-generated method stub + + } + @Override + public void stolen(Object node, List ids) { + // TODO Auto-generated method stub + + } + } diff --git a/library/src/test/java/org/opendaylight/ovsdb/lib/OvsdbTestBase.java b/library/src/test/java/org/opendaylight/ovsdb/lib/OvsdbTestBase.java new file mode 100644 index 000000000..dbf337bad --- /dev/null +++ b/library/src/test/java/org/opendaylight/ovsdb/lib/OvsdbTestBase.java @@ -0,0 +1,133 @@ +/* + * [[ Authors will Fill in the Copyright header ]] + * + * 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 + * + * Authors : Brent Salisbury, Hugo Trippaers + */ +package org.opendaylight.ovsdb.lib; + +import io.netty.bootstrap.Bootstrap; +import io.netty.channel.AdaptiveRecvByteBufAllocator; +import io.netty.channel.Channel; +import io.netty.channel.ChannelFuture; +import io.netty.channel.ChannelInitializer; +import io.netty.channel.ChannelOption; +import io.netty.channel.nio.NioEventLoopGroup; +import io.netty.channel.socket.SocketChannel; +import io.netty.channel.socket.nio.NioSocketChannel; +import io.netty.handler.codec.string.StringEncoder; +import io.netty.util.CharsetUtil; + +import java.io.IOException; +import java.io.InputStream; +import java.net.InetAddress; +import java.util.Properties; +import java.util.concurrent.ExecutionException; + +import org.opendaylight.ovsdb.lib.jsonrpc.JsonRpcDecoder; +import org.opendaylight.ovsdb.lib.jsonrpc.JsonRpcEndpoint; +import org.opendaylight.ovsdb.lib.jsonrpc.JsonRpcServiceBinderHandler; +import org.opendaylight.ovsdb.lib.message.OvsdbRPC; + +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; + +public abstract class OvsdbTestBase implements OvsdbRPC.Callback{ + private final static String identifier = "TEST"; + + public Properties loadProperties() throws IOException { + InputStream is = this + .getClass() + .getClassLoader() + .getResourceAsStream( + "org/opendaylight/ovsdb/lib/message/integration-test.properties"); + if (is == null) { + throw new IOException("Unable to load integration-test.properties"); + } + Properties props = new Properties(); + props.load(is); + + return props; + } + + private Channel connect(String addressStr, String portStr) { + InetAddress address; + try { + address = InetAddress.getByName(addressStr); + } catch (Exception e) { + System.out.println("Unable to resolve " + addressStr); + e.printStackTrace(); + return null; + } + + Integer port; + try { + port = Integer.parseInt(portStr); + } catch (NumberFormatException e) { + System.out.println("Invalid port number : " + portStr); + e.printStackTrace(); + return null; + } + + try { + Bootstrap bootstrap = new Bootstrap(); + bootstrap.group(new NioEventLoopGroup()); + bootstrap.channel(NioSocketChannel.class); + bootstrap.option(ChannelOption.TCP_NODELAY, true); + bootstrap.option(ChannelOption.RCVBUF_ALLOCATOR, new AdaptiveRecvByteBufAllocator(65535, 65535, 65535)); + + bootstrap.handler(new ChannelInitializer() { + @Override + public void initChannel(SocketChannel channel) throws Exception { + channel.pipeline().addLast( + //new LoggingHandler(LogLevel.INFO), + new JsonRpcDecoder(100000), + new StringEncoder(CharsetUtil.UTF_8)); + } + }); + + ChannelFuture future = bootstrap.connect(address, port).sync(); + Channel channel = future.channel(); + return channel; + } catch (InterruptedException e) { + System.out.println("Thread was interrupted during connect"); + } + return null; + } + + public OvsdbRPC getTestConnection() throws IOException { + Properties props = loadProperties(); + String address = props.getProperty("ovsdbserver.ipaddress"); + String port = props.getProperty("ovsdbserver.port", "6640"); + + Channel channel = this.connect(address, port); + if (channel == null) { + throw new IOException("Failed to connecto to ovsdb server"); + } + try { + return this.handleNewConnection(channel); + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + return null; + } + + private OvsdbRPC handleNewConnection(Channel channel) throws InterruptedException, ExecutionException { + ObjectMapper objectMapper = new ObjectMapper(); + objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + objectMapper.setSerializationInclusion(Include.NON_NULL); + + JsonRpcEndpoint factory = new JsonRpcEndpoint(objectMapper, channel); + JsonRpcServiceBinderHandler binderHandler = new JsonRpcServiceBinderHandler(factory); + binderHandler.setContext(channel); + channel.pipeline().addLast(binderHandler); + + OvsdbRPC ovsdb = factory.getClient(channel, OvsdbRPC.class); + ovsdb.registerCallback(this); + return ovsdb; + } +} diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/NettyBootStrapper.java b/library/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/NettyBootStrapper.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/NettyBootStrapper.java rename to library/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/NettyBootStrapper.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/TestClient.java b/library/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/TestClient.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/TestClient.java rename to library/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/TestClient.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/TestTokens.java b/library/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/TestTokens.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/TestTokens.java rename to library/src/test/java/org/opendaylight/ovsdb/lib/jsonrpc/TestTokens.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/message/MonitorResponseTest.java b/library/src/test/java/org/opendaylight/ovsdb/lib/message/MonitorResponseTest.java similarity index 98% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/message/MonitorResponseTest.java rename to library/src/test/java/org/opendaylight/ovsdb/lib/message/MonitorResponseTest.java index 97bdcdd10..aecbe9b20 100644 --- a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/message/MonitorResponseTest.java +++ b/library/src/test/java/org/opendaylight/ovsdb/lib/message/MonitorResponseTest.java @@ -25,7 +25,7 @@ import org.opendaylight.ovsdb.lib.notation.UUID; import org.opendaylight.ovsdb.lib.table.Bridge; import org.opendaylight.ovsdb.lib.table.Interface; import org.opendaylight.ovsdb.lib.table.Port; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import java.io.IOException; import java.io.InputStream; diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/schema/OvsDBSchemaTest.java b/library/src/test/java/org/opendaylight/ovsdb/lib/schema/OvsDBSchemaTest.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/schema/OvsDBSchemaTest.java rename to library/src/test/java/org/opendaylight/ovsdb/lib/schema/OvsDBSchemaTest.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/schema/temp/Reference.java b/library/src/test/java/org/opendaylight/ovsdb/lib/schema/temp/Reference.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/schema/temp/Reference.java rename to library/src/test/java/org/opendaylight/ovsdb/lib/schema/temp/Reference.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/schema/temp/SchemaObjs.java b/library/src/test/java/org/opendaylight/ovsdb/lib/schema/temp/SchemaObjs.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/schema/temp/SchemaObjs.java rename to library/src/test/java/org/opendaylight/ovsdb/lib/schema/temp/SchemaObjs.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/schema/test_schema.json b/library/src/test/java/org/opendaylight/ovsdb/lib/schema/test_schema.json similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/lib/schema/test_schema.json rename to library/src/test/java/org/opendaylight/ovsdb/lib/schema/test_schema.json diff --git a/ovsdb/src/test/resources/logback.xml b/library/src/test/resources/logback.xml similarity index 100% rename from ovsdb/src/test/resources/logback.xml rename to library/src/test/resources/logback.xml diff --git a/library/src/test/resources/org/opendaylight/ovsdb/lib/message/integration-test.properties b/library/src/test/resources/org/opendaylight/ovsdb/lib/message/integration-test.properties new file mode 100644 index 000000000..504dd28df --- /dev/null +++ b/library/src/test/resources/org/opendaylight/ovsdb/lib/message/integration-test.properties @@ -0,0 +1,2 @@ +ovsdbserver.ipaddress=192.168.56.104 +ovsdbserver.port=6644 \ No newline at end of file diff --git a/ovsdb/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response1.json b/library/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response1.json similarity index 100% rename from ovsdb/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response1.json rename to library/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response1.json diff --git a/ovsdb/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response_sample.json b/library/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response_sample.json similarity index 100% rename from ovsdb/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response_sample.json rename to library/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response_sample.json diff --git a/ovsdb/src/test/resources/org/opendaylight/ovsdb/lib/schema/test_schema.json b/library/src/test/resources/org/opendaylight/ovsdb/lib/schema/test_schema.json similarity index 100% rename from ovsdb/src/test/resources/org/opendaylight/ovsdb/lib/schema/test_schema.json rename to library/src/test/resources/org/opendaylight/ovsdb/lib/schema/test_schema.json diff --git a/neutron/pom.xml b/neutron/pom.xml index 713409374..2716c442e 100644 --- a/neutron/pom.xml +++ b/neutron/pom.xml @@ -1,158 +1,158 @@ - 4.0.0 - - org.opendaylight.ovsdb - commons.ovsdb - 1.1.0-SNAPSHOT - ../commons/parent - + 4.0.0 + + org.opendaylight.ovsdb + ovsdb_commons + 1.1.0-SNAPSHOT + ../commons/parent + - ovsdb.neutron - 0.6.0-SNAPSHOT - bundle + ovsdb_neutron + 0.6.0-SNAPSHOT + bundle - - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - https://wiki.opendaylight.org/view/OVSDB_Integration:Main - HEAD - - - - 14.0.1 - 2.4.3 - 2.4.0 - 2.5 - - - - - org.apache.felix - maven-bundle-plugin - 2.3.6 - true - - - - org.opendaylight.controller.networkconfig.neutron, - org.opendaylight.controller.containermanager, - org.opendaylight.controller.switchmanager, - org.opendaylight.controller.forwardingrulesmanager, - org.opendaylight.controller.sal.core, - org.opendaylight.controller.sal.utils, - org.opendaylight.controller.sal.action, - org.opendaylight.ovsdb.plugin, - org.opendaylight.ovsdb.lib.notation, - org.opendaylight.ovsdb.lib.table, - org.opendaylight.ovsdb.lib.table.internal, - org.opendaylight.controller.sal.binding.api, - org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819, - org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes, - org.opendaylight.yangtools.yang.binding, - org.apache.felix.dm, - org.slf4j, - org.osgi.framework, - * - - - org.opendaylight.ovsdb.neutron.Activator - - - - - - + + 2.4.0 + 14.0.1 + 2.5 + 2.4.3 + org.opendaylight.controller - 0.4.2-SNAPSHOT - networkconfig.neutron + containermanager + 0.5.2-SNAPSHOT org.opendaylight.controller - switchmanager - 0.7.1-SNAPSHOT + forwardingrulesmanager + 0.5.1-SNAPSHOT org.opendaylight.controller - forwardingrulesmanager - 0.5.1-SNAPSHOT + networkconfig.neutron + 0.4.2-SNAPSHOT org.opendaylight.controller sal 0.7.1-SNAPSHOT - - org.opendaylight.ovsdb - ovsdb - 0.5.1-SNAPSHOT - org.opendaylight.controller - containermanager - 0.5.2-SNAPSHOT + sal-binding-api + 1.1-SNAPSHOT - org.opendaylight.controller - sal-binding-api - 1.1-SNAPSHOT + org.opendaylight.controller + sal-common-util + 1.1-SNAPSHOT - org.opendaylight.controller.model - model-flow-service - 1.1-SNAPSHOT + org.opendaylight.controller + switchmanager + 0.7.1-SNAPSHOT org.opendaylight.controller.model model-flow-base 1.1-SNAPSHOT - + org.opendaylight.controller.model model-flow-management 1.1-SNAPSHOT + + org.opendaylight.controller.model + model-flow-service + 1.1-SNAPSHOT + org.opendaylight.controller.model model-inventory 1.1-SNAPSHOT + + org.opendaylight.ovsdb + ovsdb_library + 1.0.0-SNAPSHOT + + + org.opendaylight.ovsdb + ovsdb_plugin + 1.0.0-SNAPSHOT + org.opendaylight.yangtools yang-binding 0.6.2-SNAPSHOT - org.opendaylight.controller - sal-common-util - 1.1-SNAPSHOT - - - junit - junit - 4.11 - test + junit + junit + 4.11 + test - org.mockito - mockito-all - 1.9.5 - test + org.mockito + mockito-all + 1.9.5 + test - org.powermock - powermock-module-junit4 - 1.5.2 - test + org.powermock + powermock-api-mockito + 1.5.2 + test - org.powermock - powermock-api-mockito - 1.5.2 - test + org.powermock + powermock-module-junit4 + 1.5.2 + test + + + + org.apache.felix + maven-bundle-plugin + 2.3.6 + true + + + org.opendaylight.controller.networkconfig.neutron, + org.opendaylight.controller.containermanager, + org.opendaylight.controller.switchmanager, + org.opendaylight.controller.forwardingrulesmanager, + org.opendaylight.controller.sal.core, + org.opendaylight.controller.sal.utils, + org.opendaylight.controller.sal.action, + org.opendaylight.ovsdb.plugin, + org.opendaylight.ovsdb.lib.notation, + org.opendaylight.ovsdb.lib.table, + org.opendaylight.controller.sal.binding.api, + org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819, + org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes, + org.opendaylight.yangtools.yang.binding, + org.apache.felix.dm, + org.slf4j, + org.osgi.framework, + * + org.opendaylight.ovsdb.neutron.Activator + + + + + + + + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + HEAD + https://wiki.opendaylight.org/view/OVSDB_Integration:Main + diff --git a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/AdminConfigManager.java b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/AdminConfigManager.java index eecaf0ecc..a251d675b 100644 --- a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/AdminConfigManager.java +++ b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/AdminConfigManager.java @@ -15,7 +15,7 @@ import java.util.Map; import org.opendaylight.controller.sal.core.Node; import org.opendaylight.controller.sal.utils.ServiceHelper; import org.opendaylight.ovsdb.lib.table.Open_vSwitch; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.opendaylight.ovsdb.plugin.OVSDBConfigService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/InternalNetworkManager.java b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/InternalNetworkManager.java index 82430f227..53dff68c7 100644 --- a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/InternalNetworkManager.java +++ b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/InternalNetworkManager.java @@ -21,7 +21,7 @@ import org.opendaylight.ovsdb.lib.notation.UUID; import org.opendaylight.ovsdb.lib.table.Bridge; import org.opendaylight.ovsdb.lib.table.Interface; import org.opendaylight.ovsdb.lib.table.Port; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.opendaylight.ovsdb.neutron.provider.ProviderNetworkManager; import org.opendaylight.ovsdb.plugin.IConnectionServiceInternal; import org.opendaylight.ovsdb.plugin.OVSDBConfigService; diff --git a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/NodeConfiguration.java b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/NodeConfiguration.java index 868189706..115b891e8 100644 --- a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/NodeConfiguration.java +++ b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/NodeConfiguration.java @@ -22,7 +22,7 @@ import org.opendaylight.controller.sal.utils.ServiceHelper; import org.opendaylight.ovsdb.lib.notation.UUID; import org.opendaylight.ovsdb.lib.table.Interface; import org.opendaylight.ovsdb.lib.table.Port; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.opendaylight.ovsdb.plugin.OVSDBConfigService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/SouthboundEvent.java b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/SouthboundEvent.java index df3b734d8..5c5028f04 100644 --- a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/SouthboundEvent.java +++ b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/SouthboundEvent.java @@ -10,7 +10,7 @@ package org.opendaylight.ovsdb.neutron; import org.opendaylight.controller.sal.core.Node; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; public class SouthboundEvent { public enum Type { NODE, ROW }; diff --git a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/SouthboundHandler.java b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/SouthboundHandler.java index dc8267bcc..8d6b830ba 100644 --- a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/SouthboundHandler.java +++ b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/SouthboundHandler.java @@ -29,7 +29,7 @@ import org.opendaylight.ovsdb.lib.notation.UUID; import org.opendaylight.ovsdb.lib.table.Interface; import org.opendaylight.ovsdb.lib.table.Open_vSwitch; import org.opendaylight.ovsdb.lib.table.Port; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.opendaylight.ovsdb.neutron.provider.ProviderNetworkManager; import org.opendaylight.ovsdb.plugin.OVSDBInventoryListener; import org.slf4j.Logger; diff --git a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/TenantNetworkManager.java b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/TenantNetworkManager.java index 0ce6a400f..f77478a66 100644 --- a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/TenantNetworkManager.java +++ b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/TenantNetworkManager.java @@ -35,7 +35,7 @@ import org.opendaylight.ovsdb.lib.table.Bridge; import org.opendaylight.ovsdb.lib.table.Interface; import org.opendaylight.ovsdb.lib.table.Open_vSwitch; import org.opendaylight.ovsdb.lib.table.Port; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.opendaylight.ovsdb.neutron.provider.ProviderNetworkManager; import org.opendaylight.ovsdb.plugin.IConnectionServiceInternal; import org.opendaylight.ovsdb.plugin.OVSDBConfigService; diff --git a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/OF10ProviderManager.java b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/OF10ProviderManager.java index cf3743e4a..1093b34b9 100644 --- a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/OF10ProviderManager.java +++ b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/OF10ProviderManager.java @@ -33,7 +33,7 @@ import org.opendaylight.ovsdb.lib.notation.UUID; import org.opendaylight.ovsdb.lib.table.Bridge; import org.opendaylight.ovsdb.lib.table.Interface; import org.opendaylight.ovsdb.lib.table.Port; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.opendaylight.ovsdb.neutron.AdminConfigManager; import org.opendaylight.ovsdb.neutron.InternalNetworkManager; import org.opendaylight.ovsdb.neutron.TenantNetworkManager; diff --git a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/OF13ProviderManager.java b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/OF13ProviderManager.java index 08ab0ce3c..561039fae 100644 --- a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/OF13ProviderManager.java +++ b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/OF13ProviderManager.java @@ -172,7 +172,7 @@ class OF13ProviderManager extends ProviderNetworkManager { String bridgeUUID = null; String tunnelBridgeName = AdminConfigManager.getManager().getIntegrationBridgeName(); OVSDBConfigService ovsdbTable = (OVSDBConfigService)ServiceHelper.getGlobalInstance(OVSDBConfigService.class, this); - Map> bridgeTable = ovsdbTable.getRows(node, Bridge.NAME.getName()); + Map> bridgeTable = ovsdbTable.getRows(node, Bridge.NAME.getName()); if (bridgeTable != null) { for (String uuid : bridgeTable.keySet()) { Bridge bridge = (Bridge)bridgeTable.get(uuid); @@ -423,9 +423,9 @@ class OF13ProviderManager extends ProviderNetworkManager { return; } - Map> intfs = ovsdbTable.getRows(node, Interface.NAME.getName()); + Map> intfs = ovsdbTable.getRows(node, Interface.NAME.getName()); if (intfs != null) { - for (org.opendaylight.ovsdb.lib.table.internal.Table row : intfs.values()) { + for (org.opendaylight.ovsdb.lib.table.Table row : intfs.values()) { Interface tunIntf = (Interface)row; if (tunIntf.getName().equals(this.getTunnelName(tunnelType, dst))) { of_ports = tunIntf.getOfport(); @@ -508,9 +508,9 @@ class OF13ProviderManager extends ProviderNetworkManager { private Status triggerInterfaceUpdates(Node node) { try { OVSDBConfigService ovsdbTable = (OVSDBConfigService)ServiceHelper.getGlobalInstance(OVSDBConfigService.class, this); - Map> intfs = ovsdbTable.getRows(node, Interface.NAME.getName()); + Map> intfs = ovsdbTable.getRows(node, Interface.NAME.getName()); if (intfs != null) { - for (org.opendaylight.ovsdb.lib.table.internal.Table row : intfs.values()) { + for (org.opendaylight.ovsdb.lib.table.Table row : intfs.values()) { Interface intf = (Interface)row; NeutronNetwork network = TenantNetworkManager.getManager().getTenantNetworkForInterface(intf); logger.debug("Trigger Interface update for {}", intf); diff --git a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/ProviderNetworkManager.java b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/ProviderNetworkManager.java index 8340a20be..aea533813 100644 --- a/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/ProviderNetworkManager.java +++ b/neutron/src/main/java/org/opendaylight/ovsdb/neutron/provider/ProviderNetworkManager.java @@ -16,7 +16,7 @@ import org.opendaylight.controller.sal.utils.ServiceHelper; import org.opendaylight.controller.sal.utils.Status; import org.opendaylight.ovsdb.lib.table.Bridge; import org.opendaylight.ovsdb.lib.table.Interface; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.opendaylight.ovsdb.plugin.OVSDBConfigService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/neutron/src/test/java/org/opendaylight/ovsdb/neutron/AdminConfigManagerTest.java b/neutron/src/test/java/org/opendaylight/ovsdb/neutron/AdminConfigManagerTest.java index 9baf80499..7ef27dec5 100644 --- a/neutron/src/test/java/org/opendaylight/ovsdb/neutron/AdminConfigManagerTest.java +++ b/neutron/src/test/java/org/opendaylight/ovsdb/neutron/AdminConfigManagerTest.java @@ -29,7 +29,7 @@ import org.opendaylight.controller.sal.core.Node; import org.opendaylight.controller.sal.utils.ServiceHelper; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.table.Open_vSwitch; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.opendaylight.ovsdb.plugin.ConfigurationService; import org.opendaylight.ovsdb.plugin.OVSDBConfigService; import org.powermock.api.mockito.PowerMockito; diff --git a/northbound/ovsdb/enunciate.xml b/northbound/enunciate.xml similarity index 100% rename from northbound/ovsdb/enunciate.xml rename to northbound/enunciate.xml diff --git a/northbound/ovsdb/pom.xml b/northbound/pom.xml similarity index 85% rename from northbound/ovsdb/pom.xml rename to northbound/pom.xml index 4086f176a..8f9891ba3 100644 --- a/northbound/ovsdb/pom.xml +++ b/northbound/pom.xml @@ -3,26 +3,61 @@ 4.0.0 org.opendaylight.ovsdb - commons.ovsdb + ovsdb_commons 1.1.0-SNAPSHOT - ../../commons/parent + ../commons/parent - - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - https://wiki.opendaylight.org/view/OVSDB_Integration:Main - HEAD - - ovsdb.northbound + ovsdb_northbound 0.6.0-SNAPSHOT bundle + + + + com.fasterxml.jackson.core + jackson-annotations + ${jackson.version} + + + + com.fasterxml.jackson.core + jackson-core + ${jackson.version} + + + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + + + org.codehaus.enunciate + enunciate-core-annotations + ${enunciate.version} + + + org.opendaylight.controller + commons.northbound + 0.4.2-SNAPSHOT + + + org.opendaylight.controller + sal + 0.7.1-SNAPSHOT + + + org.opendaylight.ovsdb + ovsdb_library + 1.0.0-SNAPSHOT + + + org.opendaylight.ovsdb + ovsdb_plugin + 1.0.0-SNAPSHOT + + + - - org.codehaus.enunciate - maven-enunciate-plugin - ${enunciate.version} - org.apache.felix maven-bundle-plugin @@ -30,10 +65,8 @@ true - - - - org.opendaylight.controller.sal.utils, + + org.opendaylight.controller.sal.utils, org.opendaylight.controller.northbound.commons, org.opendaylight.controller.northbound.commons.exception, org.opendaylight.controller.northbound.commons.utils, @@ -41,7 +74,6 @@ org.opendaylight.controller.sal.core, org.opendaylight.controller.sal.authorization, org.opendaylight.ovsdb.lib.table, - org.opendaylight.ovsdb.lib.table.internal, org.opendaylight.ovsdb.lib.notation, org.opendaylight.ovsdb.plugin, javax.ws.rs, @@ -52,57 +84,25 @@ org.apache.catalina.filters, com.fasterxml.jackson.databind.annotation, com.fasterxml.jackson.annotation, - !org.codehaus.enunciate.jaxrs - - - + !org.codehaus.enunciate.jaxrs + /ovsdb/nb/v2 ,${classes;ANNOTATION;javax.ws.rs.Path} ${project.basedir}/src/main/resources/META-INF + + org.codehaus.enunciate + maven-enunciate-plugin + ${enunciate.version} + - - - org.opendaylight.controller - sal - 0.7.1-SNAPSHOT - - - org.opendaylight.ovsdb - ovsdb - 0.5.1-SNAPSHOT - - - org.opendaylight.controller - commons.northbound - 0.4.2-SNAPSHOT - - - org.codehaus.enunciate - enunciate-core-annotations - ${enunciate.version} - - - - com.fasterxml.jackson.core - jackson-annotations - ${jackson.version} - - - - com.fasterxml.jackson.core - jackson-core - ${jackson.version} - - - - com.fasterxml.jackson.core - jackson-databind - ${jackson.version} - - - + + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + HEAD + https://wiki.opendaylight.org/view/OVSDB_Integration:Main + diff --git a/northbound/ovsdb/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBNorthbound.java b/northbound/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBNorthbound.java similarity index 99% rename from northbound/ovsdb/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBNorthbound.java rename to northbound/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBNorthbound.java index a67f66b07..1a808eac1 100644 --- a/northbound/ovsdb/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBNorthbound.java +++ b/northbound/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBNorthbound.java @@ -40,8 +40,8 @@ import org.opendaylight.controller.sal.utils.ServiceHelper; import org.opendaylight.controller.sal.utils.Status; import org.opendaylight.controller.sal.utils.StatusCode; import org.opendaylight.ovsdb.lib.notation.UUID; -import org.opendaylight.ovsdb.lib.table.internal.Table; -import org.opendaylight.ovsdb.lib.table.internal.Tables; +import org.opendaylight.ovsdb.lib.table.Table; +import org.opendaylight.ovsdb.lib.table.Tables; import org.opendaylight.ovsdb.plugin.OVSDBConfigService; import org.opendaylight.ovsdb.plugin.StatusWithUuid; import org.slf4j.Logger; diff --git a/northbound/ovsdb/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRow.java b/northbound/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRow.java similarity index 98% rename from northbound/ovsdb/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRow.java rename to northbound/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRow.java index 1f2ff51b8..86567364a 100644 --- a/northbound/ovsdb/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRow.java +++ b/northbound/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRow.java @@ -22,7 +22,7 @@ import org.opendaylight.ovsdb.lib.table.Qos; import org.opendaylight.ovsdb.lib.table.Queue; import org.opendaylight.ovsdb.lib.table.SFlow; import org.opendaylight.ovsdb.lib.table.SSL; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; diff --git a/northbound/ovsdb/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRows.java b/northbound/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRows.java similarity index 92% rename from northbound/ovsdb/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRows.java rename to northbound/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRows.java index 0632c87cb..6d15b82c2 100644 --- a/northbound/ovsdb/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRows.java +++ b/northbound/src/main/java/org/opendaylight/ovsdb/northbound/OVSDBRows.java @@ -11,7 +11,7 @@ package org.opendaylight.ovsdb.northbound; import java.util.Map; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; public class OVSDBRows { Map> rows; diff --git a/northbound/ovsdb/src/main/resources/WEB-INF/web.xml b/northbound/src/main/resources/WEB-INF/web.xml similarity index 100% rename from northbound/ovsdb/src/main/resources/WEB-INF/web.xml rename to northbound/src/main/resources/WEB-INF/web.xml diff --git a/ovsdb/pom.xml b/ovsdb/pom.xml deleted file mode 100755 index 31f7694ee..000000000 --- a/ovsdb/pom.xml +++ /dev/null @@ -1,210 +0,0 @@ - - - 4.0.0 - - org.opendaylight.ovsdb - commons.ovsdb - 1.1.0-SNAPSHOT - ../commons/parent - - - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - https://wiki.opendaylight.org/view/OVSDB_Integration:Main - HEAD - - ovsdb - 1.0.0-SNAPSHOT - bundle - - - true - - 192.168.56.10 - 6640 - - - - - - src/test/resources - true - - - - - org.apache.felix - maven-bundle-plugin - 2.3.6 - true - - - - org.opendaylight.controller.sal.packet, - org.opendaylight.controller.sal.action, - org.opendaylight.controller.sal.discovery, - org.opendaylight.controller.sal.topology, - org.opendaylight.controller.sal.core, - org.opendaylight.controller.sal.flowprogrammer, - org.opendaylight.controller.sal.reader, - org.opendaylight.controller.sal.inventory, - org.opendaylight.controller.sal.match, - org.opendaylight.controller.sal.utils, - org.opendaylight.controller.sal.connection, - org.opendaylight.controller.clustering.services, - org.opendaylight.controller.sal.networkconfig.bridgedomain, - org.apache.commons.lang3.builder, - org.apache.commons.lang3.tuple, - org.apache.felix.dm, - org.slf4j, - org.eclipse.osgi.framework.console, - org.osgi.framework, - javax.net.ssl, - * - - httpclient,commons-codec,httpcore-nio,javax.servlet-api,portlet-api,commons-collections;type=!pom;inline=false - - true - - - org.opendaylight.ovsdb.plugin.Activator - - - org.opendaylight.ovsdb.lib.table, org.opendaylight.ovsdb.lib.table.internal, org.opendaylight.ovsdb.plugin, org.opendaylight.ovsdb.lib.notation - - - ${project.basedir}/META-INF - - - - org.apache.maven.plugins - maven-surefire-plugin - 2.16 - - - - **/*IT - - - - - org.apache.maven.plugins - maven-failsafe-plugin - - ${skip.integrationtest} - - - - - - - org.opendaylight.controller - clustering.services - 0.5.1-SNAPSHOT - - - org.opendaylight.controller - sal - 0.7.1-SNAPSHOT - - - org.opendaylight.controller - sal.connection - 0.1.2-SNAPSHOT - - - org.opendaylight.controller - sal.networkconfiguration - 0.0.3-SNAPSHOT - - - com.fasterxml.jackson.core - jackson-annotations - ${jackson.version} - - - com.fasterxml.jackson.core - jackson-core - ${jackson.version} - - - com.fasterxml.jackson.core - jackson-databind - ${jackson.version} - - - javax.portlet - portlet-api - 2.0 - - - commons-codec - commons-codec - 1.4 - true - - - org.apache.httpcomponents - httpcore-nio - 4.2.1 - true - - - io.netty - netty-all - 4.0.10.Final - - - commons-lang - commons-lang - 2.3 - - - commons-collections - commons-collections - 1.0 - - - com.google.guava - guava - ${guava.version} - - - equinoxSDK381 - org.eclipse.osgi - - - junit - junit - - - com.google.code.gson - gson - 2.1 - compile - - - org.slf4j - slf4j-api - - - ch.qos.logback - logback-classic - - - ch.qos.logback - logback-core - - - - - - integrationtest - - - - false - - - - diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/message/OVSDBNettyFactoryIT.java b/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/message/OVSDBNettyFactoryIT.java deleted file mode 100644 index d21f26686..000000000 --- a/ovsdb/src/test/java/org/opendaylight/ovsdb/lib/message/OVSDBNettyFactoryIT.java +++ /dev/null @@ -1,199 +0,0 @@ -/* - * [[ Authors will Fill in the Copyright header ]] - * - * 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 - * - * Authors : Brent Salisbury, Madhu Venugopal, Aswin Raveendran - */ -package org.opendaylight.ovsdb.lib.message; - -import java.io.IOException; -import java.io.InputStream; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Properties; -import java.util.concurrent.ExecutionException; - -import org.apache.commons.collections.MapUtils; -import org.junit.Before; -import org.junit.Test; -import org.opendaylight.controller.sal.connection.ConnectionConstants; -import org.opendaylight.controller.sal.core.Node; -import org.opendaylight.ovsdb.lib.database.DatabaseSchema; -import org.opendaylight.ovsdb.lib.operations.InsertOperation; -import org.opendaylight.ovsdb.lib.operations.MutateOperation; -import org.opendaylight.ovsdb.lib.operations.Operation; -import org.opendaylight.ovsdb.lib.operations.OperationResult; -import org.opendaylight.ovsdb.lib.notation.Condition; -import org.opendaylight.ovsdb.lib.notation.Function; -import org.opendaylight.ovsdb.lib.notation.Mutation; -import org.opendaylight.ovsdb.lib.notation.Mutator; -import org.opendaylight.ovsdb.lib.notation.OvsDBSet; -import org.opendaylight.ovsdb.lib.notation.UUID; -import org.opendaylight.ovsdb.lib.table.Bridge; -import org.opendaylight.ovsdb.lib.table.Interface; -import org.opendaylight.ovsdb.lib.table.Open_vSwitch; -import org.opendaylight.ovsdb.lib.table.Port; -import org.opendaylight.ovsdb.lib.table.internal.Table; -import org.opendaylight.ovsdb.lib.table.internal.Tables; -import org.opendaylight.ovsdb.plugin.Connection; -import org.opendaylight.ovsdb.plugin.ConnectionService; -import org.opendaylight.ovsdb.plugin.InventoryService; - -import com.google.common.util.concurrent.ListenableFuture; - -public class OVSDBNettyFactoryIT { - InventoryService inventoryService; - private static String bridgeIdentifier = "br1"; - private Properties props; - - @Before - public void initialize() throws IOException { - InputStream is = this.getClass().getClassLoader() - .getResourceAsStream( - "org/opendaylight/ovsdb/lib/message/integration-test.properties"); - if (is == null) { - throw new IOException("Unable to load integration-test.properties"); - } - props = new Properties(); - props.load(is); - - } - - @Test - public void testSome() throws InterruptedException, ExecutionException, - IOException { - ConnectionService connectionService = new ConnectionService(); - connectionService.init(); - inventoryService = new InventoryService(); - inventoryService.init(); - connectionService.setInventoryServiceInternal(inventoryService); - Node.NodeIDType.registerIDType("OVS", String.class); - Map params = new HashMap(); - params.put(ConnectionConstants.ADDRESS, - props.getProperty("ovsdbserver.ipaddress")); - params.put(ConnectionConstants.PORT, - props.getProperty("ovsdbserver.port", "6640")); - Node node = connectionService.connect("TEST", params); - if (node == null) { - throw new IOException("Unable to connect to the host"); - } - - Connection connection = connectionService.getConnection(node); - if (connection == null) { - throw new IOException("Unable to connect to the host"); - } - - OvsdbRPC ovsdb = connection.getRpc(); - if (ovsdb == null) { - throw new IOException("Unable to obtain RPC instance"); - } - - //GET DB-SCHEMA - List dbNames = Arrays.asList(Open_vSwitch.NAME.getName()); - ListenableFuture dbSchemaF = null; //ovsdb.get_schema(dbNames); - DatabaseSchema databaseSchema = dbSchemaF.get(); - MapUtils.debugPrint(System.out, null, databaseSchema.getTables()); - - // TEST MONITOR - // YES it is expected to fail with "duplicate monitor ID" as we have a perpetual monitor in Inventory Service - MonitorRequestBuilder monitorReq = new MonitorRequestBuilder(); - for (Table table : Tables.getTables()) { - monitorReq.monitor(table); - } - - ListenableFuture monResponse = ovsdb.monitor(monitorReq); - System.out.println("Monitor Request sent :"); - TableUpdates updates = monResponse.get(); - inventoryService.processTableUpdates(node, updates); - inventoryService.printCache(node); - - // TRANSACT INSERT TEST - - Map> ovsTable = inventoryService.getTableCache(node, Open_vSwitch.NAME.getName()); - String newBridge = "new_bridge"; - String newInterface = "new_interface"; - String newPort = "new_port"; - String newSwitch = "new_switch"; - - Operation addSwitchRequest = null; - - if(ovsTable != null){ - String ovsTableUUID = (String) ovsTable.keySet().toArray()[0]; - UUID bridgeUuidPair = new UUID(newBridge); - Mutation bm = new Mutation("bridges", Mutator.INSERT, bridgeUuidPair); - List mutations = new ArrayList(); - mutations.add(bm); - - UUID uuid = new UUID(ovsTableUUID); - Condition condition = new Condition("_uuid", Function.EQUALS, uuid); - List where = new ArrayList(); - where.add(condition); - addSwitchRequest = new MutateOperation(Open_vSwitch.NAME.getName(), where, mutations); - } - else{ - Open_vSwitch ovsTableRow = new Open_vSwitch(); - OvsDBSet bridges = new OvsDBSet(); - UUID bridgeUuidPair = new UUID(newBridge); - bridges.add(bridgeUuidPair); - ovsTableRow.setBridges(bridges); - addSwitchRequest = new InsertOperation(Open_vSwitch.NAME.getName(), newSwitch, ovsTableRow); - } - - Bridge bridgeRow = new Bridge(); - bridgeRow.setName(bridgeIdentifier); - OvsDBSet ports = new OvsDBSet(); - UUID port = new UUID(newPort); - ports.add(port); - bridgeRow.setPorts(ports); - InsertOperation addBridgeRequest = new InsertOperation(Bridge.NAME.getName(), newBridge, bridgeRow); - - Port portRow = new Port(); - portRow.setName(bridgeIdentifier); - OvsDBSet interfaces = new OvsDBSet(); - UUID interfaceid = new UUID(newInterface); - interfaces.add(interfaceid); - portRow.setInterfaces(interfaces); - InsertOperation addPortRequest = new InsertOperation(Port.NAME.getName(), newPort, portRow); - - Interface interfaceRow = new Interface(); - interfaceRow.setName(bridgeIdentifier); - interfaceRow.setType("internal"); - InsertOperation addIntfRequest = new InsertOperation(Interface.NAME.getName(), newInterface, interfaceRow); - - TransactBuilder transaction = new TransactBuilder(); - transaction.addOperations(new ArrayList( - Arrays.asList(addSwitchRequest, addIntfRequest, addPortRequest, addBridgeRequest))); - - ListenableFuture> transResponse = ovsdb.transact(transaction); - System.out.println("Transcation sent :"); - List tr = transResponse.get(); - System.out.println("Transaction response : "+transResponse.toString()); - List requests = transaction.getRequests(); - for (int i = 0; i < tr.size() ; i++) { - if (i < requests.size()) requests.get(i).setResult(tr.get(i)); - } - - System.out.println("Request + Response : "+requests.toString()); - if (tr.size() > requests.size()) { - System.out.println("ERROR : "+tr.get(tr.size()-1).getError()); - System.out.println("Details : "+tr.get(tr.size()-1).getDetails()); - } - - // TEST ECHO - - ListenableFuture> some = ovsdb.echo(); - Object s = some.get(); - System.out.printf("Result of echo is %s \n", s); - - // TEST ECHO REQUEST/REPLY - Thread.sleep(10000); - - connectionService.disconnect(node); - } -} diff --git a/plugin/pom.xml b/plugin/pom.xml new file mode 100755 index 000000000..663b8d895 --- /dev/null +++ b/plugin/pom.xml @@ -0,0 +1,212 @@ + + + 4.0.0 + + org.opendaylight.ovsdb + ovsdb_commons + 1.1.0-SNAPSHOT + ../commons/parent + + ovsdb_plugin + 1.0.0-SNAPSHOT + bundle + + + + 192.168.56.10 + 6640 + true + + + + ch.qos.logback + logback-classic + + + ch.qos.logback + logback-core + + + com.fasterxml.jackson.core + jackson-annotations + ${jackson.version} + + + com.fasterxml.jackson.core + jackson-core + ${jackson.version} + + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + + + com.google.code.gson + gson + 2.1 + compile + + + com.google.guava + guava + ${guava.version} + + + commons-codec + commons-codec + 1.4 + true + + + commons-collections + commons-collections + 1.0 + + + commons-lang + commons-lang + 2.3 + + + equinoxSDK381 + org.eclipse.osgi + + + io.netty + netty-all + 4.0.10.Final + + + javax.portlet + portlet-api + 2.0 + + + junit + junit + + + org.apache.httpcomponents + httpcore-nio + 4.2.1 + true + + + org.opendaylight.controller + clustering.services + 0.5.1-SNAPSHOT + + + org.opendaylight.controller + sal + 0.7.1-SNAPSHOT + + + org.opendaylight.controller + sal.connection + 0.1.2-SNAPSHOT + + + org.opendaylight.controller + sal.networkconfiguration + 0.0.3-SNAPSHOT + + + org.opendaylight.ovsdb + ovsdb_library + 1.0.0-SNAPSHOT + + + org.slf4j + slf4j-api + + + + + + + true + src/test/resources + + + + + org.apache.felix + maven-bundle-plugin + 2.3.6 + true + + + org.opendaylight.controller.sal.packet, + org.opendaylight.controller.sal.action, + org.opendaylight.controller.sal.discovery, + org.opendaylight.controller.sal.topology, + org.opendaylight.controller.sal.core, + org.opendaylight.controller.sal.flowprogrammer, + org.opendaylight.controller.sal.reader, + org.opendaylight.controller.sal.inventory, + org.opendaylight.controller.sal.match, + org.opendaylight.controller.sal.utils, + org.opendaylight.controller.sal.connection, + org.opendaylight.controller.clustering.services, + org.opendaylight.controller.sal.networkconfig.bridgedomain, + org.opendaylight.ovsdb.lib.table, + org.opendaylight.ovsdb.plugin, + org.opendaylight.ovsdb.lib.notation, + org.opendaylight.ovsdb.lib.database, + org.opendaylight.ovsdb.lib.operations, + org.opendaylight.ovsdb.lib.message, + org.apache.commons.lang3.builder, + org.apache.commons.lang3.tuple, + org.apache.felix.dm, + org.slf4j, + org.eclipse.osgi.framework.console, + org.osgi.framework, + javax.net.ssl, + * + httpclient,commons-codec,httpcore-nio,javax.servlet-api,portlet-api,commons-collections;type=!pom;inline=false + true + org.opendaylight.ovsdb.plugin.Activator + org.opendaylight.ovsdb.plugin + + ${project.basedir}/META-INF + + + + org.apache.maven.plugins + maven-failsafe-plugin + + ${skip.integrationtest} + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.16 + + + + **/*IT + + + + + + + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + HEAD + https://wiki.opendaylight.org/view/OVSDB_Integration:Main + + + + + integrationtest + + + false + + + + diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/Activator.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/Activator.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/Activator.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/Activator.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ChannelConnectionHandler.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/ChannelConnectionHandler.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ChannelConnectionHandler.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/ChannelConnectionHandler.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ConfigurationService.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/ConfigurationService.java similarity index 99% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ConfigurationService.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/ConfigurationService.java index 7fe9fcb67..fdaed3af3 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ConfigurationService.java +++ b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/ConfigurationService.java @@ -32,12 +32,6 @@ import org.opendaylight.controller.sal.utils.StatusCode; import org.opendaylight.ovsdb.lib.database.OVSInstance; import org.opendaylight.ovsdb.lib.database.OvsdbType; import org.opendaylight.ovsdb.lib.message.TransactBuilder; -import org.opendaylight.ovsdb.lib.operations.DeleteOperation; -import org.opendaylight.ovsdb.lib.operations.InsertOperation; -import org.opendaylight.ovsdb.lib.operations.MutateOperation; -import org.opendaylight.ovsdb.lib.operations.Operation; -import org.opendaylight.ovsdb.lib.operations.OperationResult; -import org.opendaylight.ovsdb.lib.operations.UpdateOperation; import org.opendaylight.ovsdb.lib.notation.Condition; import org.opendaylight.ovsdb.lib.notation.Function; import org.opendaylight.ovsdb.lib.notation.Mutation; @@ -45,6 +39,12 @@ import org.opendaylight.ovsdb.lib.notation.Mutator; import org.opendaylight.ovsdb.lib.notation.OvsDBMap; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; import org.opendaylight.ovsdb.lib.notation.UUID; +import org.opendaylight.ovsdb.lib.operations.DeleteOperation; +import org.opendaylight.ovsdb.lib.operations.InsertOperation; +import org.opendaylight.ovsdb.lib.operations.MutateOperation; +import org.opendaylight.ovsdb.lib.operations.Operation; +import org.opendaylight.ovsdb.lib.operations.OperationResult; +import org.opendaylight.ovsdb.lib.operations.UpdateOperation; import org.opendaylight.ovsdb.lib.table.Bridge; import org.opendaylight.ovsdb.lib.table.Controller; import org.opendaylight.ovsdb.lib.table.Interface; @@ -57,7 +57,7 @@ import org.opendaylight.ovsdb.lib.table.Qos; import org.opendaylight.ovsdb.lib.table.Queue; import org.opendaylight.ovsdb.lib.table.SFlow; import org.opendaylight.ovsdb.lib.table.SSL; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.osgi.framework.BundleContext; import org.osgi.framework.FrameworkUtil; import org.slf4j.Logger; @@ -407,7 +407,7 @@ public class ConfigurationService implements IPluginInBridgeDomainConfigService, if (connection != null) { String newmanager = "new_manager"; - OVSInstance instance = OVSInstance.monitorOVS(connection); + OVSInstance instance = OVSInstance.monitorOVS(); Map ovsoutter = new LinkedHashMap(); Map ovsinner = new LinkedHashMap(); diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/Connection.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/Connection.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/Connection.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/Connection.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ConnectionService.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/ConnectionService.java similarity index 98% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ConnectionService.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/ConnectionService.java index 124d10b4a..2a7ee5d0e 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ConnectionService.java +++ b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/ConnectionService.java @@ -60,8 +60,8 @@ import org.opendaylight.ovsdb.lib.notation.OvsDBSet; import org.opendaylight.ovsdb.lib.table.Bridge; import org.opendaylight.ovsdb.lib.table.Controller; import org.opendaylight.ovsdb.lib.table.Open_vSwitch; -import org.opendaylight.ovsdb.lib.table.internal.Table; -import org.opendaylight.ovsdb.lib.table.internal.Tables; +import org.opendaylight.ovsdb.lib.table.Table; +import org.opendaylight.ovsdb.lib.table.Tables; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -256,7 +256,7 @@ public class ConnectionService implements IPluginInConnectionService, IConnectio JsonRpcEndpoint factory = new JsonRpcEndpoint(objectMapper, channel); JsonRpcServiceBinderHandler binderHandler = new JsonRpcServiceBinderHandler(factory); - binderHandler.setNode(node); + binderHandler.setContext(node); channel.pipeline().addLast(binderHandler); OvsdbRPC ovsdb = factory.getClient(node, OvsdbRPC.class); @@ -527,18 +527,18 @@ public class ConnectionService implements IPluginInConnectionService, IConnectio } @Override - public void update(Node node, UpdateNotification updateNotification) { + public void update(Object context, UpdateNotification updateNotification) { if (updateNotification == null) return; - inventoryServiceInternal.processTableUpdates(node, updateNotification.getUpdate()); + inventoryServiceInternal.processTableUpdates((Node)context, updateNotification.getUpdate()); } @Override - public void locked(Node node, List ids) { + public void locked(Object context, List ids) { // TODO Auto-generated method stub } @Override - public void stolen(Node node, List ids) { + public void stolen(Object context, List ids) { // TODO Auto-generated method stub } diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/Encapsulation.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/Encapsulation.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/Encapsulation.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/Encapsulation.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/IConnectionServiceInternal.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/IConnectionServiceInternal.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/IConnectionServiceInternal.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/IConnectionServiceInternal.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/IPAddressProperty.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/IPAddressProperty.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/IPAddressProperty.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/IPAddressProperty.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/InsertRequest.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/InsertRequest.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/InsertRequest.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/InsertRequest.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/InventoryService.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/InventoryService.java similarity index 99% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/InventoryService.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/InventoryService.java index e195f1a82..452ff7bad 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/InventoryService.java +++ b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/InventoryService.java @@ -38,7 +38,7 @@ import org.opendaylight.ovsdb.lib.message.TableUpdate.Row; import org.opendaylight.ovsdb.lib.message.TableUpdates; import org.opendaylight.ovsdb.lib.notation.OvsDBSet; import org.opendaylight.ovsdb.lib.table.Bridge; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/InventoryServiceInternal.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/InventoryServiceInternal.java similarity index 96% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/InventoryServiceInternal.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/InventoryServiceInternal.java index 032427560..ddb2a9beb 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/InventoryServiceInternal.java +++ b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/InventoryServiceInternal.java @@ -18,7 +18,7 @@ import org.opendaylight.controller.sal.core.UpdateType; import org.opendaylight.controller.sal.inventory.IPluginInInventoryService; import org.opendaylight.ovsdb.lib.database.DatabaseSchema; import org.opendaylight.ovsdb.lib.message.TableUpdates; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; public interface InventoryServiceInternal extends IPluginInInventoryService { public ConcurrentMap>> getCache(Node n); diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/L4PortProperty.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/L4PortProperty.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/L4PortProperty.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/L4PortProperty.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/MutateRequest.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/MutateRequest.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/MutateRequest.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/MutateRequest.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/NodeConnectorFactory.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/NodeConnectorFactory.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/NodeConnectorFactory.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/NodeConnectorFactory.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/NodeDB.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/NodeDB.java similarity index 97% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/NodeDB.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/NodeDB.java index 912d0ee0d..b97a6e369 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/NodeDB.java +++ b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/NodeDB.java @@ -16,7 +16,7 @@ import com.google.common.collect.Maps; import org.apache.commons.collections.MapUtils; import org.opendaylight.ovsdb.lib.database.DatabaseSchema; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; public class NodeDB { private DatabaseSchema schema; diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/NodeFactory.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/NodeFactory.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/NodeFactory.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/NodeFactory.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBConfigService.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBConfigService.java similarity index 95% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBConfigService.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBConfigService.java index 5deeaeaaf..ff34783f0 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBConfigService.java +++ b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBConfigService.java @@ -14,7 +14,7 @@ import java.util.concurrent.ConcurrentMap; import org.opendaylight.controller.sal.core.Node; import org.opendaylight.controller.sal.utils.Status; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; public interface OVSDBConfigService { public StatusWithUuid insertRow (Node node, String tableName, String parentUUID, Table row); diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBInventoryListener.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBInventoryListener.java similarity index 93% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBInventoryListener.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBInventoryListener.java index 3dec8a531..822da35ba 100644 --- a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBInventoryListener.java +++ b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/OVSDBInventoryListener.java @@ -10,7 +10,7 @@ package org.opendaylight.ovsdb.plugin; import org.opendaylight.controller.sal.core.Node; -import org.opendaylight.ovsdb.lib.table.internal.Table; +import org.opendaylight.ovsdb.lib.table.Table; public interface OVSDBInventoryListener { public void nodeAdded(Node node); diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/OvsdbMessage.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/OvsdbMessage.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/OvsdbMessage.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/OvsdbMessage.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ReadService.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/ReadService.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/ReadService.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/ReadService.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/StatusWithUuid.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/StatusWithUuid.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/StatusWithUuid.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/StatusWithUuid.java diff --git a/ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/UpdateRequest.java b/plugin/src/main/java/org/opendaylight/ovsdb/plugin/UpdateRequest.java similarity index 100% rename from ovsdb/src/main/java/org/opendaylight/ovsdb/plugin/UpdateRequest.java rename to plugin/src/main/java/org/opendaylight/ovsdb/plugin/UpdateRequest.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddBridgeIT.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddBridgeIT.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddBridgeIT.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddBridgeIT.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddPortIT.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddPortIT.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddPortIT.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddPortIT.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddTunnelIT.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddTunnelIT.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddTunnelIT.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddTunnelIT.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddVlanIT.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddVlanIT.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddVlanIT.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestAddVlanIT.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestBase.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestBase.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestBase.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestBase.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestBridgeConfigIT.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestBridgeConfigIT.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestBridgeConfigIT.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestBridgeConfigIT.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestDeletePortIT.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestDeletePortIT.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestDeletePortIT.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestDeletePortIT.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestGetBridgeDomainsIT.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestGetBridgeDomainsIT.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestGetBridgeDomainsIT.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestGetBridgeDomainsIT.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestSetManagerIT.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestSetManagerIT.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestSetManagerIT.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestSetManagerIT.java diff --git a/ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestSetOFControllerIT.java b/plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestSetOFControllerIT.java similarity index 100% rename from ovsdb/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestSetOFControllerIT.java rename to plugin/src/test/java/org/opendaylight/ovsdb/plugin/OvsdbTestSetOFControllerIT.java diff --git a/plugin/src/test/resources/logback.xml b/plugin/src/test/resources/logback.xml new file mode 100644 index 000000000..70118ce54 --- /dev/null +++ b/plugin/src/test/resources/logback.xml @@ -0,0 +1,25 @@ + + + + + + + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ovsdb/src/test/resources/org/opendaylight/ovsdb/lib/message/integration-test.properties b/plugin/src/test/resources/org/opendaylight/ovsdb/lib/message/integration-test.properties similarity index 100% rename from ovsdb/src/test/resources/org/opendaylight/ovsdb/lib/message/integration-test.properties rename to plugin/src/test/resources/org/opendaylight/ovsdb/lib/message/integration-test.properties diff --git a/plugin/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response1.json b/plugin/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response1.json new file mode 100644 index 000000000..21b3f7684 --- /dev/null +++ b/plugin/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response1.json @@ -0,0 +1,89 @@ +{ + "Bridge": { + "788de61c-0e4f-43d8-a068-259e75aabbba": { + "new": { + "controller": [ + "set", + [] + ], + "fail_mode": [ + "set", + [] + ], + "name": "br0", + "ports": [ + "set", + [ + [ + "uuid", + "f6018e7a-7ca5-4e72-a744-a9b434f47011" + ], + [ + "uuid", + "fe3c89fd-2ff3-44d8-9f27-f9c7ac2a693d" + ] + ] + ] + } + } + }, + "Port": { + "f6018e7a-7ca5-4e72-a744-a9b434f47011": { + "new": { + "interfaces": [ + "uuid", + "13548b08-dca3-4d4b-9e9b-f50c237dcb9e" + ], + "name": "vif0", + "tag": [ + "set", + [] + ], + "trunks": [ + "set", + [] + ] + } + }, + "fe3c89fd-2ff3-44d8-9f27-f9c7ac2a693d": { + "new": { + "interfaces": [ + "uuid", + "88ae29fb-8c91-41a9-a14f-a74126e790c0" + ], + "name": "br0", + "tag": [ + "set", + [] + ], + "trunks": [ + "set", + [] + ] + } + } + }, + "Interface": { + "13548b08-dca3-4d4b-9e9b-f50c237dcb9e": { + "new": { + "name": "vif0", + "options": [ + "map", + [["remote_ip","192.168.1.165"]] + ], + "type": "" + } + }, + "88ae29fb-8c91-41a9-a14f-a74126e790c0": { + "new": { + "name": "br0", + "options": [ + "map", + [] + ], + "type": "internal" + } + } + } + +} diff --git a/plugin/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response_sample.json b/plugin/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response_sample.json new file mode 100644 index 000000000..b2149443b --- /dev/null +++ b/plugin/src/test/resources/org/opendaylight/ovsdb/lib/message/monitor_response_sample.json @@ -0,0 +1,104 @@ +{ + "Bridge": { + "788de61c-0e4f-43d8-a068-259e75aabbba": { + "new": { + "controller": [ + "set", + [] + ], + "fail_mode": [ + "set", + [] + ], + "name": "br0", + "ports": [ + "set", + [ + [ + "uuid", + "f6018e7a-7ca5-4e72-a744-a9b434f47011" + ], + [ + "uuid", + "fe3c89fd-2ff3-44d8-9f27-f9c7ac2a693d" + ] + ] + ] + } + } + }, + "Interface": { + "13548b08-dca3-4d4b-9e9b-f50c237dcb9e": { + "new": { + "name": "vif0", + "options": [ + "map", + [] + ], + "type": "" + } + }, + "88ae29fb-8c91-41a9-a14f-a74126e790c0": { + "new": { + "name": "br0", + "options": [ + "map", + [] + ], + "type": "internal" + } + } + }, + "Open_vSwitch": { + "987c42d0-eab0-43d9-a32b-4246973706c2": { + "new": { + "bridges": [ + "uuid", + "788de61c-0e4f-43d8-a068-259e75aabbba" + ], + "cur_cfg": 7, + "manager_options": [ + "set", + [] + ], + "ovs_version": "1.4.3" + } + } + }, + "Port": { + "f6018e7a-7ca5-4e72-a744-a9b434f47011": { + "new": { + "interfaces": [ + "uuid", + "13548b08-dca3-4d4b-9e9b-f50c237dcb9e" + ], + "name": "vif0", + "tag": [ + "set", + [] + ], + "trunks": [ + "set", + [] + ] + } + }, + "fe3c89fd-2ff3-44d8-9f27-f9c7ac2a693d": { + "new": { + "interfaces": [ + "uuid", + "88ae29fb-8c91-41a9-a14f-a74126e790c0" + ], + "name": "br0", + "tag": [ + "set", + [] + ], + "trunks": [ + "set", + [] + ] + } + } + } +} diff --git a/plugin/src/test/resources/org/opendaylight/ovsdb/lib/schema/test_schema.json b/plugin/src/test/resources/org/opendaylight/ovsdb/lib/schema/test_schema.json new file mode 100644 index 000000000..f7f8405e9 --- /dev/null +++ b/plugin/src/test/resources/org/opendaylight/ovsdb/lib/schema/test_schema.json @@ -0,0 +1,1150 @@ +{ + "id": 0, + "result": { + "tables": { + "Port": { + "columns": { + "name": { + "mutable": false, + "type": "string" + }, + "statistics": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "value": "integer", + "max": "unlimited" + } + }, + "vlan_mode": { + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "access", + "native-tagged", + "native-untagged", + "trunk" + ] + ] + }, + "min": 0 + } + }, + "qos": { + "type": { + "key": { + "type": "uuid", + "refTable": "QoS" + }, + "min": 0 + } + }, + "status": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "trunks": { + "type": { + "key": { + "maxInteger": 4095, + "minInteger": 0, + "type": "integer" + }, + "min": 0, + "max": 4096 + } + }, + "mac": { + "type": { + "key": "string", + "min": 0 + } + }, + "interfaces": { + "type": { + "key": { + "type": "uuid", + "refTable": "Interface" + }, + "max": "unlimited" + } + }, + "bond_downdelay": { + "type": "integer" + }, + "bond_mode": { + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "active-backup", + "balance-slb", + "balance-tcp", + "stable" + ] + ] + }, + "min": 0 + } + }, + "bond_updelay": { + "type": "integer" + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "other_config": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "tag": { + "type": { + "key": { + "maxInteger": 4095, + "minInteger": 0, + "type": "integer" + }, + "min": 0 + } + }, + "bond_fake_iface": { + "type": "boolean" + }, + "fake_bridge": { + "type": "boolean" + }, + "lacp": { + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "active", + "off", + "passive" + ] + ] + }, + "min": 0 + } + } + }, + "indexes": [ + [ + "name" + ] + ] + }, + "Manager": { + "columns": { + "is_connected": { + "ephemeral": true, + "type": "boolean" + }, + "target": { + "type": "string" + }, + "other_config": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "max_backoff": { + "type": { + "key": { + "minInteger": 1000, + "type": "integer" + }, + "min": 0 + } + }, + "connection_mode": { + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "in-band", + "out-of-band" + ] + ] + }, + "min": 0 + } + }, + "status": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "inactivity_probe": { + "type": { + "key": "integer", + "min": 0 + } + } + }, + "indexes": [ + [ + "target" + ] + ] + }, + "Bridge": { + "columns": { + "name": { + "mutable": false, + "type": "string" + }, + "flood_vlans": { + "type": { + "key": { + "maxInteger": 4095, + "minInteger": 0, + "type": "integer" + }, + "min": 0, + "max": 4096 + } + }, + "netflow": { + "type": { + "key": { + "type": "uuid", + "refTable": "NetFlow" + }, + "min": 0 + } + }, + "mirrors": { + "type": { + "key": { + "type": "uuid", + "refTable": "Mirror" + }, + "min": 0, + "max": "unlimited" + } + }, + "status": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "datapath_id": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0 + } + }, + "controller": { + "type": { + "key": { + "type": "uuid", + "refTable": "Controller" + }, + "min": 0, + "max": "unlimited" + } + }, + "protocols": { + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "OpenFlow10", + "OpenFlow12", + "OpenFlow13" + ] + ] + }, + "min": 0, + "max": "unlimited" + } + }, + "fail_mode": { + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "secure", + "standalone" + ] + ] + }, + "min": 0 + } + }, + "ports": { + "type": { + "key": { + "type": "uuid", + "refTable": "Port" + }, + "min": 0, + "max": "unlimited" + } + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "flow_tables": { + "type": { + "key": { + "maxInteger": 254, + "minInteger": 0, + "type": "integer" + }, + "min": 0, + "value": { + "type": "uuid", + "refTable": "Flow_Table" + }, + "max": "unlimited" + } + }, + "sflow": { + "type": { + "key": { + "type": "uuid", + "refTable": "sFlow" + }, + "min": 0 + } + }, + "datapath_type": { + "type": "string" + }, + "other_config": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "stp_enable": { + "type": "boolean" + } + }, + "indexes": [ + [ + "name" + ] + ] + }, + "Interface": { + "columns": { + "options": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "name": { + "mutable": false, + "type": "string" + }, + "statistics": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "value": "integer", + "max": "unlimited" + } + }, + "link_speed": { + "ephemeral": true, + "type": { + "key": "integer", + "min": 0 + } + }, + "mtu": { + "ephemeral": true, + "type": { + "key": "integer", + "min": 0 + } + }, + "mac_in_use": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0 + } + }, + "type": { + "type": "string" + }, + "ingress_policing_rate": { + "type": { + "key": { + "minInteger": 0, + "type": "integer" + } + } + }, + "cfm_remote_opstate": { + "ephemeral": true, + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "down", + "up" + ] + ] + }, + "min": 0 + } + }, + "status": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "mac": { + "type": { + "key": "string", + "min": 0 + } + }, + "ofport": { + "type": { + "key": "integer", + "min": 0 + } + }, + "cfm_fault_status": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "max": "unlimited" + } + }, + "duplex": { + "ephemeral": true, + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "full", + "half" + ] + ] + }, + "min": 0 + } + }, + "lacp_current": { + "ephemeral": true, + "type": { + "key": "boolean", + "min": 0 + } + }, + "cfm_fault": { + "ephemeral": true, + "type": { + "key": "boolean", + "min": 0 + } + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "other_config": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "admin_state": { + "ephemeral": true, + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "down", + "up" + ] + ] + }, + "min": 0 + } + }, + "link_state": { + "ephemeral": true, + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "down", + "up" + ] + ] + }, + "min": 0 + } + }, + "cfm_remote_mpids": { + "ephemeral": true, + "type": { + "key": "integer", + "min": 0, + "max": "unlimited" + } + }, + "cfm_mpid": { + "type": { + "key": "integer", + "min": 0 + } + }, + "ofport_request": { + "type": { + "key": { + "maxInteger": 65279, + "minInteger": 1, + "type": "integer" + }, + "min": 0 + } + }, + "ingress_policing_burst": { + "type": { + "key": { + "minInteger": 0, + "type": "integer" + } + } + }, + "cfm_health": { + "ephemeral": true, + "type": { + "key": { + "maxInteger": 100, + "minInteger": 0, + "type": "integer" + }, + "min": 0 + } + }, + "link_resets": { + "ephemeral": true, + "type": { + "key": "integer", + "min": 0 + } + } + }, + "indexes": [ + [ + "name" + ] + ] + }, + "SSL": { + "columns": { + "ca_cert": { + "type": "string" + }, + "private_key": { + "type": "string" + }, + "bootstrap_ca_cert": { + "type": "boolean" + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "certificate": { + "type": "string" + } + }, + "maxRows": 1 + }, + "Open_vSwitch": { + "columns": { + "ovs_version": { + "type": { + "key": "string", + "min": 0 + } + }, + "system_version": { + "type": { + "key": "string", + "min": 0 + } + }, + "bridges": { + "type": { + "key": { + "type": "uuid", + "refTable": "Bridge" + }, + "min": 0, + "max": "unlimited" + } + }, + "statistics": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "other_config": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "next_cfg": { + "type": "integer" + }, + "manager_options": { + "type": { + "key": { + "type": "uuid", + "refTable": "Manager" + }, + "min": 0, + "max": "unlimited" + } + }, + "system_type": { + "type": { + "key": "string", + "min": 0 + } + }, + "ssl": { + "type": { + "key": { + "type": "uuid", + "refTable": "SSL" + }, + "min": 0 + } + }, + "db_version": { + "type": { + "key": "string", + "min": 0 + } + }, + "cur_cfg": { + "type": "integer" + } + }, + "maxRows": 1, + "isRoot": true + }, + "Queue": { + "columns": { + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "other_config": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "dscp": { + "type": { + "key": { + "maxInteger": 63, + "minInteger": 0, + "type": "integer" + }, + "min": 0 + } + } + }, + "isRoot": true + }, + "NetFlow": { + "columns": { + "engine_type": { + "type": { + "key": { + "maxInteger": 255, + "minInteger": 0, + "type": "integer" + }, + "min": 0 + } + }, + "targets": { + "type": { + "key": "string", + "max": "unlimited" + } + }, + "add_id_to_interface": { + "type": "boolean" + }, + "active_timeout": { + "type": { + "key": { + "minInteger": -1, + "type": "integer" + } + } + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "engine_id": { + "type": { + "key": { + "maxInteger": 255, + "minInteger": 0, + "type": "integer" + }, + "min": 0 + } + } + } + }, + "Mirror": { + "columns": { + "name": { + "type": "string" + }, + "output_port": { + "type": { + "key": { + "refType": "weak", + "type": "uuid", + "refTable": "Port" + }, + "min": 0 + } + }, + "output_vlan": { + "type": { + "key": { + "maxInteger": 4095, + "minInteger": 1, + "type": "integer" + }, + "min": 0 + } + }, + "statistics": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "value": "integer", + "max": "unlimited" + } + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "select_dst_port": { + "type": { + "key": { + "refType": "weak", + "type": "uuid", + "refTable": "Port" + }, + "min": 0, + "max": "unlimited" + } + }, + "select_all": { + "type": "boolean" + }, + "select_vlan": { + "type": { + "key": { + "maxInteger": 4095, + "minInteger": 0, + "type": "integer" + }, + "min": 0, + "max": 4096 + } + }, + "select_src_port": { + "type": { + "key": { + "refType": "weak", + "type": "uuid", + "refTable": "Port" + }, + "min": 0, + "max": "unlimited" + } + } + } + }, + "QoS": { + "columns": { + "queues": { + "type": { + "key": { + "maxInteger": 4294967295, + "minInteger": 0, + "type": "integer" + }, + "min": 0, + "value": { + "type": "uuid", + "refTable": "Queue" + }, + "max": "unlimited" + } + }, + "other_config": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "type": { + "type": "string" + } + }, + "isRoot": true + }, + "Controller": { + "columns": { + "is_connected": { + "ephemeral": true, + "type": "boolean" + }, + "enable_async_messages": { + "type": { + "key": "boolean", + "min": 0 + } + }, + "controller_rate_limit": { + "type": { + "key": { + "minInteger": 100, + "type": "integer" + }, + "min": 0 + } + }, + "target": { + "type": "string" + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "other_config": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "local_netmask": { + "type": { + "key": "string", + "min": 0 + } + }, + "local_gateway": { + "type": { + "key": "string", + "min": 0 + } + }, + "max_backoff": { + "type": { + "key": { + "minInteger": 1000, + "type": "integer" + }, + "min": 0 + } + }, + "local_ip": { + "type": { + "key": "string", + "min": 0 + } + }, + "connection_mode": { + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "in-band", + "out-of-band" + ] + ] + }, + "min": 0 + } + }, + "status": { + "ephemeral": true, + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "role": { + "ephemeral": true, + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "master", + "other", + "slave" + ] + ] + }, + "min": 0 + } + }, + "inactivity_probe": { + "type": { + "key": "integer", + "min": 0 + } + }, + "controller_burst_limit": { + "type": { + "key": { + "minInteger": 25, + "type": "integer" + }, + "min": 0 + } + } + } + }, + "Flow_Table": { + "columns": { + "groups": { + "type": { + "key": "string", + "min": 0, + "max": "unlimited" + } + }, + "name": { + "type": { + "key": "string", + "min": 0 + } + }, + "overflow_policy": { + "type": { + "key": { + "type": "string", + "enum": [ + "set", + [ + "evict", + "refuse" + ] + ] + }, + "min": 0 + } + }, + "flow_limit": { + "type": { + "key": { + "minInteger": 0, + "type": "integer" + }, + "min": 0 + } + } + } + }, + "sFlow": { + "columns": { + "polling": { + "type": { + "key": "integer", + "min": 0 + } + }, + "targets": { + "type": { + "key": "string", + "max": "unlimited" + } + }, + "header": { + "type": { + "key": "integer", + "min": 0 + } + }, + "agent": { + "type": { + "key": "string", + "min": 0 + } + }, + "external_ids": { + "type": { + "key": "string", + "min": 0, + "value": "string", + "max": "unlimited" + } + }, + "sampling": { + "type": { + "key": "integer", + "min": 0 + } + } + } + } + }, + "cksum": "2180939265 17455", + "name": "Open_vSwitch", + "version": "6.12.0" + }, + "error": null +} diff --git a/pom.xml b/pom.xml index 39a4ab977..fcb51851f 100755 --- a/pom.xml +++ b/pom.xml @@ -1,32 +1,33 @@ 4.0.0 - - 3.0 - org.opendaylight.ovsdb - commons.ovsdb + ovsdb_commons 1.1.0-SNAPSHOT commons/parent org.opendaylight.ovsdb - ovsdb.project + ovsdb_project 1.0.0-SNAPSHOT pom - - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - scm:git:ssh://git.opendaylight.org:29418/ovsdb.git - https://wiki.opendaylight.org/view/OVSDB_Integration:Main - HEAD - + + 3.0 + - ovsdb - northbound/ovsdb + library + plugin + northbound neutron commons/parent distribution/opendaylight + + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + scm:git:ssh://git.opendaylight.org:29418/ovsdb.git + HEAD + https://wiki.opendaylight.org/view/OVSDB_Integration:Main +