Sanjay S
Committed by Gerrit Code Review

Netconf Device Provider Plugin to discover and monitor NETCONF supported Devices.

Change-Id: I6d32c966fd4e9c3581db8285e2d712b6bffdb65c
......@@ -130,4 +130,10 @@
<bundle>mvn:org.onosproject/onos-core-trivial/@ONOS-VERSION</bundle>
</feature>
<feature name="onos-netconf" version="@FEATURE-VERSION"
description="ONOS Netconf providers">
<feature>onos-api</feature>
<bundle>mvn:org.onosproject/onos-netconf-provider-device/@ONOS-VERSION</bundle>
</feature>
</features>
......
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright 2015 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>
<parent>
<groupId>org.onosproject</groupId>
<artifactId>onos-netconf-providers</artifactId>
<version>1.2.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>onos-netconf-provider-device</artifactId>
<packaging>bundle</packaging>
<description>ONOS Netconf protocol device provider</description>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.3</version>
<configuration>
<filters>
<filter>
<artifact>com.tailf:JNC</artifact>
<includes>
<include>com/tailf/jnc/**</include>
</includes>
</filter>
<filter>
<artifact>ch.ethz.ganymed:ganymed-ssh2</artifact>
<includes>
<include>ch/ethz/ssh2/**</include>
</includes>
</filter>
<filter>
<artifact>org.jdom:jdom2</artifact>
<includes>
<include>org/jdom2/**</include>
</includes>
</filter>
</filters>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-scr-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Export-Package>
com.tailf.jnc,
ch.ethz.ssh2,
ch.ethz.ssh2.auth,
ch.ethz.ssh2.channel,
ch.ethz.ssh2.crypto,
ch.ethz.ssh2.crypto.cipher,
ch.ethz.ssh2.crypto.dh,
ch.ethz.ssh2.crypto.digest,
ch.ethz.ssh2.log,
ch.ethz.ssh2.packets,
ch.ethz.ssh2.server,
ch.ethz.ssh2.sftp,
ch.ethz.ssh2.signature,
ch.ethz.ssh2.transport,
ch.ethz.ssh2.util,
org.jdom2,
org.jdom2.input,
org.jdom2.output,
org.jdom2.adapters,
org.jdom2.filter,
org.jdom2.internal,
org.jdom2.located,
org.jdom2.transform,
org.jdom2.util,
org.jdom2.xpath,
org.jdom2.input.sax,
org.jdom2.input.stax,
org.jdom2.output.support,
org.jdom2.xpath.jaxen,
org.jdom2.xpath.util
</Export-Package>
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>org.onosproject</groupId>
<artifactId>onos-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.compendium</artifactId>
</dependency>
<dependency>
<groupId>ch.ethz.ganymed</groupId>
<artifactId>ganymed-ssh2</artifactId>
<version>262</version>
</dependency>
<dependency>
<!-- TODO: change this appropriately when the official TailF JNC is available -->
<groupId>org.onosproject</groupId>
<artifactId>jnc</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.jdom</groupId>
<artifactId>jdom2</artifactId>
<version>2.0.5</version>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1.4</version>
<optional>true</optional>
</dependency>
</dependencies>
</project>
/*
* Copyright 2015 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.
*/
/**
* Provider that uses Netconf capability request as a means of infrastructure device discovery.
*/
package org.onosproject.provider.netconf.device.impl;
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright 2015 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>
<parent>
<groupId>org.onosproject</groupId>
<artifactId>onos-providers</artifactId>
<version>1.2.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>onos-netconf-providers</artifactId>
<packaging>pom</packaging>
<description>ONOS Netconf protocol adapters</description>
<modules>
<module>device</module>
</modules>
<dependencies>
<dependency>
<groupId>org.onosproject</groupId>
<artifactId>onos-api</artifactId>
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
</dependencies>
</project>
......@@ -35,6 +35,7 @@
<module>openflow</module>
<module>lldp</module>
<module>host</module>
<module>netconf</module>
<module>null</module>
</modules>
......
#
# Instance-specific configurations, in this case, the number of
# devices per node.
#
devConfigs = cisco:cisco@192.168.56.20:2022:inactive,sdn:rocks@192.168.56.30:22:inactive
#
# Number of ports per device. This is global to all devices
# on all instances.
#
# numPorts = 8