Added more providers/of modules and javadocs.
Split onos-core feature into onos-api and onos-core.
Showing
12 changed files
with
175 additions
and
7 deletions
... | @@ -19,14 +19,19 @@ | ... | @@ -19,14 +19,19 @@ |
19 | <bundle>mvn:com.sun.jersey/jersey-servlet/1.18.1</bundle> | 19 | <bundle>mvn:com.sun.jersey/jersey-servlet/1.18.1</bundle> |
20 | </feature> | 20 | </feature> |
21 | 21 | ||
22 | - <feature name="onos-core" version="1.0.0" | 22 | + <feature name="onos-api" version="1.0.0" |
23 | - description="ONOS core components"> | 23 | + description="ONOS services and model API"> |
24 | <feature>scr</feature> | 24 | <feature>scr</feature> |
25 | <feature>onos-thirdparty-base</feature> | 25 | <feature>onos-thirdparty-base</feature> |
26 | <bundle>mvn:org.onlab.onos/onos-utils-osgi/1.0.0-SNAPSHOT</bundle> | 26 | <bundle>mvn:org.onlab.onos/onos-utils-osgi/1.0.0-SNAPSHOT</bundle> |
27 | <bundle>mvn:org.onlab.onos/onos-utils-rest/1.0.0-SNAPSHOT</bundle> | 27 | <bundle>mvn:org.onlab.onos/onos-utils-rest/1.0.0-SNAPSHOT</bundle> |
28 | 28 | ||
29 | <bundle>mvn:org.onlab.onos/onos-api/1.0.0-SNAPSHOT</bundle> | 29 | <bundle>mvn:org.onlab.onos/onos-api/1.0.0-SNAPSHOT</bundle> |
30 | + </feature> | ||
31 | + | ||
32 | + <feature name="onos-core" version="1.0.0" | ||
33 | + description="ONOS core components"> | ||
34 | + <feature>onos-api</feature> | ||
30 | <bundle>mvn:org.onlab.onos/onos-core/1.0.0-SNAPSHOT</bundle> | 35 | <bundle>mvn:org.onlab.onos/onos-core/1.0.0-SNAPSHOT</bundle> |
31 | </feature> | 36 | </feature> |
32 | 37 | ||
... | @@ -60,6 +65,8 @@ | ... | @@ -60,6 +65,8 @@ |
60 | <bundle>mvn:org.onlab.onos/onos-of-ctl/1.0.0-SNAPSHOT</bundle> | 65 | <bundle>mvn:org.onlab.onos/onos-of-ctl/1.0.0-SNAPSHOT</bundle> |
61 | 66 | ||
62 | <bundle>mvn:org.onlab.onos/onos-of-provider-device/1.0.0-SNAPSHOT</bundle> | 67 | <bundle>mvn:org.onlab.onos/onos-of-provider-device/1.0.0-SNAPSHOT</bundle> |
68 | + <bundle>mvn:org.onlab.onos/onos-of-provider-link/1.0.0-SNAPSHOT</bundle> | ||
69 | + <bundle>mvn:org.onlab.onos/onos-of-provider-host/1.0.0-SNAPSHOT</bundle> | ||
63 | </feature> | 70 | </feature> |
64 | 71 | ||
65 | </features> | 72 | </features> | ... | ... |
... | @@ -15,8 +15,8 @@ public interface DeviceProvider extends Provider { | ... | @@ -15,8 +15,8 @@ public interface DeviceProvider extends Provider { |
15 | * Triggers an asynchronous probe of the specified device, intended to | 15 | * Triggers an asynchronous probe of the specified device, intended to |
16 | * determine whether the host is present or not. An indirect result of this | 16 | * determine whether the host is present or not. An indirect result of this |
17 | * should be invocation of | 17 | * should be invocation of |
18 | - * {@link org.onlab.onos.net.device.DeviceProviderService#deviceConnected(DeviceDescription)} )} or | 18 | + * {@link org.onlab.onos.net.device.DeviceProviderService#deviceConnected} )} or |
19 | - * {@link org.onlab.onos.net.device.DeviceProviderService#deviceDisconnected(DeviceDescription)} | 19 | + * {@link org.onlab.onos.net.device.DeviceProviderService#deviceDisconnected} |
20 | * at some later point in time. | 20 | * at some later point in time. |
21 | * | 21 | * |
22 | * @param device device to be probed | 22 | * @param device device to be probed | ... | ... |
... | @@ -261,7 +261,7 @@ | ... | @@ -261,7 +261,7 @@ |
261 | <title>OpenFlow Providers & Controller | 261 | <title>OpenFlow Providers & Controller |
262 | </title> | 262 | </title> |
263 | <packages> | 263 | <packages> |
264 | - org.onlab.onos.net.provider.of:org.onlab.onos.net.provider.of.*:org.onlab.onos.of.* | 264 | + org.onlab.onos.provider.of.*:org.onlab.onos.of.* |
265 | </packages> | 265 | </packages> |
266 | </group> | 266 | </group> |
267 | <group> | 267 | <group> | ... | ... |
providers/of/device/src/main/java/org/onlab/onos/provider/of/device/impl/OpenFlowDeviceProvider.java
... | @@ -16,7 +16,8 @@ import org.slf4j.Logger; | ... | @@ -16,7 +16,8 @@ import org.slf4j.Logger; |
16 | import org.slf4j.LoggerFactory; | 16 | import org.slf4j.LoggerFactory; |
17 | 17 | ||
18 | /** | 18 | /** |
19 | - * Device provider which uses an OpenFlow controller to detect devices. | 19 | + * Device provider which uses an OpenFlow controller to detect network |
20 | + * infrastructure devices. | ||
20 | */ | 21 | */ |
21 | @Component | 22 | @Component |
22 | public class OpenFlowDeviceProvider extends AbstractProvider implements DeviceProvider { | 23 | public class OpenFlowDeviceProvider extends AbstractProvider implements DeviceProvider { |
... | @@ -54,7 +55,7 @@ public class OpenFlowDeviceProvider extends AbstractProvider implements DevicePr | ... | @@ -54,7 +55,7 @@ public class OpenFlowDeviceProvider extends AbstractProvider implements DevicePr |
54 | 55 | ||
55 | @Override | 56 | @Override |
56 | public void triggerProbe(Device device) { | 57 | public void triggerProbe(Device device) { |
57 | - log.info("Triggerring probe on device {}", device.id()); | 58 | + log.info("Triggering probe on device {}", device.id()); |
58 | } | 59 | } |
59 | 60 | ||
60 | @Override | 61 | @Override | ... | ... |
providers/of/host/pom.xml
0 → 100644
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<project xmlns="http://maven.apache.org/POM/4.0.0" | ||
3 | + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
4 | + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> | ||
5 | + <modelVersion>4.0.0</modelVersion> | ||
6 | + | ||
7 | + <parent> | ||
8 | + <groupId>org.onlab.onos</groupId> | ||
9 | + <artifactId>onos-of-providers</artifactId> | ||
10 | + <version>1.0.0-SNAPSHOT</version> | ||
11 | + <relativePath>../pom.xml</relativePath> | ||
12 | + </parent> | ||
13 | + | ||
14 | + <artifactId>onos-of-provider-host</artifactId> | ||
15 | + <packaging>bundle</packaging> | ||
16 | + | ||
17 | + <description>ONOS OpenFlow protocol host provider</description> | ||
18 | + | ||
19 | +</project> |
providers/of/host/src/main/java/org/onlab/onos/provider/of/host/impl/OpenFlowHostProvider.java
0 → 100644
1 | +package org.onlab.onos.provider.of.host.impl; | ||
2 | + | ||
3 | +import org.apache.felix.scr.annotations.Activate; | ||
4 | +import org.apache.felix.scr.annotations.Component; | ||
5 | +import org.apache.felix.scr.annotations.Deactivate; | ||
6 | +import org.apache.felix.scr.annotations.Reference; | ||
7 | +import org.apache.felix.scr.annotations.ReferenceCardinality; | ||
8 | +import org.onlab.onos.net.Host; | ||
9 | +import org.onlab.onos.net.host.HostProvider; | ||
10 | +import org.onlab.onos.net.host.HostProviderBroker; | ||
11 | +import org.onlab.onos.net.host.HostProviderService; | ||
12 | +import org.onlab.onos.net.provider.AbstractProvider; | ||
13 | +import org.onlab.onos.net.provider.ProviderId; | ||
14 | +import org.slf4j.Logger; | ||
15 | +import org.slf4j.LoggerFactory; | ||
16 | + | ||
17 | +/** | ||
18 | + * Device provider which uses an OpenFlow controller to detect network | ||
19 | + * end-station hosts. | ||
20 | + */ | ||
21 | +@Component | ||
22 | +public class OpenFlowHostProvider extends AbstractProvider implements HostProvider { | ||
23 | + | ||
24 | + private final Logger log = LoggerFactory.getLogger(OpenFlowHostProvider.class); | ||
25 | + | ||
26 | + @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY) | ||
27 | + protected HostProviderBroker providerBroker; | ||
28 | + | ||
29 | + private HostProviderService providerService; | ||
30 | + | ||
31 | +// @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY) | ||
32 | +// protected OpenFlowController controller; | ||
33 | + | ||
34 | + /** | ||
35 | + * Creates an OpenFlow host provider. | ||
36 | + */ | ||
37 | + public OpenFlowHostProvider() { | ||
38 | + super(new ProviderId("org.onlab.onos.provider.of.host")); | ||
39 | + } | ||
40 | + | ||
41 | + @Activate | ||
42 | + public void activate() { | ||
43 | + providerService = providerBroker.register(this); | ||
44 | + log.info("Started"); | ||
45 | + } | ||
46 | + | ||
47 | + @Deactivate | ||
48 | + public void deactivate() { | ||
49 | + providerBroker.unregister(this); | ||
50 | + providerService = null; | ||
51 | + log.info("Stopped"); | ||
52 | + } | ||
53 | + | ||
54 | + @Override | ||
55 | + public void triggerProbe(Host host) { | ||
56 | + log.info("Triggering probe on device {}", host); | ||
57 | + } | ||
58 | +} |
providers/of/link/pom.xml
0 → 100644
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<project xmlns="http://maven.apache.org/POM/4.0.0" | ||
3 | + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
4 | + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> | ||
5 | + <modelVersion>4.0.0</modelVersion> | ||
6 | + | ||
7 | + <parent> | ||
8 | + <groupId>org.onlab.onos</groupId> | ||
9 | + <artifactId>onos-of-providers</artifactId> | ||
10 | + <version>1.0.0-SNAPSHOT</version> | ||
11 | + <relativePath>../pom.xml</relativePath> | ||
12 | + </parent> | ||
13 | + | ||
14 | + <artifactId>onos-of-provider-link</artifactId> | ||
15 | + <packaging>bundle</packaging> | ||
16 | + | ||
17 | + <description>ONOS OpenFlow protocol link provider</description> | ||
18 | + | ||
19 | +</project> |
providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/OpenFlowLinkProvider.java
0 → 100644
1 | +package org.onlab.onos.provider.of.link.impl; | ||
2 | + | ||
3 | +import org.apache.felix.scr.annotations.Activate; | ||
4 | +import org.apache.felix.scr.annotations.Component; | ||
5 | +import org.apache.felix.scr.annotations.Deactivate; | ||
6 | +import org.apache.felix.scr.annotations.Reference; | ||
7 | +import org.apache.felix.scr.annotations.ReferenceCardinality; | ||
8 | +import org.onlab.onos.net.link.LinkProvider; | ||
9 | +import org.onlab.onos.net.link.LinkProviderBroker; | ||
10 | +import org.onlab.onos.net.link.LinkProviderService; | ||
11 | +import org.onlab.onos.net.provider.AbstractProvider; | ||
12 | +import org.onlab.onos.net.provider.ProviderId; | ||
13 | +import org.slf4j.Logger; | ||
14 | +import org.slf4j.LoggerFactory; | ||
15 | + | ||
16 | +/** | ||
17 | + * Device provider which uses an OpenFlow controller to detect network | ||
18 | + * infrastructure links. | ||
19 | + */ | ||
20 | +@Component | ||
21 | +public class OpenFlowLinkProvider extends AbstractProvider implements LinkProvider { | ||
22 | + | ||
23 | + private final Logger log = LoggerFactory.getLogger(OpenFlowLinkProvider.class); | ||
24 | + | ||
25 | + @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY) | ||
26 | + protected LinkProviderBroker providerBroker; | ||
27 | + | ||
28 | + private LinkProviderService providerService; | ||
29 | + | ||
30 | +// @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY) | ||
31 | +// protected OpenFlowController controller; | ||
32 | + | ||
33 | + /** | ||
34 | + * Creates an OpenFlow link provider. | ||
35 | + */ | ||
36 | + public OpenFlowLinkProvider() { | ||
37 | + super(new ProviderId("org.onlab.onos.provider.of.link")); | ||
38 | + } | ||
39 | + | ||
40 | + @Activate | ||
41 | + public void activate() { | ||
42 | + providerService = providerBroker.register(this); | ||
43 | + log.info("Started"); | ||
44 | + } | ||
45 | + | ||
46 | + @Deactivate | ||
47 | + public void deactivate() { | ||
48 | + providerBroker.unregister(this); | ||
49 | + providerService = null; | ||
50 | + log.info("Stopped"); | ||
51 | + } | ||
52 | + | ||
53 | +} |
-
Please register or login to post a comment