Added a shell of a openflow device provider and fixed features.
diff --git a/features/features.xml b/features/features.xml
index 92bff44..59ab54f 100644
--- a/features/features.xml
+++ b/features/features.xml
@@ -55,9 +55,11 @@
<feature>onos-core</feature>
<bundle>mvn:io.netty/netty/3.9.2.Final</bundle>
- <bundle>mvn:org.onlab.onos/openflow-api/1.0.0-SNAPSHOT</bundle>
- <bundle>mvn:org.onlab.onos/openflow-ctl/1.0.0-SNAPSHOT</bundle>
- <bundle>mvn:org.onlab.onos/onos-of-providers/1.0.0-SNAPSHOT</bundle>
+ <bundle>mvn:org.projectfloodlight/openflowj/0.3.8-SNAPSHOT</bundle>
+ <!--bundle>mvn:org.onlab.onos/onos-of-api/1.0.0-SNAPSHOT</bundle-->
+ <bundle>mvn:org.onlab.onos/onos-of-ctl/1.0.0-SNAPSHOT</bundle>
+
+ <bundle>mvn:org.onlab.onos/onos-of-provider-device/1.0.0-SNAPSHOT</bundle>
</feature>
</features>
diff --git a/of/ctl/pom.xml b/of/ctl/pom.xml
index 136678d..5c090cb 100644
--- a/of/ctl/pom.xml
+++ b/of/ctl/pom.xml
@@ -68,7 +68,7 @@
<dependency>
<groupId>org.projectfloodlight</groupId>
<artifactId>openflowj</artifactId>
- <version>0.3.6-SNAPSHOT</version>
+ <version>0.3.8-SNAPSHOT</version>
</dependency>
<!-- Floodlight's dependencies -->
<dependency>
diff --git a/of/openflowj/pom.xml b/of/openflowj/pom.xml
index bc7563a..474672e 100644
--- a/of/openflowj/pom.xml
+++ b/of/openflowj/pom.xml
@@ -59,7 +59,7 @@
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
- <version>15.0</version>
+ <version>17.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
diff --git a/providers/of/device/src/main/java/org/onlab/onos/provider/of/device/impl/OpenFlowDeviceProvider.java b/providers/of/device/src/main/java/org/onlab/onos/provider/of/device/impl/OpenFlowDeviceProvider.java
new file mode 100644
index 0000000..2cd29af
--- /dev/null
+++ b/providers/of/device/src/main/java/org/onlab/onos/provider/of/device/impl/OpenFlowDeviceProvider.java
@@ -0,0 +1,36 @@
+package org.onlab.onos.provider.of.device.impl;
+
+import org.apache.felix.scr.annotations.Activate;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Deactivate;
+import org.apache.felix.scr.annotations.Reference;
+import org.apache.felix.scr.annotations.ReferenceCardinality;
+import org.onlab.onos.net.device.DeviceProviderBroker;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Device provider which uses an OpenFlow controller to detect devices.
+ */
+@Component
+public class OpenFlowDeviceProvider {
+
+ private final Logger log = LoggerFactory.getLogger(OpenFlowDeviceProvider.class);
+
+ @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+ protected DeviceProviderBroker broker;
+
+// @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+// protected OpenFlowController controller;
+
+ @Activate
+ public void activate() {
+ log.info("Started");
+ }
+
+ @Deactivate
+ public void deactivate() {
+ log.info("Stopped");
+ }
+
+}
diff --git a/providers/of/pom.xml b/providers/of/pom.xml
index 125849d..4958848 100644
--- a/providers/of/pom.xml
+++ b/providers/of/pom.xml
@@ -17,15 +17,12 @@
<description>ONOS OpenFlow protocol adapters</description>
<modules>
+ <module>device</module>
</modules>
<dependencies>
<dependency>
<groupId>org.onlab.onos</groupId>
- <artifactId>onos-api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.onlab.onos</groupId>
<artifactId>onos-of-api</artifactId>
</dependency>
</dependencies>
diff --git a/providers/pom.xml b/providers/pom.xml
index 1944c88..2cb0b96 100644
--- a/providers/pom.xml
+++ b/providers/pom.xml
@@ -26,11 +26,20 @@
<artifactId>onos-api</artifactId>
<version>${project.version}</version>
</dependency>
+
<dependency>
- <groupId>org.onlab.onos</groupId>
- <artifactId>onos-of-api</artifactId>
- <version>${project.version}</version>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.scr.annotations</artifactId>
</dependency>
</dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
</project>