Remove trailing whitespace
[openflowjava.git] / pom.xml
diff --git a/pom.xml b/pom.xml
index ea8ee7688d88dab4ca7f8cd12e449b7e4ce0820d..67148ce6b609735784b50fda4ee55f12e63bda7a 100644 (file)
--- a/pom.xml
+++ b/pom.xml
-<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>
-       <groupId>org.opendaylight.openflow</groupId>
-       <artifactId>openflow-protocol-parent</artifactId>
-       <version>0.1-SNAPSHOT</version>
-       <packaging>pom</packaging>
-       <modules>
-               <module>openflow-protocol-api</module>
-               <module>openflow-protocol-spi</module>
-               <module>openflow-protocol-impl</module>
-       </modules>
+<?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>
 
-       <name>Openflow Protocol Library</name>
+    <groupId>org.opendaylight.openflowjava</groupId>
+    <artifactId>openflow-protocol-parent</artifactId>
+    <version>0.6.0-SNAPSHOT</version>
+    <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>features</module>
+        <module>simple-client</module>
+    </modules>
+    <scm>
+        <connection>scm:git:ssh://git.opendaylight.org:29418/openflowjava.git</connection>
+        <developerConnection>scm:git:ssh://git.opendaylight.org:29418/openflowjava.git</developerConnection>
+        <url>https://wiki.opendaylight.org/view/Openflow_Protocol_Library:Main</url>
+      <tag>HEAD</tag>
+    </scm>
 
-       <developers>
-               <developer>
-                       <name>Adam BrĨek</name>
-                       <email>adam.brcek@pantheon.sk</email>
-               </developer>
-       </developers>
+    <properties>
+        <sonar.host.url>https://sonar.opendaylight.org/</sonar.host.url>
+        <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
+        <sitedeploy>dav:http://nexus.opendaylight.org/content/sites/site</sitedeploy>
+        <siteplugin>3.2</siteplugin>
+        <projectinfo>2.6</projectinfo>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <compiler.version>2.3.2</compiler.version>
+        <surefire.version>2.13</surefire.version>
+        <exam.version>3.0.0</exam.version>
+        <url.version>1.5.0</url.version>
+        <enunciate.version>1.26.2</enunciate.version>
+        <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.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.23.Final</netty.version>
+        <releaseplugin.version>2.3.2</releaseplugin.version>
+        <yangtools.version>0.7.0-SNAPSHOT</yangtools.version>
+        <yangtools.generator.version>0.7.0-SNAPSHOT</yangtools.generator.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>
 
-       <properties>
-               <sonar.host.url>https://sonar.opendaylight.org/</sonar.host.url>
-               <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
-               <sitedeploy>dav:http://nexus.opendaylight.org/content/sites/site</sitedeploy>
-               <siteplugin>3.2</siteplugin>
-               <projectinfo>2.6</projectinfo>
-               <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-               <compiler.version>2.3.2</compiler.version>
-               <surefire.version>2.13</surefire.version>
-               <exam.version>3.0.0</exam.version>
-               <url.version>1.5.0</url.version>
-               <enunciate.version>1.26.2</enunciate.version>
-               <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>
-       </properties>
+    <pluginRepositories>
+        <!-- Opendaylight public group -->
+        <pluginRepository>
+            <id>odlPublic</id>
+            <name>odlPublic</name>
+            <url>${nexusproxy}/groups/public/</url>
+            <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>
+        </pluginRepository>
+    </pluginRepositories>
 
-       <pluginRepositories>
-               <pluginRepository>
-                       <id>central2</id>
-                       <name>central2</name>
-                       <url>${nexusproxy}/repositories/central2/</url>
-               </pluginRepository>
-               
-               <!-- OpenDayLight Released artifact -->
-               <pluginRepository>
-                       <id>opendaylight-release</id>
-                       <name>opendaylight-release</name>
-                       <url>${nexusproxy}/repositories/opendaylight.release/</url>
-               </pluginRepository>
-               <!-- OpenDayLight Snapshot artifact -->
-               <pluginRepository>
-                       <id>opendaylight-snapshot</id>
-                       <name>opendaylight-snapshot</name>
-                       <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
-               </pluginRepository>
-       </pluginRepositories>
 
+    <repositories>
+        <!-- Opendaylight public group -->
+        <repository>
+            <id>odlPublic</id>
+            <name>odlPublic</name>
+            <url>${nexusproxy}/groups/public/</url>
+            <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>
+        </repository>
+    </repositories>
+    <distributionManagement>
+        <!-- OpenDayLight Released artifact -->
+        <repository>
+            <id>opendaylight-release</id>
+            <url>${nexusproxy}/repositories/opendaylight.release/</url>
+        </repository>
+        <!-- OpenDayLight Snapshot artifact -->
+        <snapshotRepository>
+            <id>opendaylight-snapshot</id>
+            <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
+        </snapshotRepository>
+        <!-- Site deployment -->
+        <!-- site>
+            <id>website</id>
+            <url>${sitedeploy}</url>
+        </site -->
+    </distributionManagement>
 
-       <repositories>
-               <!-- EBR release -->
-               <!-- http://repository.springsource.com/maven/bundles/release -->
-               <repository>
-                       <id>ebr-bundles-release</id>
-                       <name>ebr-bundles-release</name>
-                       <url>${nexusproxy}/repositories/ebr-bundles-release/</url>
-               </repository>
-               <!-- EBR external -->
-               <!-- http://repository.springsource.com/maven/bundles/external -->
-               <repository>
-                       <id>ebr-bundles-external</id>
-                       <name>ebr-bundles-external</name>
-                       <url>${nexusproxy}/repositories/ebr-bundles-external/</url>
-               </repository>
-               <!-- Maven repo2 mirror -->
-               <!-- http://repo2.maven.org/maven2 -->
-               <repository>
-                       <id>central2</id>
-                       <name>central2</name>
-                       <url>${nexusproxy}/repositories/central2/</url>
-               </repository>
-               <!-- Maven repo1 mirror -->
-               <!-- http://repo1.maven.org/maven2 -->
-               <repository>
-                       <id>central</id>
-                       <name>central</name>
-                       <url>${nexusproxy}/repositories/central/</url>
-               </repository>
-               <!-- Pax mirror -->
-               <!-- https://oss.sonatype.org/content/repositories/ops4j-releases -->
-               <repository>
-                       <id>ops4j-releases</id>
-                       <name>ops4j-releases</name>
-                       <url>${nexusproxy}/repositories/ops4j-releases/</url>
-               </repository>
-               <!-- Third Packages hosted in local maven because not available in other 
-                       places -->
-               <repository>
-                       <id>thirdparty</id>
-                       <name>thirdparty</name>
-                       <url>${nexusproxy}/repositories/thirdparty/</url>
-               </repository>
-               <!-- Jboss mirror -->
-               <!-- https://repository.jboss.org/nexus/content/repositories/releases -->
-               <repository>
-                       <id>jboss.releases</id>
-                       <name>jboss.releases</name>
-                       <url>${nexusproxy}/repositories/jboss.releases/</url>
-               </repository>
-               <!-- OpenDayLight Released artifact -->
-               <repository>
-                       <id>opendaylight-release</id>
-                       <name>opendaylight-release</name>
-                       <url>${nexusproxy}/repositories/opendaylight.release/</url>
-               </repository>
-               <!-- OpenDayLight Snapshot artifact -->
-               <repository>
-                       <id>opendaylight-snapshot</id>
-                       <name>opendaylight-snapshot</name>
-                       <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
-               </repository>
-       </repositories>
-       <distributionManagement>
-               <!-- OpenDayLight Released artifact -->
-               <repository>
-                       <id>opendaylight-release</id>
-                       <url>${nexusproxy}/repositories/opendaylight.release/</url>
-               </repository>
-               <!-- OpenDayLight Snapshot artifact -->
-               <snapshotRepository>
-                       <id>opendaylight-snapshot</id>
-                       <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
-               </snapshotRepository>
-               <!-- Site deployment -->
-               <!-- site> <id>website</id> <url>${sitedeploy}</url> </site -->
-       </distributionManagement>
 
+    <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>
+                <version>${slf4j.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-buffer</artifactId>
+                <version>${netty.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <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>
+                <version>${guava.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools.model</groupId>
+                <artifactId>ietf-inet-types</artifactId>
+                <version>${ietf.model.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools.model</groupId>
+                <artifactId>ietf-yang-types</artifactId>
+                <version>${ietf.model.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools.model</groupId>
+                <artifactId>yang-ext</artifactId>
+                <version>${yang.ext.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>org.osgi.core</artifactId>
+                <version>5.0.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>config-api</artifactId>
+                <version>0.3.0-SNAPSHOT</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>${junit.version}</version>
+                <scope>test</scope>
+                <optional>true</optional>
+            </dependency>
+            <dependency>
+                <groupId>org.mockito</groupId>
+                <artifactId>mockito-all</artifactId>
+                <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>
 
-       <dependencyManagement>
-               <dependencies>
-                       <dependency>
-                               <groupId>junit</groupId>
-                               <artifactId>junit</artifactId>
-                               <version>4.10</version>
-                               <scope>test</scope>
-                               <optional>true</optional>
-                       </dependency>
-                       <dependency>
-                               <groupId>org.slf4j</groupId>
-                               <artifactId>slf4j-api</artifactId>
-                               <version>1.7.2</version>
-                       </dependency>
-               </dependencies>
-       </dependencyManagement>
-       <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>
-                                       <target>1.7</target>
-                               </configuration>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-javadoc-plugin</artifactId>
-                               <version>2.8.1</version>
-                               <configuration>
-                                       <stylesheet>maven</stylesheet>
-                               </configuration>
-                               <executions>
-                                       <execution>
-                                               <goals>
-                                                       <goal>aggregate</goal>
-                                               </goals>
-                                               <phase>site</phase>
-                                       </execution>
-                                       <execution>
-                                               <id>attach-javadocs</id>
-                                               <phase>deploy</phase>
-                                               <goals>
-                                                       <goal>jar</goal>
-                                               </goals>
-                                       </execution>
-                               </executions>
-                       </plugin>
-                       <plugin>
-                               <artifactId>maven-source-plugin</artifactId>
-                               <executions>
-                                       <execution>
-                                               <id>attach-sources</id>
-                                               <phase>deploy</phase>
-                                               <goals>
-                                                       <goal>jar-no-fork</goal>
-                                               </goals>
-                                       </execution>
-                               </executions>
-                       </plugin>
-                       <plugin>
-                               <!-- explicitly define maven-deploy-plugin after other to force exec 
-                                       order -->
-                               <artifactId>maven-deploy-plugin</artifactId>
-                               <executions>
-                                       <execution>
-                                               <id>deploy</id>
-                                               <phase>deploy</phase>
-                                               <goals>
-                                                       <goal>deploy</goal>
-                                               </goals>
-                                       </execution>
-                               </executions>
-                       </plugin>
-               </plugins>
-       </build>
-       <reporting>
-               <plugins>
-                       <plugin>
-                               <groupId>org.codehaus.mojo</groupId>
-                               <artifactId>findbugs-maven-plugin</artifactId>
-                               <version>2.4.0</version>
-                               <configuration>
-                                       <effort>Max</effort>
-                                       <threshold>Low</threshold>
-                                       <goal>site</goal>
-                               </configuration>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.codehaus.mojo</groupId>
-                               <artifactId>jdepend-maven-plugin</artifactId>
-                               <version>2.0-beta-2</version>
-                       </plugin>
-               </plugins>
-       </reporting>
-       <profiles>
-               <profile>
-                       <id>viewbuild</id>
-                       <activation>
-                               <activeByDefault>true</activeByDefault>
-                       </activation>
-                       <properties>
-                               <build.suffix>${project.version}</build.suffix>
-                       </properties>
-               </profile>
-               <profile>
-                       <id>jenkins</id>
-                       <activation>
-                               <property>
-                                       <name>BUILDSUFFIX</name>
-                               </property>
-                       </activation>
-                       <properties>
-                               <build.suffix>${BUILDSUFFIX}</build.suffix>
-                       </properties>
-               </profile>
-       </profiles>
+    <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>
+                <inherited>true</inherited>
+                <configuration>
+                    <source>1.7</source>
+                    <target>1.7</target>
+                </configuration>
+            </plugin>
+            <plugin>
+                <artifactId>maven-source-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-sources</id>
+                        <phase>deploy</phase>
+                        <goals>
+                            <goal>jar-no-fork</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+              <groupId>org.apache.felix</groupId>
+              <artifactId>maven-bundle-plugin</artifactId>
+              <extensions>true</extensions>
+              <configuration>
+                <instructions>
+                  <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
+                </instructions>
+                <manifestLocation>${project.build.directory}/META-INF</manifestLocation>
+              </configuration>
+            </plugin>
+            <plugin>
+              <groupId>org.apache.maven.plugins</groupId>
+             <artifactId>maven-checkstyle-plugin</artifactId>
+              <version>2.12</version>
+              <configuration>
+                <failOnViolation>false</failOnViolation>
+                <configLocation>checkstyle-logging.xml</configLocation>
+                <consoleOutput>true</consoleOutput>
+                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                <sourceDirectory>${project.basedir}</sourceDirectory>
+                <includes>**\/*.java,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat,**\/*.yang</includes>
+                <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,**\/src/main/yang-gen-config\/,**\/src/main/yang-gen-sal\/</excludes>
+              </configuration>
+              <dependencies>
+                <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>checkstyle-logging</artifactId>
+                <version>${yangtools.version}</version>
+                </dependency>
+              </dependencies>
+              <executions>
+                <execution>
+                <goals>
+                  <goal>check</goal>
+                </goals>
+                </execution>
+              </executions>
+            </plugin>
+            <plugin>
+                <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>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-source-plugin</artifactId>
+                    <version>2.2.1</version>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-deploy-plugin</artifactId>
+                    <version>2.7</version>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-jar-plugin</artifactId>
+                    <version>2.4</version>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-release-plugin</artifactId>
+                    <version>${releaseplugin.version}</version>
+                </plugin>
+                <plugin>
+                    <groupId>org.opendaylight.yangtools</groupId>
+                    <artifactId>yang-maven-plugin</artifactId>
+                    <version>${yangtools.version}</version>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.felix</groupId>
+                    <artifactId>maven-bundle-plugin</artifactId>
+                    <version>${maven.bundle.version}</version>
+                </plugin>
+                <plugin>
+                    <groupId>org.codehaus.mojo</groupId>
+                    <artifactId>build-helper-maven-plugin</artifactId>
+                    <version>1.8</version>
+                    <executions>
+                        <execution>
+                            <id>add-source</id>
+                            <goals>
+                                <goal>add-source</goal>
+                            </goals>
+                            <phase>generate-sources</phase>
+                            <configuration>
+                                <sources>
+                                    <source>src/main/yang</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>
+                  <artifactId>lifecycle-mapping</artifactId>
+                  <version>1.0.0</version>
+                  <configuration>
+                    <lifecycleMappingMetadata>
+                      <pluginExecutions>
+                        <pluginExecution>
+                          <pluginExecutionFilter>
+                            <groupId>org.codehaus.mojo</groupId>
+                            <artifactId>properties-maven-plugin</artifactId>
+                            <versionRange>[0.0,)</versionRange>
+                            <goals>
+                              <goal>set-system-properties</goal>
+                            </goals>
+                          </pluginExecutionFilter>
+                          <action>
+                            <ignore/>
+                          </action>
+                        </pluginExecution>
+                        <pluginExecution>
+                          <pluginExecutionFilter>
+                            <groupId>org.codehaus.enunciate</groupId>
+                            <artifactId>maven-enunciate-plugin</artifactId>
+                            <versionRange>[0.0,)</versionRange>
+                            <goals>
+                              <goal>docs</goal>
+                            </goals>
+                          </pluginExecutionFilter>
+                          <action>
+                            <ignore/>
+                          </action>
+                        </pluginExecution>
+                        <pluginExecution>
+                          <pluginExecutionFilter>
+                            <groupId>org.jacoco</groupId>
+                            <artifactId>jacoco-maven-plugin</artifactId>
+                            <versionRange>[0.0,)</versionRange>
+                            <goals>
+                              <goal>prepare-agent</goal>
+                              <goal>pre-test</goal>
+                              <goal>post-test</goal>
+                            </goals>
+                          </pluginExecutionFilter>
+                          <action>
+                            <ignore/>
+                          </action>
+                        </pluginExecution>
+                        <pluginExecution>
+                          <pluginExecutionFilter>
+                            <groupId>org.ops4j.pax.exam</groupId>
+                            <artifactId>maven-paxexam-plugin</artifactId>
+                            <versionRange>[1.2.4,)</versionRange>
+                            <goals>
+                              <goal>generate-depends-file</goal>
+                            </goals>
+                          </pluginExecutionFilter>
+                          <action>
+                            <execute>
+                              <runOnIncremental>false</runOnIncremental>
+                            </execute>
+                          </action>
+                        </pluginExecution>
+                        <pluginExecution>
+                          <pluginExecutionFilter>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <versionRange>[2.0,)</versionRange>
+                            <goals>
+                              <goal>check</goal>
+                            </goals>
+                          </pluginExecutionFilter>
+                          <action>
+                            <ignore/>
+                          </action>
+                        </pluginExecution>
+                        <pluginExecution>
+                          <pluginExecutionFilter>
+                            <groupId>org.opendaylight.yangtools</groupId>
+                            <artifactId>yang-maven-plugin</artifactId>
+                            <versionRange>[0.5,)</versionRange>
+                            <goals>
+                              <goal>generate-sources</goal>
+                            </goals>
+                          </pluginExecutionFilter>
+                          <action>
+                            <execute/>
+                          </action>
+                        </pluginExecution>
+                        <pluginExecution>
+                          <pluginExecutionFilter>
+                            <groupId>org.codehaus.groovy.maven</groupId>
+                            <artifactId>gmaven-plugin</artifactId>
+                            <versionRange>1.0</versionRange>
+                            <goals>
+                              <goal>execute</goal>
+                            </goals>
+                          </pluginExecutionFilter>
+                          <action>
+                            <ignore/>
+                          </action>
+                        </pluginExecution>
+                        <pluginExecution>
+                          <pluginExecutionFilter>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-enforcer-plugin</artifactId>
+                            <versionRange>${enforcer.version}</versionRange>
+                            <goals>
+                              <goal>enforce</goal>
+                            </goals>
+                          </pluginExecutionFilter>
+                          <action>
+                            <ignore/>
+                          </action>
+                        </pluginExecution>
+                      </pluginExecutions>
+                    </lifecycleMappingMetadata>
+                  </configuration>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+    </build>
+    <reporting>
+        <plugins>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>findbugs-maven-plugin</artifactId>
+                <version>2.5.2</version>
+                <configuration>
+                    <effort>Max</effort>
+                    <threshold>Low</threshold>
+                    <goal>site</goal>
+                </configuration>
+            </plugin>
+            <plugin>
+              <artifactId>maven-jxr-plugin</artifactId>
+              <version>2.3</version>
+              <configuration>
+                <aggregate>true</aggregate>
+                <linkJavadoc>true</linkJavadoc>
+              </configuration>
+            </plugin>
+
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>jdepend-maven-plugin</artifactId>
+                <version>2.0-beta-2</version>
+            </plugin>
+        </plugins>
+    </reporting>
+    <profiles>
+        <profile>
+            <id>viewbuild</id>
+            <activation>
+                <activeByDefault>true</activeByDefault>
+            </activation>
+            <properties>
+                <build.suffix>${project.version}</build.suffix>
+            </properties>
+        </profile>
+        <profile>
+            <id>jenkins</id>
+            <activation>
+                <property>
+                    <name>BUILDSUFFIX</name>
+                </property>
+            </activation>
+            <properties>
+                <build.suffix>${BUILDSUFFIX}</build.suffix>
+            </properties>
+        </profile>
+        <profile>
+            <id>repoBuild</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-javadoc-plugin</artifactId>
+                        <version>2.8.1</version>
+                        <executions>
+                            <execution>
+                                <goals>
+                                    <goal>aggregate</goal>
+                                </goals>
+                                <phase>site</phase>
+                            </execution>
+                            <execution>
+                                <id>attach-javadocs</id>
+                                <goals>
+                                    <goal>jar</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-source-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>attach-sources</id>
+                                <phase>package</phase>
+                                <goals>
+                                    <goal>jar-no-fork</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
 </project>