<?xml version="1.0" encoding="UTF-8"?>
<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.opendaylight.odlparent</groupId>
+ <artifactId>odlparent</artifactId>
+ <version>1.5.0-SNAPSHOT</version>
+ <relativePath/>
+ </parent>
+
<groupId>org.opendaylight.openflowjava</groupId>
<artifactId>openflow-protocol-parent</artifactId>
- <version>0.5-SNAPSHOT</version>
+ <version>0.6.0-SNAPSHOT</version>
+ <name>openflowjava</name> <!-- Used by Sonar to set project name -->
<packaging>pom</packaging>
+
<modules>
+ <module>openflowjava-config</module>
<module>openflow-protocol-api</module>
<module>openflow-protocol-spi</module>
<module>util</module>
<module>openflow-protocol-impl</module>
<module>openflow-protocol-it</module>
- <module>feature</module>
+ <module>features</module>
<module>simple-client</module>
</modules>
<scm>
<exam.version>3.0.0</exam.version>
<url.version>1.5.0</url.version>
<enunciate.version>1.26.2</enunciate.version>
- <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
- <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+ <jmxGeneratorPath>${project.build.directory}/yang-gen-config</jmxGeneratorPath>
+ <karaf.distro.empty.version>1.5.0-SNAPSHOT</karaf.distro.empty.version>
+ <salGeneratorPath>${project.build.directory}/yang-gen-sal</salGeneratorPath>
<sonar.branch>${user.name}-private-view</sonar.branch>
<sonar.skippedModules>org.openflow.openflowj,net.sf.jung2</sonar.skippedModules>
<logback.version>1.0.9</logback.version>
<slf4j.version>1.7.2</slf4j.version>
- <yang.prototype.version>1.1-SNAPSHOT</yang.prototype.version>
- <ietf.model.version>2010.09.24.4-SNAPSHOT</ietf.model.version>
- <yang.ext.version>2013.09.07.4-SNAPSHOT</yang.ext.version>
+ <yang.prototype.version>1.2.0-SNAPSHOT</yang.prototype.version>
+ <ietf.model.version>2010.09.24.7-SNAPSHOT</ietf.model.version>
+ <yang.ext.version>2013.09.07.7-SNAPSHOT</yang.ext.version>
<maven.bundle.version>2.4.0</maven.bundle.version>
- <guava.version>14.0.1</guava.version>
- <netty.version>4.0.19.Final</netty.version>
+ <guava.version>14.0.1</guava.version>
+ <netty.version>4.0.23.Final</netty.version>
<releaseplugin.version>2.3.2</releaseplugin.version>
- <yangtools.version>0.6.2-SNAPSHOT</yangtools.version>
- <yangtools.generator.version>0.6.2-SNAPSHOT</yangtools.generator.version>
- <config.version>0.2.5-SNAPSHOT</config.version>
+ <yangtools.version>0.7.0-SNAPSHOT</yangtools.version>
+ <yangtools.generator.version>0.7.0-SNAPSHOT</yangtools.generator.version>
+ <mdsal.version>1.2.0-SNAPSHOT</mdsal.version>
+ <config.version>0.3.0-SNAPSHOT</config.version>
+
+ <!-- Sonar config -->
+ <sonar-jacoco-listeners.version>2.4</sonar-jacoco-listeners.version>
+ <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+ <sonar.jacoco.reportPath>target/code-coverage/jacoco.exec</sonar.jacoco.reportPath>
+ <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
+ <sonar.profile>Sonar way with Findbugs</sonar.profile>
</properties>
<pluginRepositories>
<snapshots>
<enabled>false</enabled>
</snapshots>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
</pluginRepository>
<!-- OpenDayLight Snapshot artifact -->
<pluginRepository>
<id>opendaylight-snapshot</id>
<url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
</repository>
<!-- OpenDayLight Snapshot artifact -->
<repository>
<id>opendaylight-snapshot</id>
<name>opendaylight-snapshot</name>
<url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
<releases>
<enabled>false</enabled>
</releases>
<dependencyManagement>
<dependencies>
+ <!-- feature dependencies -->
+ <dependency>
+ <groupId>org.opendaylight.yangtools</groupId>
+ <artifactId>features-yangtools</artifactId>
+ <version>${yangtools.version}</version>
+ <classifier>features</classifier>
+ <type>xml</type>
+ </dependency>
+ <dependency>
+ <groupId>org.opendaylight.controller</groupId>
+ <artifactId>features-config</artifactId>
+ <version>${config.version}</version>
+ <classifier>features</classifier>
+ <type>xml</type>
+ </dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<artifactId>netty-handler</artifactId>
<version>${netty.version}</version>
</dependency>
+ <dependency>
+ <groupId>io.netty</groupId>
+ <artifactId>netty-codec</artifactId>
+ <version>${netty.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>io.netty</groupId>
+ <artifactId>netty-common</artifactId>
+ <version>${netty.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>io.netty</groupId>
+ <artifactId>netty-transport</artifactId>
+ <version>${netty.version}</version>
+ </dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<dependency>
<groupId>org.opendaylight.controller</groupId>
<artifactId>config-api</artifactId>
- <version>0.2.5-SNAPSHOT</version>
+ <version>0.3.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>4.10</version>
+ <version>${junit.version}</version>
<scope>test</scope>
<optional>true</optional>
</dependency>
<version>1.9.5</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.opendaylight.yangtools</groupId>
+ <artifactId>features-test</artifactId>
+ <version>${yangtools.version}</version>
+ </dependency>
</dependencies>
</dependencyManagement>
+
+ <dependencies>
+ <!-- Sonar -->
+ <dependency>
+ <groupId>org.codehaus.sonar-plugins.java</groupId>
+ <artifactId>sonar-jacoco-listeners</artifactId>
+ <version>${sonar-jacoco-listeners.version}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
- <version>${compiler.version}</version>
<inherited>true</inherited>
<configuration>
<source>1.7</source>
<phase>deploy</phase>
<goals>
<goal>jar-no-fork</goal>
- </goals>
+ </goals>
</execution>
</executions>
</plugin>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-checkstyle-plugin</artifactId>
+ <artifactId>maven-checkstyle-plugin</artifactId>
<version>2.12</version>
<configuration>
<failOnViolation>false</failOnViolation>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
</plugin>
+ <plugin>
+ <groupId>org.jacoco</groupId>
+ <artifactId>jacoco-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>prepare-ut-agent</id>
+ <phase>process-test-classes</phase>
+ <goals>
+ <goal>prepare-agent</goal>
+ </goals>
+ <configuration>
+ <destFile>${sonar.jacoco.reportPath}</destFile>
+ <propertyName>jacoco.agent.ut.arg</propertyName>
+ </configuration>
+ </execution>
+ <execution>
+ <id>prepare-it-agent</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>prepare-agent</goal>
+ </goals>
+ <configuration>
+ <destFile>${sonar.jacoco.itReportPath}</destFile>
+ <propertyName>jacoco.agent.it.arg</propertyName>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
</plugins>
<pluginManagement>
<plugins>
<configuration>
<sources>
<source>src/main/yang</source>
- <source>${jmxGeneratorPath}</source>
- <source>${salGeneratorPath}</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ <configuration>
+ <!-- Specific to generate mapping between tests and covered code -->
+ <argLine>${jacoco.agent.it.arg}</argLine>
+ <properties>
+ <property>
+ <name>listener</name>
+ <value>org.sonar.java.jacoco.JUnitListener</value>
+ </property>
+ </properties>
+ <!-- Let's put failsafe reports with surefire to have access to tests failures/success reports in sonar -->
+ <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <!-- Specific to generate mapping between tests and covered code -->
+ <argLine>${jacoco.agent.ut.arg}</argLine>
+ <properties>
+ <property>
+ <name>listener</name>
+ <value>org.sonar.java.jacoco.JUnitListener</value>
+ </property>
+ </properties>
+ </configuration>
+ </plugin>
<!-- Ignore/Execute plugin execution -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
</goals>
</pluginExecutionFilter>
<action>
- <ignore></ignore>
+ <ignore/>
</action>
</pluginExecution>
<pluginExecution>
</goals>
</pluginExecutionFilter>
<action>
- <ignore></ignore>
+ <ignore/>
</action>
</pluginExecution>
<pluginExecution>
</goals>
</pluginExecutionFilter>
<action>
- <ignore></ignore>
+ <ignore/>
</action>
</pluginExecution>
<pluginExecution>
</goals>
</pluginExecutionFilter>
<action>
- <ignore></ignore>
+ <ignore/>
</action>
</pluginExecution>
<pluginExecution>
</goals>
</pluginExecutionFilter>
<action>
- <execute></execute>
+ <execute/>
</action>
</pluginExecution>
<pluginExecution>
</goals>
</pluginExecutionFilter>
<action>
- <ignore></ignore>
+ <ignore/>
</action>
</pluginExecution>
<pluginExecution>
</goals>
</pluginExecutionFilter>
<action>
- <ignore></ignore>
+ <ignore/>
</action>
</pluginExecution>
</pluginExecutions>
</build>
</profile>
</profiles>
-</project>
\ No newline at end of file
+</project>