1 <?xml version="1.0" encoding="UTF-8"?>
2 <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">
3 <modelVersion>4.0.0</modelVersion>
5 <groupId>org.opendaylight.odlparent</groupId>
6 <artifactId>odlparent</artifactId>
7 <version>1.5.0-SNAPSHOT</version>
11 <groupId>org.opendaylight.openflowjava</groupId>
12 <artifactId>openflow-protocol-parent</artifactId>
13 <version>0.6.0-SNAPSHOT</version>
14 <name>openflowjava</name> <!-- Used by Sonar to set project name -->
15 <packaging>pom</packaging>
18 <module>openflowjava-config</module>
19 <module>openflow-protocol-api</module>
20 <module>openflow-protocol-spi</module>
22 <module>openflow-protocol-impl</module>
23 <module>openflow-protocol-it</module>
24 <module>features</module>
25 <module>simple-client</module>
28 <connection>scm:git:ssh://git.opendaylight.org:29418/openflowjava.git</connection>
29 <developerConnection>scm:git:ssh://git.opendaylight.org:29418/openflowjava.git</developerConnection>
30 <url>https://wiki.opendaylight.org/view/Openflow_Protocol_Library:Main</url>
35 <sonar.host.url>https://sonar.opendaylight.org/</sonar.host.url>
36 <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
37 <sitedeploy>dav:http://nexus.opendaylight.org/content/sites/site</sitedeploy>
38 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
39 <jmxGeneratorPath>${project.build.directory}/yang-gen-config</jmxGeneratorPath>
40 <karaf.distro.empty.version>1.5.0-SNAPSHOT</karaf.distro.empty.version>
41 <salGeneratorPath>${project.build.directory}/yang-gen-sal</salGeneratorPath>
42 <sonar.branch>${user.name}-private-view</sonar.branch>
43 <sonar.skippedModules>org.openflow.openflowj,net.sf.jung2</sonar.skippedModules>
44 <yang.prototype.version>1.2.0-SNAPSHOT</yang.prototype.version>
45 <ietf.model.version>2010.09.24.7-SNAPSHOT</ietf.model.version>
46 <yang.ext.version>2013.09.07.7-SNAPSHOT</yang.ext.version>
47 <yangtools.version>0.7.0-SNAPSHOT</yangtools.version>
48 <yangtools.generator.version>0.7.0-SNAPSHOT</yangtools.generator.version>
49 <mdsal.version>1.2.0-SNAPSHOT</mdsal.version>
50 <config.version>0.3.0-SNAPSHOT</config.version>
53 <sonar-jacoco-listeners.version>2.4</sonar-jacoco-listeners.version>
54 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
55 <sonar.jacoco.reportPath>target/code-coverage/jacoco.exec</sonar.jacoco.reportPath>
56 <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
57 <sonar.profile>Sonar way with Findbugs</sonar.profile>
61 <!-- Opendaylight public group -->
64 <name>odlPublic</name>
65 <url>${nexusproxy}/groups/public/</url>
67 <enabled>false</enabled>
70 <enabled>true</enabled>
73 <!-- OpenDayLight Snapshot artifact -->
75 <id>opendaylight-snapshot</id>
76 <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
78 <enabled>true</enabled>
81 <enabled>false</enabled>
88 <!-- Opendaylight public group -->
91 <name>odlPublic</name>
92 <url>${nexusproxy}/groups/public/</url>
94 <enabled>false</enabled>
97 <enabled>true</enabled>
100 <!-- OpenDayLight Snapshot artifact -->
102 <id>opendaylight-snapshot</id>
103 <name>opendaylight-snapshot</name>
104 <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
106 <enabled>true</enabled>
109 <enabled>false</enabled>
113 <distributionManagement>
114 <!-- OpenDayLight Released artifact -->
116 <id>opendaylight-release</id>
117 <url>${nexusproxy}/repositories/opendaylight.release/</url>
119 <!-- OpenDayLight Snapshot artifact -->
121 <id>opendaylight-snapshot</id>
122 <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
123 </snapshotRepository>
124 <!-- Site deployment -->
127 <url>${sitedeploy}</url>
129 </distributionManagement>
132 <dependencyManagement>
134 <!-- feature dependencies -->
136 <groupId>org.opendaylight.yangtools</groupId>
137 <artifactId>features-yangtools</artifactId>
138 <version>${yangtools.version}</version>
139 <classifier>features</classifier>
143 <groupId>org.opendaylight.controller</groupId>
144 <artifactId>features-config</artifactId>
145 <version>${config.version}</version>
146 <classifier>features</classifier>
150 <groupId>org.slf4j</groupId>
151 <artifactId>slf4j-api</artifactId>
152 <version>${slf4j.version}</version>
155 <groupId>io.netty</groupId>
156 <artifactId>netty-buffer</artifactId>
157 <version>${netty.version}</version>
160 <groupId>io.netty</groupId>
161 <artifactId>netty-handler</artifactId>
162 <version>${netty.version}</version>
165 <groupId>io.netty</groupId>
166 <artifactId>netty-codec</artifactId>
167 <version>${netty.version}</version>
170 <groupId>io.netty</groupId>
171 <artifactId>netty-common</artifactId>
172 <version>${netty.version}</version>
175 <groupId>io.netty</groupId>
176 <artifactId>netty-transport</artifactId>
177 <version>${netty.version}</version>
180 <groupId>com.google.guava</groupId>
181 <artifactId>guava</artifactId>
182 <version>${guava.version}</version>
185 <groupId>org.opendaylight.yangtools.model</groupId>
186 <artifactId>ietf-inet-types</artifactId>
187 <version>${ietf.model.version}</version>
190 <groupId>org.opendaylight.yangtools.model</groupId>
191 <artifactId>ietf-yang-types</artifactId>
192 <version>${ietf.model.version}</version>
195 <groupId>org.opendaylight.yangtools.model</groupId>
196 <artifactId>yang-ext</artifactId>
197 <version>${yang.ext.version}</version>
200 <groupId>org.osgi</groupId>
201 <artifactId>org.osgi.core</artifactId>
202 <version>5.0.0</version>
205 <groupId>org.opendaylight.controller</groupId>
206 <artifactId>config-api</artifactId>
207 <version>0.3.0-SNAPSHOT</version>
210 <groupId>junit</groupId>
211 <artifactId>junit</artifactId>
212 <version>${junit.version}</version>
214 <optional>true</optional>
217 <groupId>org.mockito</groupId>
218 <artifactId>mockito-all</artifactId>
219 <version>1.9.5</version>
223 <groupId>org.opendaylight.yangtools</groupId>
224 <artifactId>features-test</artifactId>
225 <version>${yangtools.version}</version>
228 </dependencyManagement>
233 <groupId>org.codehaus.sonar-plugins.java</groupId>
234 <artifactId>sonar-jacoco-listeners</artifactId>
235 <version>${sonar-jacoco-listeners.version}</version>
243 <groupId>org.apache.maven.plugins</groupId>
244 <artifactId>maven-compiler-plugin</artifactId>
245 <inherited>true</inherited>
252 <artifactId>maven-source-plugin</artifactId>
255 <id>attach-sources</id>
256 <phase>deploy</phase>
258 <goal>jar-no-fork</goal>
264 <groupId>org.apache.felix</groupId>
265 <artifactId>maven-bundle-plugin</artifactId>
266 <extensions>true</extensions>
269 <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
271 <manifestLocation>${project.build.directory}/META-INF</manifestLocation>
275 <groupId>org.apache.maven.plugins</groupId>
276 <artifactId>maven-checkstyle-plugin</artifactId>
277 <version>2.12</version>
279 <failOnViolation>false</failOnViolation>
280 <configLocation>checkstyle-logging.xml</configLocation>
281 <consoleOutput>true</consoleOutput>
282 <includeTestSourceDirectory>true</includeTestSourceDirectory>
283 <sourceDirectory>${project.basedir}</sourceDirectory>
284 <includes>**\/*.java,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat,**\/*.yang</includes>
285 <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,**\/src/main/yang-gen-config\/,**\/src/main/yang-gen-sal\/</excludes>
289 <groupId>org.opendaylight.yangtools</groupId>
290 <artifactId>checkstyle-logging</artifactId>
291 <version>${yangtools.version}</version>
303 <groupId>org.codehaus.mojo</groupId>
304 <artifactId>build-helper-maven-plugin</artifactId>
307 <groupId>org.jacoco</groupId>
308 <artifactId>jacoco-maven-plugin</artifactId>
311 <id>prepare-ut-agent</id>
312 <phase>process-test-classes</phase>
314 <goal>prepare-agent</goal>
317 <destFile>${sonar.jacoco.reportPath}</destFile>
318 <propertyName>jacoco.agent.ut.arg</propertyName>
322 <id>prepare-it-agent</id>
323 <phase>pre-integration-test</phase>
325 <goal>prepare-agent</goal>
328 <destFile>${sonar.jacoco.itReportPath}</destFile>
329 <propertyName>jacoco.agent.it.arg</propertyName>
338 <groupId>org.opendaylight.yangtools</groupId>
339 <artifactId>yang-maven-plugin</artifactId>
340 <version>${yangtools.version}</version>
343 <groupId>org.codehaus.mojo</groupId>
344 <artifactId>build-helper-maven-plugin</artifactId>
345 <version>1.8</version>
350 <goal>add-source</goal>
352 <phase>generate-sources</phase>
355 <source>src/main/yang</source>
362 <groupId>org.apache.maven.plugins</groupId>
363 <artifactId>maven-failsafe-plugin</artifactId>
365 <!-- Specific to generate mapping between tests and covered code -->
366 <argLine>${jacoco.agent.it.arg}</argLine>
369 <name>listener</name>
370 <value>org.sonar.java.jacoco.JUnitListener</value>
373 <!-- Let's put failsafe reports with surefire to have access to tests failures/success reports in sonar -->
374 <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
378 <groupId>org.apache.maven.plugins</groupId>
379 <artifactId>maven-surefire-plugin</artifactId>
381 <!-- Specific to generate mapping between tests and covered code -->
382 <argLine>${jacoco.agent.ut.arg}</argLine>
385 <name>listener</name>
386 <value>org.sonar.java.jacoco.JUnitListener</value>
391 <!-- Ignore/Execute plugin execution -->
393 <groupId>org.eclipse.m2e</groupId>
394 <artifactId>lifecycle-mapping</artifactId>
395 <version>1.0.0</version>
397 <lifecycleMappingMetadata>
400 <pluginExecutionFilter>
401 <groupId>org.codehaus.mojo</groupId>
402 <artifactId>properties-maven-plugin</artifactId>
403 <versionRange>[0.0,)</versionRange>
405 <goal>set-system-properties</goal>
407 </pluginExecutionFilter>
413 <pluginExecutionFilter>
414 <groupId>org.codehaus.enunciate</groupId>
415 <artifactId>maven-enunciate-plugin</artifactId>
416 <versionRange>[0.0,)</versionRange>
420 </pluginExecutionFilter>
426 <pluginExecutionFilter>
427 <groupId>org.jacoco</groupId>
428 <artifactId>jacoco-maven-plugin</artifactId>
429 <versionRange>[0.0,)</versionRange>
431 <goal>prepare-agent</goal>
432 <goal>pre-test</goal>
433 <goal>post-test</goal>
435 </pluginExecutionFilter>
441 <pluginExecutionFilter>
442 <groupId>org.ops4j.pax.exam</groupId>
443 <artifactId>maven-paxexam-plugin</artifactId>
444 <versionRange>[1.2.4,)</versionRange>
446 <goal>generate-depends-file</goal>
448 </pluginExecutionFilter>
451 <runOnIncremental>false</runOnIncremental>
456 <pluginExecutionFilter>
457 <groupId>org.apache.maven.plugins</groupId>
458 <artifactId>maven-checkstyle-plugin</artifactId>
459 <versionRange>[2.0,)</versionRange>
463 </pluginExecutionFilter>
469 <pluginExecutionFilter>
470 <groupId>org.opendaylight.yangtools</groupId>
471 <artifactId>yang-maven-plugin</artifactId>
472 <versionRange>[0.5,)</versionRange>
474 <goal>generate-sources</goal>
476 </pluginExecutionFilter>
482 <pluginExecutionFilter>
483 <groupId>org.codehaus.groovy.maven</groupId>
484 <artifactId>gmaven-plugin</artifactId>
485 <versionRange>1.0</versionRange>
489 </pluginExecutionFilter>
495 <pluginExecutionFilter>
496 <groupId>org.apache.maven.plugins</groupId>
497 <artifactId>maven-enforcer-plugin</artifactId>
498 <versionRange>${enforcer.version}</versionRange>
502 </pluginExecutionFilter>
508 </lifecycleMappingMetadata>
517 <groupId>org.codehaus.mojo</groupId>
518 <artifactId>findbugs-maven-plugin</artifactId>
519 <version>2.5.2</version>
522 <threshold>Low</threshold>
527 <artifactId>maven-jxr-plugin</artifactId>
528 <version>2.3</version>
530 <aggregate>true</aggregate>
531 <linkJavadoc>true</linkJavadoc>
536 <groupId>org.codehaus.mojo</groupId>
537 <artifactId>jdepend-maven-plugin</artifactId>
538 <version>2.0-beta-2</version>
546 <activeByDefault>true</activeByDefault>
549 <build.suffix>${project.version}</build.suffix>
556 <name>BUILDSUFFIX</name>
560 <build.suffix>${BUILDSUFFIX}</build.suffix>
568 <groupId>org.apache.maven.plugins</groupId>
569 <artifactId>maven-javadoc-plugin</artifactId>
570 <version>2.8.1</version>
574 <goal>aggregate</goal>
579 <id>attach-javadocs</id>
587 <groupId>org.apache.maven.plugins</groupId>
588 <artifactId>maven-source-plugin</artifactId>
591 <id>attach-sources</id>
592 <phase>package</phase>
594 <goal>jar-no-fork</goal>