fixes for null pointer exceptions
[dmaap/messagerouter/dmaapclient.git] / pom.xml
1 <!-- ============LICENSE_START======================================================= 
2         org.onap.dmaap ================================================================================ 
3         Copyright © 2017 AT&T Intellectual Property. All rights reserved. ================================================================================ 
4         Licensed under the Apache License, Version 2.0 (the "License"); you may not 
5         use this file except in compliance with the License. You may obtain a copy 
6         of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
7         by applicable law or agreed to in writing, software distributed under the 
8         License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
9         OF ANY KIND, either express or implied. See the License for the specific 
10         language governing permissions and limitations under the License. ============LICENSE_END========================================================= 
11         ECOMP is a trademark and service mark of AT&T Intellectual Property. -->
12 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
13         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
14         <modelVersion>4.0.0</modelVersion>
15         <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
16         <artifactId>dmaapClient</artifactId>
17         <packaging>jar</packaging>
18         <version>1.1.7-SNAPSHOT</version>
19         <name>dmaap-messagerouter-dmaapclient</name>
20         <description>Client library for MR event routing API</description>
21         <url>https://github.com/att/dmaap-framework</url>
22
23         <parent>
24                 <groupId>org.onap.oparent</groupId>
25                 <artifactId>oparent</artifactId>
26                 <version>1.1.0</version>
27         </parent>
28         <properties>
29                 <!-- for the client library, we want to allow 1.6 or later -->
30                 <maven.compiler.target>1.7</maven.compiler.target>
31                 <maven.compiler.source>1.7</maven.compiler.source>
32                 <jersey.version>2.26</jersey.version>
33                 <version.jackson.core>2.6.7.1</version.jackson.core>
34                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
35
36                 <!-- SONAR -->
37                 <jacoco.version>0.7.7.201606060606</jacoco.version>
38                 <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
39                 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
40                 <!-- Default Sonar configuration -->
41                 <sonar.jacoco.reportPath>target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPath>
42                 <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
43                 <!-- Note: This list should match jacoco-maven-plugin's exclusion list 
44                         below -->
45                 <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
46                 <sitePath>/content/sites/site/org/onap/dmaap/messagerouter/dmaapclient/${project.artifactId}/${project.version}</sitePath>
47                 <nexusproxy>https://nexus.onap.org</nexusproxy>
48         </properties>
49
50         <distributionManagement>
51                 <site>
52                         <id>ecomp-site</id>
53                         <url>dav:${nexusproxy}${sitePath}</url>
54                 </site>
55         </distributionManagement>
56
57         <licenses>
58                 <license>
59                         <name>Apache License Version 2.0</name>
60                 </license>
61         </licenses>
62
63         <developers>
64                 <developer>
65                         <name>Rajashree</name>
66                         <email></email>
67                         <organization>ATT</organization>
68                         <organizationUrl>www.att.com</organizationUrl>
69                 </developer>
70                 <developer>
71                         <name>Ramkumar</name>
72                         <email></email>
73                         <organization>ATT</organization>
74                         <organizationUrl>www.att.com</organizationUrl>
75                 </developer>
76         </developers>
77
78         <dependencies>
79                 <dependency>
80                         <groupId>com.fasterxml.jackson.core</groupId>
81                         <artifactId>jackson-core</artifactId>
82                         <version>2.8.11</version>
83                 </dependency>
84                 <dependency>
85                         <groupId>com.fasterxml.jackson.core</groupId>
86                         <artifactId>jackson-databind</artifactId>
87                         <version>2.8.11.1</version>
88                 </dependency>
89                 <dependency>
90                         <groupId>org.apache.httpcomponents</groupId>
91                         <artifactId>httpclient-cache</artifactId>
92                         <version>4.5.3</version>
93                 </dependency>
94                 <dependency>
95                         <groupId>com.att.nsa</groupId>
96                         <artifactId>saClientLibrary</artifactId>
97                         <version>0.0.1</version>
98                 </dependency>
99
100                 <dependency>
101                         <groupId>org.json</groupId>
102                         <artifactId>json</artifactId>
103                         <version>20131018</version>
104                 </dependency>
105
106                 <dependency>
107                         <groupId>com.att.aft</groupId>
108                         <artifactId>dme2</artifactId>
109                         <version>3.1.200-oss</version>
110                         <exclusions>
111                                 <exclusion>
112                                         <groupId>com.sun.jersey</groupId>
113                                         <artifactId>jersey-json</artifactId>
114                                 </exclusion>
115                                 <exclusion>
116                                         <groupId>com.sun.jersey</groupId>
117                                         <artifactId>jersey-client</artifactId>
118                                 </exclusion>
119                         </exclusions>
120                 </dependency>
121                 <!-- Begin - Dependency on log4j for logging purpose -->
122                 <dependency>
123                         <groupId>log4j</groupId>
124                         <artifactId>log4j</artifactId>
125                         <version>1.2.17</version>
126                 </dependency>
127                 <!-- Log4j's enhanced pattern layout is shipped separately -->
128                 <dependency>
129                         <groupId>log4j</groupId>
130                         <artifactId>apache-log4j-extras</artifactId>
131                         <version>1.2.17</version>
132                 </dependency>
133                 <!-- End - Dependency on log4j for logging purpose -->
134
135                 <dependency>
136                         <groupId>javax.ws.rs</groupId>
137                         <artifactId>javax.ws.rs-api</artifactId>
138                         <version>2.0.1</version>
139                 </dependency>
140
141                 <dependency>
142                         <groupId>org.glassfish.jersey.core</groupId>
143                         <artifactId>jersey-common</artifactId>
144                         <version>${jersey.version}</version>
145                 </dependency>
146
147                 <dependency>
148                         <groupId>org.glassfish.jersey.core</groupId>
149                         <artifactId>jersey-client</artifactId>
150                         <version>${jersey.version}</version>
151                 </dependency>
152
153                 <dependency>
154                         <groupId>org.glassfish.jersey.media</groupId>
155                         <artifactId>jersey-media-json-jackson</artifactId>
156                         <version>${jersey.version}</version>
157                 </dependency>
158                 <dependency>
159                         <groupId>junit</groupId>
160                         <artifactId>junit</artifactId>
161                         <version>4.11</version>
162                         <scope>test</scope>
163                 </dependency>
164
165                 <dependency>
166                         <groupId>com.github.tomakehurst</groupId>
167                         <artifactId>wiremock</artifactId>
168                         <version>2.5.0</version>
169                         <scope>test</scope>
170                 </dependency>
171                 <dependency>
172                         <groupId>org.mockito</groupId>
173                         <artifactId>mockito-core</artifactId>
174                         <version>1.10.19</version>
175                         <scope>test</scope>
176                 </dependency>
177                 <dependency>
178                         <groupId>org.powermock</groupId>
179                         <artifactId>powermock-module-junit4</artifactId>
180                         <version>1.6.4</version>
181                         <scope>test</scope>
182                 </dependency>
183                 <dependency>
184                         <groupId>org.powermock</groupId>
185                         <artifactId>powermock-api-mockito</artifactId>
186                         <version>1.6.4</version>
187                         <scope>test</scope>
188                 </dependency>
189                 <dependency>
190                         <groupId>org.springframework</groupId>
191                         <artifactId>spring-test</artifactId>
192                         <version>3.0.5.RELEASE</version>
193                         <scope>test</scope>
194                 </dependency>
195
196         </dependencies>
197
198         <build>
199                 <resources>
200                         <resource>
201                                 <directory>src/main/resources</directory>
202                                 <filtering>true</filtering>
203                                 <includes>
204                                         <include>**/MRClientVersion.properties</include>
205                                 </includes>
206                         </resource>
207                         <resource>
208                                 <directory>src/main/resources</directory>
209                                 <filtering>false</filtering>
210                                 <excludes>
211                                         <exclude>**/MRClientVersion.properties</exclude>
212                                 </excludes>
213                         </resource>
214                 </resources>
215                 <plugins>
216                         <plugin>
217                                 <groupId>org.apache.maven.plugins</groupId>
218                                 <artifactId>maven-site-plugin</artifactId>
219                                 <version>3.6</version>
220                                 <dependencies>
221                                         <dependency>
222                                                 <groupId>org.apache.maven.wagon</groupId>
223                                                 <artifactId>wagon-webdav-jackrabbit</artifactId>
224                                                 <version>2.10</version>
225                                         </dependency>
226                                 </dependencies>
227                         </plugin>
228                         <plugin>
229                                 <artifactId>maven-assembly-plugin</artifactId>
230                                 <version>2.4</version>
231                                 <configuration>
232                                         <descriptorRefs>
233                                                 <descriptorRef>jar-with-dependencies</descriptorRef>
234                                         </descriptorRefs>
235                                 </configuration>
236
237                                 <executions>
238                                         <execution>
239                                                 <id>make-assembly</id> <!-- this is used for inheritance merges -->
240                                                 <phase>package</phase> <!-- bind to the packaging phase -->
241                                                 <goals>
242                                                         <goal>single</goal>
243                                                 </goals>
244                                         </execution>
245                                 </executions>
246                         </plugin>
247
248
249                         <plugin>
250                                 <groupId>org.apache.maven.plugins</groupId>
251                                 <artifactId>maven-javadoc-plugin</artifactId>
252                                 <version>2.10.4</version>
253                                 <configuration>
254                                         <additionalparam>-Xdoclint:none</additionalparam>
255                                 </configuration>
256                                 <executions>
257                                         <execution>
258                                                 <id>attach-javadocs</id>
259                                                 <goals>
260                                                         <goal>jar</goal>
261                                                 </goals>
262                                         </execution>
263                                 </executions>
264                         </plugin>
265                         <plugin>
266                                 <groupId>org.apache.maven.plugins</groupId>
267                                 <artifactId>maven-source-plugin</artifactId>
268                                 <version>3.0.0</version>
269                                 <executions>
270                                         <execution>
271                                                 <id>attach-sources</id>
272                                                 <goals>
273                                                         <goal>jar-no-fork</goal>
274                                                 </goals>
275                                         </execution>
276                                 </executions>
277                         </plugin>
278                         <plugin>
279                                 <artifactId>maven-compiler-plugin</artifactId>
280                                 <version>3.1</version>
281                                 <configuration>
282                                         <source>1.7</source>
283                                         <target>1.7</target>
284                                 </configuration>
285                         </plugin>
286                         <!-- <plugin>
287                                 <groupId>org.jacoco</groupId>
288                                 <artifactId>jacoco-maven-plugin</artifactId>
289                                 <version>${jacoco.version}</version>
290                                 <configuration>
291                                         Note: This exclusion list should match <sonar.exclusions> property 
292                                                 above
293                                         <excludes>
294                                                 <exclude>**/gen/**</exclude>
295                                                 <exclude>**/generated-sources/**</exclude>
296                                                 <exclude>**/yang-gen/**</exclude>
297                                                 <exclude>**/pax/**</exclude>
298                                         </excludes>
299                                 </configuration>
300                                 <executions>
301                                         Prepares the property pointing to the JaCoCo runtime agent which 
302                                                 is passed as VM argument when Maven the Surefire plugin is executed.
303                                         <execution>
304                                                 <id>pre-unit-test</id>
305                                                 <goals>
306                                                         <goal>prepare-agent</goal>
307                                                 </goals>
308                                                 <configuration>
309                                                         Sets the path to the file which contains the execution data.
310                                                         <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
311                                                         Sets the name of the property containing the settings for JaCoCo 
312                                                                 runtime agent.
313                                                         <propertyName>surefireArgLine</propertyName>
314                                                 </configuration>
315                                         </execution>
316                                         Ensures that the code coverage report for unit tests is created 
317                                                 after unit tests have been run.
318                                         <execution>
319                                                 <id>post-unit-test</id>
320                                                 <phase>test</phase>
321                                                 <goals>
322                                                         <goal>report</goal>
323                                                 </goals>
324                                                 <configuration>
325                                                         Sets the path to the file which contains the execution data.
326                                                         <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
327                                                         Sets the output directory for the code coverage report.
328                                                         <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
329                                                 </configuration>
330                                         </execution>
331                                         <execution>
332                                                 <id>pre-integration-test</id>
333                                                 <phase>pre-integration-test</phase>
334                                                 <goals>
335                                                         <goal>prepare-agent</goal>
336                                                 </goals>
337                                                 <configuration>
338                                                         Sets the path to the file which contains the execution data.
339                                                         <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
340                                                         Sets the name of the property containing the settings for JaCoCo 
341                                                                 runtime agent.
342                                                         <propertyName>failsafeArgLine</propertyName>
343                                                 </configuration>
344                                         </execution>
345                                         Ensures that the code coverage report for integration tests after 
346                                                 integration tests have been run.
347                                         <execution>
348                                                 <id>post-integration-test</id>
349                                                 <phase>post-integration-test</phase>
350                                                 <goals>
351                                                         <goal>report</goal>
352                                                 </goals>
353                                                 <configuration>
354                                                         Sets the path to the file which contains the execution data.
355                                                         <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
356                                                         Sets the output directory for the code coverage report.
357                                                         <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
358                                                 </configuration>
359                                         </execution>
360                                 </executions>
361                         </plugin> -->
362                 </plugins>
363         </build>
364
365         <profiles>
366                 <!-- Add plugins here that should only be executed on the Jenkins server -->
367                 <profile>
368                         <id>jenkins</id>
369                         <activation>
370                                 <property>
371                                         <name>env.BUILD_NUMBER</name>
372                                 </property>
373                         </activation>
374                         <build>
375                                 <plugins>
376                                         <plugin>
377                                                 <groupId>org.codehaus.mojo</groupId>
378                                                 <artifactId>cobertura-maven-plugin</artifactId>
379                                         </plugin>
380                                 </plugins>
381                         </build>
382                 </profile>
383         </profiles>
384 </project>