ONOS Network Troubleshooting System

Newest Commit changes:

1. Add unit tests.
2. Fix review comments.
3. Add support to BUCK.

Could you please make a Code Review, we wish to hear anything from you :)

Thank you very much!

----------------------------------------------------

ONOS Network Troubleshooting System

Modularity design. In present, include these tow module:
1. Routing Loop Detection

Welcome your contribution for more modules in the future...

Beijing University of Posts and Telecommunications

new: withdraw blackhole tracing for redesign;
     fix obvious checkstyle problem.

Change-Id: Id6d3aa0bc00c8da8ac046e6903f17cfdf954d919
diff --git a/apps/network-troubleshoot/app/app.xml b/apps/network-troubleshoot/app/app.xml
new file mode 100644
index 0000000..a81cf6d
--- /dev/null
+++ b/apps/network-troubleshoot/app/app.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright 2015-present 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.
+  -->
+<app name="org.onosproject.fnl.Network.Troubleshoot" category="Core" version="${project.version}"
+     title="Network TroubleShoot SubSystem"
+     originUrl="http://www.bupt.edu.cn" origin="FNLab, BUPT"
+     features="${project.artifactId}"
+     featuresRepo="mvn:${project.groupId}/${project.artifactId}/${project.version}/xml/features"
+     url="https://wiki.onosproject.org/display/ONOS/Network+TroubleShooting+Module">
+
+    <description>${project.description}</description>
+
+    <artifact>mvn:${project.groupId}/onos-network-troubleshoot-api/${project.version}</artifact>
+    <artifact>mvn:${project.groupId}/onos-network-troubleshoot-core/${project.version}</artifact>
+    <artifact>mvn:${project.groupId}/onos-network-troubleshoot-cli/${project.version}</artifact>
+
+</app>
diff --git a/apps/network-troubleshoot/app/features.xml b/apps/network-troubleshoot/app/features.xml
new file mode 100644
index 0000000..266db1e
--- /dev/null
+++ b/apps/network-troubleshoot/app/features.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ Copyright 2015-present 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.
+  -->
+<features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
+          name="${project.artifactId}-${project.version}">
+
+    <feature name="${project.artifactId}" version="${project.version}"
+             description="${project.description}">
+
+        <bundle>mvn:${project.groupId}/onos-network-troubleshoot-api/${project.version}</bundle>
+        <bundle>mvn:${project.groupId}/onos-network-troubleshoot-core/${project.version}</bundle>
+        <bundle>mvn:${project.groupId}/onos-network-troubleshoot-cli/${project.version}</bundle>
+
+    </feature>
+
+</features>
diff --git a/apps/network-troubleshoot/app/pom.xml b/apps/network-troubleshoot/app/pom.xml
new file mode 100644
index 0000000..90bffa3
--- /dev/null
+++ b/apps/network-troubleshoot/app/pom.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright 2015-present 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/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.onosproject</groupId>
+        <artifactId>onos-network-troubleshoot</artifactId>
+        <version>1.10.0-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>onos-network-troubleshoot-app</artifactId>
+    <packaging>pom</packaging>
+
+    <description>ONOS Network TroubleShoot SubSystem</description>
+
+    <dependencies>
+
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-network-troubleshoot-api</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-network-troubleshoot-cli</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-network-troubleshoot-core</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+    </dependencies>
+
+</project>