summaryrefslogtreecommitdiffstats
path: root/framework/src/onos/docs
diff options
context:
space:
mode:
authorAshlee Young <ashlee@onosfw.com>2015-09-09 22:15:21 -0700
committerAshlee Young <ashlee@onosfw.com>2015-09-09 22:15:21 -0700
commit13d05bc8458758ee39cb829098241e89616717ee (patch)
tree22a4d1ce65f15952f07a3df5af4b462b4697cb3a /framework/src/onos/docs
parent6139282e1e93c2322076de4b91b1c85d0bc4a8b3 (diff)
ONOS checkin based on commit tag e796610b1f721d02f9b0e213cf6f7790c10ecd60
Change-Id: Ife8810491034fe7becdba75dda20de4267bd15cd
Diffstat (limited to 'framework/src/onos/docs')
-rw-r--r--framework/src/onos/docs/external-apis3
-rw-r--r--framework/src/onos/docs/external-excludes51
-rw-r--r--framework/src/onos/docs/external-incubator-apis2
-rw-r--r--framework/src/onos/docs/external.xml74
-rw-r--r--framework/src/onos/docs/internal-apis4
-rw-r--r--framework/src/onos/docs/internal-apps27
-rw-r--r--framework/src/onos/docs/internal-core7
-rw-r--r--framework/src/onos/docs/internal-drivers2
-rw-r--r--framework/src/onos/docs/internal-excludes5
-rw-r--r--framework/src/onos/docs/internal-gui-rest-cli4
-rw-r--r--framework/src/onos/docs/internal-incubator9
-rw-r--r--framework/src/onos/docs/internal-incubator-apis1
-rw-r--r--framework/src/onos/docs/internal-netconf1
-rw-r--r--framework/src/onos/docs/internal-openflow2
-rw-r--r--framework/src/onos/docs/internal-ovsdb2
-rw-r--r--framework/src/onos/docs/internal-pcep2
-rw-r--r--framework/src/onos/docs/internal-providers1
-rw-r--r--framework/src/onos/docs/internal-stores1
-rw-r--r--framework/src/onos/docs/internal-test-apps7
-rw-r--r--framework/src/onos/docs/internal.xml122
-rw-r--r--framework/src/onos/docs/src/main/javadoc/doc-files/onos-subsystem.pngbin0 -> 143486 bytes
-rw-r--r--framework/src/onos/docs/src/main/javadoc/doc-files/onos-subsystems.pngbin0 -> 104673 bytes
-rw-r--r--framework/src/onos/docs/src/main/javadoc/doc-files/onos-tiers.pngbin0 -> 42953 bytes
-rw-r--r--framework/src/onos/docs/src/main/javadoc/overview.html90
-rw-r--r--framework/src/onos/docs/utils1
25 files changed, 418 insertions, 0 deletions
diff --git a/framework/src/onos/docs/external-apis b/framework/src/onos/docs/external-apis
new file mode 100644
index 00000000..4e18664b
--- /dev/null
+++ b/framework/src/onos/docs/external-apis
@@ -0,0 +1,3 @@
+org.onosproject
+org.onosproject.*
+org.onosproject.rest \ No newline at end of file
diff --git a/framework/src/onos/docs/external-excludes b/framework/src/onos/docs/external-excludes
new file mode 100644
index 00000000..34329f19
--- /dev/null
+++ b/framework/src/onos/docs/external-excludes
@@ -0,0 +1,51 @@
+*.impl
+*.impl.*
+
+org.onlab.jdvue*
+org.onlab.stc*
+
+org.onlab.thirdparty
+org.onosproject.provider*
+org.onosproject.rest
+org.onosproject.cli*
+org.onosproject.tvue
+org.onosproject.dhcp
+org.onosproject.foo
+org.onosproject.mobility
+org.onosproject.proxyarp
+org.onosproject.fwd
+org.onosproject.ifwd
+org.onosproject.optical
+org.onosproject.config
+org.onosproject.calendar
+org.onosproject.sdnip*
+org.onosproject.oecfg
+org.onosproject.metrics
+org.onosproject.store.ecmap
+org.onosproject.store.flow
+org.onosproject.store.serializers*
+org.onosproject.openflow*
+org.onosproject.common*
+org.onosproject.routing*
+org.onosproject.bgprouter
+org.onosproject.intentperf
+org.onosproject.maven
+org.onosproject.cordfabric*
+org.onosproject.driver*
+org.onosproject.segmentrouting*
+org.onosproject.reactive*
+org.onosproject.distributedprimitives*
+org.onosproject.messagingperf*
+org.onosproject.virtualbng*
+org.onosproject.election*
+org.onosproject.demo*
+org.onosproject.xosintegration*
+org.onosproject.app.vtn*
+org.onosproject.ovsdb*
+org.onosproject.pcep*
+org.onosproject.aaa
+org.onosproject.acl*
+org.onosproject.cip*
+org.onos.acl*
+org.onosproject.vtn*
+org.onosproject.flowanalyzer
diff --git a/framework/src/onos/docs/external-incubator-apis b/framework/src/onos/docs/external-incubator-apis
new file mode 100644
index 00000000..1e3bd7a3
--- /dev/null
+++ b/framework/src/onos/docs/external-incubator-apis
@@ -0,0 +1,2 @@
+org.onosproject.exp
+org.onosproject.incubator.*
diff --git a/framework/src/onos/docs/external.xml b/framework/src/onos/docs/external.xml
new file mode 100644
index 00000000..1f020548
--- /dev/null
+++ b/framework/src/onos/docs/external.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Copyright 2014 Open Networking Laboratory
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <prerequisites>
+ <maven>3.0.0</maven>
+ </prerequisites>
+
+ <parent>
+ <groupId>org.onosproject</groupId>
+ <artifactId>onos</artifactId>
+ <version>1.3.0-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>onos-docs-external</artifactId>
+ <packaging>pom</packaging>
+
+ <description>ONOS Java API documentation</description>
+
+ <modules>
+ <module>..</module>
+ </modules>
+
+ <url>http://onosproject.org/</url>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.10.1</version>
+ <configuration>
+ <show>package</show>
+ <excludePackageNames>@external-excludes</excludePackageNames>
+ <docfilessubdirs>true</docfilessubdirs>
+ <doctitle>ONOS Java API (1.3.0-SNAPSHOT)</doctitle>
+ <groups>
+ <group>
+ <title>Network Model &amp; Services</title>
+ <packages>@external-apis</packages>
+ </group>
+ <group>
+ <title>Incubator for Network Model &amp; Services</title>
+ <packages>@external-incubator-apis</packages>
+ </group>
+ <group>
+ <title>Utilities</title>
+ <packages>@utils</packages>
+ </group>
+ </groups>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/framework/src/onos/docs/internal-apis b/framework/src/onos/docs/internal-apis
new file mode 100644
index 00000000..9d8079a5
--- /dev/null
+++ b/framework/src/onos/docs/internal-apis
@@ -0,0 +1,4 @@
+org.onosproject
+org.onosproject.*
+org.onosproject.rest
+org.onosproject.security
diff --git a/framework/src/onos/docs/internal-apps b/framework/src/onos/docs/internal-apps
new file mode 100644
index 00000000..8c4a493f
--- /dev/null
+++ b/framework/src/onos/docs/internal-apps
@@ -0,0 +1,27 @@
+org.onosproject.app.*
+
+org.onos.acl*
+org.onosproject.acl*
+org.onosproject.aaa
+org.onosproject.fwd
+org.onosproject.dhcp*
+org.onosproject.flowanalyzer
+org.onosproject.mobility
+org.onosproject.proxyarp
+org.onosproject.calendar
+org.onosproject.olt*
+org.onosproject.optical*
+org.onosproject.sdnip
+org.onosproject.sdnip.*
+org.onosproject.config
+org.onosproject.routing
+org.onosproject.routing*
+org.onosproject.bgprouter
+org.onosproject.segmentrouting*
+org.onosproject.reactive.routing*
+org.onosproject.messagingperf
+org.onosproject.virtualbng*
+org.onosproject.cordfabric*
+org.onosproject.xosintegration*
+org.onosproject.cip*
+org.onosproject.vtn*
diff --git a/framework/src/onos/docs/internal-core b/framework/src/onos/docs/internal-core
new file mode 100644
index 00000000..8f242822
--- /dev/null
+++ b/framework/src/onos/docs/internal-core
@@ -0,0 +1,7 @@
+*.impl
+*.impl.*
+
+org.onosproject.json
+org.onosproject.json.*
+:org.onosproject.common.*
+org.onosproject.security.*
diff --git a/framework/src/onos/docs/internal-drivers b/framework/src/onos/docs/internal-drivers
new file mode 100644
index 00000000..fb2dea44
--- /dev/null
+++ b/framework/src/onos/docs/internal-drivers
@@ -0,0 +1,2 @@
+org.onosproject.driver
+org.onosproject.driver.*
diff --git a/framework/src/onos/docs/internal-excludes b/framework/src/onos/docs/internal-excludes
new file mode 100644
index 00000000..9876ccea
--- /dev/null
+++ b/framework/src/onos/docs/internal-excludes
@@ -0,0 +1,5 @@
+org.onlab.jdvue*
+org.onlab.stc*
+org.onlab.thirdparty
+org.onosproject.oecfg
+org.onosproject.maven
diff --git a/framework/src/onos/docs/internal-gui-rest-cli b/framework/src/onos/docs/internal-gui-rest-cli
new file mode 100644
index 00000000..7b529c00
--- /dev/null
+++ b/framework/src/onos/docs/internal-gui-rest-cli
@@ -0,0 +1,4 @@
+org.onosproject.ui.impl*
+org.onosproject.rest.*
+org.onosproject.cli*
+org.onosproject.codec.impl
diff --git a/framework/src/onos/docs/internal-incubator b/framework/src/onos/docs/internal-incubator
new file mode 100644
index 00000000..619bbb90
--- /dev/null
+++ b/framework/src/onos/docs/internal-incubator
@@ -0,0 +1,9 @@
+org.onosproject.incubator.net.impl
+org.onosproject.incubator.store.impl
+org.onosproject.incubator.net.resource.label.impl
+org.onosproject.incubator.store.resource.impl
+org.onosproject.incubator.net.tunnel.impl
+org.onosproject.incubator.store.tunnel.impl
+org.onosproject.incubator.net.config.impl
+org.onosproject.incubator.net.domain.impl
+org.onosproject.incubator.store.config.impl
diff --git a/framework/src/onos/docs/internal-incubator-apis b/framework/src/onos/docs/internal-incubator-apis
new file mode 100644
index 00000000..df9ddbcc
--- /dev/null
+++ b/framework/src/onos/docs/internal-incubator-apis
@@ -0,0 +1 @@
+org.onosproject.incubator*
diff --git a/framework/src/onos/docs/internal-netconf b/framework/src/onos/docs/internal-netconf
new file mode 100644
index 00000000..40c159f4
--- /dev/null
+++ b/framework/src/onos/docs/internal-netconf
@@ -0,0 +1 @@
+org.onosproject.provider.netconf*
diff --git a/framework/src/onos/docs/internal-openflow b/framework/src/onos/docs/internal-openflow
new file mode 100644
index 00000000..c84cf137
--- /dev/null
+++ b/framework/src/onos/docs/internal-openflow
@@ -0,0 +1,2 @@
+org.onosproject.openflow.*
+org.onosproject.provider.of.*
diff --git a/framework/src/onos/docs/internal-ovsdb b/framework/src/onos/docs/internal-ovsdb
new file mode 100644
index 00000000..4b4ccb77
--- /dev/null
+++ b/framework/src/onos/docs/internal-ovsdb
@@ -0,0 +1,2 @@
+org.onosproject.provider.ovsdb*
+org.onosproject.ovsdb*
diff --git a/framework/src/onos/docs/internal-pcep b/framework/src/onos/docs/internal-pcep
new file mode 100644
index 00000000..8d105144
--- /dev/null
+++ b/framework/src/onos/docs/internal-pcep
@@ -0,0 +1,2 @@
+org.onosproject.pcep*
+org.onosproject.pcepio*
diff --git a/framework/src/onos/docs/internal-providers b/framework/src/onos/docs/internal-providers
new file mode 100644
index 00000000..832fb247
--- /dev/null
+++ b/framework/src/onos/docs/internal-providers
@@ -0,0 +1 @@
+org.onosproject.provider.*
diff --git a/framework/src/onos/docs/internal-stores b/framework/src/onos/docs/internal-stores
new file mode 100644
index 00000000..13c00431
--- /dev/null
+++ b/framework/src/onos/docs/internal-stores
@@ -0,0 +1 @@
+org.onosproject.store.*
diff --git a/framework/src/onos/docs/internal-test-apps b/framework/src/onos/docs/internal-test-apps
new file mode 100644
index 00000000..bc5276cf
--- /dev/null
+++ b/framework/src/onos/docs/internal-test-apps
@@ -0,0 +1,7 @@
+org.onosproject.metrics.*
+org.onosproject.demo*
+org.onosproject.election*
+org.onosproject.distributedprimitives*
+org.onosproject.intentperf*
+org.onosproject.messagingperf*
+org.onosproject.optical.testapp*
diff --git a/framework/src/onos/docs/internal.xml b/framework/src/onos/docs/internal.xml
new file mode 100644
index 00000000..bcb1215d
--- /dev/null
+++ b/framework/src/onos/docs/internal.xml
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Copyright 2014 Open Networking Laboratory
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <prerequisites>
+ <maven>3.0.0</maven>
+ </prerequisites>
+
+ <parent>
+ <groupId>org.onosproject</groupId>
+ <artifactId>onos</artifactId>
+ <version>1.3.0-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>onos-docs</artifactId>
+ <packaging>pom</packaging>
+
+ <description>ONOS Java API documentation</description>
+
+ <modules>
+ <module>..</module>
+ </modules>
+
+ <url>http://onosproject.org/</url>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.10.3</version>
+ <configuration>
+ <show>package</show>
+ <docfilessubdirs>true</docfilessubdirs>
+ <doctitle>ONOS Java API (1.3.0-SNAPSHOT)</doctitle>
+ <excludePackageNames>@internal-excludes</excludePackageNames>
+ <groups>
+ <group>
+ <title>Network Model &amp; Services</title>
+ <packages>@internal-apis</packages>
+ </group>
+ <group>
+ <title>Incubator for Network Model &amp; Services</title>
+ <packages>@internal-incubator-apis</packages>
+ </group>
+ <group>
+ <title>Core Subsystems</title>
+ <packages>@internal-core</packages>
+ </group>
+ <group>
+ <title>Distributed Stores</title>
+ <packages>@internal-stores</packages>
+ </group>
+ <group>
+ <title>Incubator for Core Subsystems &amp; Distributed Stores</title>
+ <packages>@internal-incubator</packages>
+ </group>
+ <group>
+ <title>OpenFlow Providers &amp; Controller</title>
+ <packages>@internal-openflow</packages>
+ </group>
+ <group>
+ <title>NetConf Providers</title>
+ <packages>@internal-netconf</packages>
+ </group>
+ <group>
+ <title>OVSDB Providers</title>
+ <packages>@internal-ovsdb</packages>
+ </group>
+ <group>
+ <title>PCEP Providers</title>
+ <packages>@internal-pcep</packages>
+ </group>
+ <group>
+ <title>Other Providers</title>
+ <packages>@internal-providers</packages>
+ </group>
+ <group>
+ <title>Built-in Device Drivers</title>
+ <packages>@internal-drivers</packages>
+ </group>
+ <group>
+ <title>Utilities</title>
+ <packages>@utils</packages>
+ </group>
+ <group>
+ <title>GUI, REST &amp; Command-Line</title>
+ <packages>@internal-gui-rest-cli</packages>
+ </group>
+ <group>
+ <title>Builtin Applications</title>
+ <packages>@internal-apps</packages>
+ </group>
+ <group>
+ <title>Test Instrumentation &amp; Applications</title>
+ <packages>@internal-test-apps</packages>
+ </group>
+ </groups>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/framework/src/onos/docs/src/main/javadoc/doc-files/onos-subsystem.png b/framework/src/onos/docs/src/main/javadoc/doc-files/onos-subsystem.png
new file mode 100644
index 00000000..1b16b0b5
--- /dev/null
+++ b/framework/src/onos/docs/src/main/javadoc/doc-files/onos-subsystem.png
Binary files differ
diff --git a/framework/src/onos/docs/src/main/javadoc/doc-files/onos-subsystems.png b/framework/src/onos/docs/src/main/javadoc/doc-files/onos-subsystems.png
new file mode 100644
index 00000000..a6100c52
--- /dev/null
+++ b/framework/src/onos/docs/src/main/javadoc/doc-files/onos-subsystems.png
Binary files differ
diff --git a/framework/src/onos/docs/src/main/javadoc/doc-files/onos-tiers.png b/framework/src/onos/docs/src/main/javadoc/doc-files/onos-tiers.png
new file mode 100644
index 00000000..bbacfc8d
--- /dev/null
+++ b/framework/src/onos/docs/src/main/javadoc/doc-files/onos-tiers.png
Binary files differ
diff --git a/framework/src/onos/docs/src/main/javadoc/overview.html b/framework/src/onos/docs/src/main/javadoc/overview.html
new file mode 100644
index 00000000..d3712ab4
--- /dev/null
+++ b/framework/src/onos/docs/src/main/javadoc/overview.html
@@ -0,0 +1,90 @@
+<!--
+ ~ Copyright 2014 Open Networking Laboratory
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+<html>
+<body>
+<p>
+ ONOS architecture is strictly segmented into a <em>protocol-agnostic system
+ core</em> tier and the <em>protocol-aware providers</em> tier as shown in
+ the figure below:<br>
+ <img src="doc-files/onos-tiers.png" alt="ONOS architecture tiers">
+</p>
+
+<p>
+ The <em>ONOS core</em> is responsible for tracking information about the
+ network environment and distributing it to the applications either
+ synchronously via query or asynchronously via listener callbacks. The
+ core is also responsible for persisting select state and synchronizing state
+ among the cluster peers.
+</p>
+
+<p>
+ The <em>protocol-aware providers</em> are responsible for interacting with
+ the network environment using various control and configuration protocols
+ and supplying such sensory data to the core. Some providers may also need to
+ accept control edicts from the core and apply them to the environment
+ using the appropriate protocol-specific means.
+</p>
+
+<p>
+ The figure below provides a visual inventory of the various ONOS subsystems.
+ The ones with the gray outline represent either work in progress features
+ planned for release in 2015.<br>
+ <img src="doc-files/onos-subsystems.png" alt="ONOS architecture tiers">
+
+</p>
+
+<p>
+ The following diagram describes the general structure of each ONOS subsystem:
+ <br>
+ <img src="doc-files/onos-subsystem.png" alt="ONOS subsystem structure"><br>
+ For example, the device-subsystem comprises of a core
+ {@link org.onosproject.net.device.impl.DeviceManager},
+ which exposes a north-bound
+ {@link org.onosproject.net.device.DeviceService} through which applications or other core components
+ can learn about the global infrastructure device inventory and through
+ which they can also subscribe for asynchronous {@link org.onosproject.net.device.DeviceEvent}
+ notifications via the {@link org.onosproject.net.device.DeviceListener} mechanism. A set of
+ administrative actions can be performed via {@link org.onosproject.net.device.DeviceAdminService},
+ e.g. setting mastership role, removing a decommissioned device.
+</p>
+
+<p>
+ On the south-bound side, the core {@link org.onosproject.net.device.impl.DeviceManager}
+ exposes a {@link org.onosproject.net.device.DeviceProviderRegistry} through which any number of
+ {@link org.onosproject.net.device.DeviceProvider} entities can register and in turn obtain a
+ {@link org.onosproject.net.device.DeviceProviderService}. Device and port information can then be
+ supplied to the core by each provider through the provider service issued
+ to them. When a provider unregisters, its {@link org.onosproject.net.device.DeviceProviderService}
+ will be invalidated and can no longer be used for interacting with the
+ core.
+</p>
+
+<p>
+ Within the core, the tasks of indexing, persisting and synchronizing the
+ global device and port state with the cluster peers falls on the
+ {@link org.onosproject.net.device.DeviceStore}.
+</p>
+
+<p>
+ Similar structure applies to the link subsystem, host subsystem and others.
+</p>
+
+<p>
+ <em>More information to come later...</em>
+</p>
+
+</body>
+</html>
diff --git a/framework/src/onos/docs/utils b/framework/src/onos/docs/utils
new file mode 100644
index 00000000..b4efc06f
--- /dev/null
+++ b/framework/src/onos/docs/utils
@@ -0,0 +1 @@
+org.onlab.*