b17334869b3be17cce1b2dc5fda6f9fc6562cf9c
[aai/traversal.git] / aai-traversal / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3
4     ============LICENSE_START=======================================================
5     org.onap.aai
6     ================================================================================
7     Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
8     ================================================================================
9     Licensed under the Apache License, Version 2.0 (the "License");
10     you may not use this file except in compliance with the License.
11     You may obtain a copy of the License at
12
13        http://www.apache.org/licenses/LICENSE-2.0
14
15     Unless required by applicable law or agreed to in writing, software
16     distributed under the License is distributed on an "AS IS" BASIS,
17     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18     See the License for the specific language governing permissions and
19     limitations under the License.
20     ============LICENSE_END=========================================================
21
22 -->
23 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
25     <modelVersion>4.0.0</modelVersion>
26     <groupId>org.onap.aai.traversal</groupId>
27     <artifactId>aai-traversal</artifactId>
28     <version>1.3.0-SNAPSHOT</version>
29
30     <parent>
31         <groupId>org.onap.aai.traversal</groupId>
32         <artifactId>traversal</artifactId>
33         <version>1.3.0-SNAPSHOT</version>
34     </parent>
35
36     <properties>
37         <java.version>1.8</java.version>
38         <start-class>org.onap.aai.TraversalApp</start-class>
39
40         <maven.skip.tests>true</maven.skip.tests>
41         <maven.compiler.source>1.8</maven.compiler.source>
42         <maven.compiler.target>1.8</maven.compiler.target>
43
44         <aai.schema.version>1.3.0-SNAPSHOT</aai.schema.version>
45         <aai.core.version>1.3.0-SNAPSHOT</aai.core.version>
46
47         <spring.boot.version>1.5.15.RELEASE</spring.boot.version>
48
49         <!-- Start of the jacoco plugin properties -->
50         <sonar.language>java</sonar.language>
51         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
52         <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
53         <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
54         <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
55         <sonar.projectVersion>${project.version}</sonar.projectVersion>
56         <!-- End of the jacoco plugin properties -->
57
58         <jolt.version>0.0.24</jolt.version>
59         <jopt.simple.version>4.9</jopt.simple.version>
60
61         <io.swagger.version>1.5.8</io.swagger.version>
62         <apache.log4j.version>1.2.17</apache.log4j.version>
63
64         <commons.beanutils.version>1.9.2</commons.beanutils.version>
65         <commons.compress.version>1.10</commons.compress.version>
66         <commons.configuration.version>1.9</commons.configuration.version>
67
68         <googlecode.diffutils.version>1.3.0</googlecode.diffutils.version>
69         <scamper.encryption.version>1.8.20</scamper.encryption.version>
70         <httpcomponents.httpmime.version>4.5.2</httpcomponents.httpmime.version>
71         <scamper.version>1.8.36</scamper.version>
72         <dom4j.version>1.6.1</dom4j.version>
73         <commons.lang.version>2.6</commons.lang.version>
74         <eelf.core.version>1.0.0</eelf.core.version>
75         <logback.version>1.2.3</logback.version>
76         <hamcrest.junit.version>2.0.0.0</hamcrest.junit.version>
77         <janino.version>2.7.8</janino.version>
78         <google.guava.version>16.0</google.guava.version>
79         <janusgraph.version>0.2.0</janusgraph.version>
80         <gremlin.version>3.2.2</gremlin.version>
81         <smack.version>3.0.4</smack.version>
82         <json.simple.version>1.1.1</json.simple.version>
83         <mockito.version>1.10.19</mockito.version>
84         <powermock.version>1.6.2</powermock.version>
85         <jcommander.version>1.48</jcommander.version>
86         <json.version>20090211</json.version>
87         <freemarker.version>2.3.21</freemarker.version>
88         <jaxb.version>2.2.11</jaxb.version>
89         <eclipse.persistence.version>2.6.2</eclipse.persistence.version>
90         <json.patch.version>1.9</json.patch.version>
91         <javatuples.version>1.2</javatuples.version>
92         <gson.version>2.7</gson.version>
93         <dmaap.client.version>0.2.12</dmaap.client.version>
94         <httpcore.version>4.4</httpcore.version>
95         <json.path.version>2.2.0</json.path.version>
96         <activemq.version>5.15.3</activemq.version>
97         <httpclient.version>4.5.3</httpclient.version>
98         <spring.jms.version>4.3.2.RELEASE</spring.jms.version>
99         <spotify.docker.version>0.4.11</spotify.docker.version>
100         <spring.security.version>1.0.3.RELEASE</spring.security.version>
101
102         <dme2.version>2.8.5</dme2.version>
103         <async.retry.version>0.0.7</async.retry.version>
104         <jsonassert.version>1.4.0</jsonassert.version>
105
106         <eclipse.jetty.version>9.4.1.v20170120</eclipse.jetty.version>
107
108         <docker.fabric.version>0.23.0</docker.fabric.version>
109         <!-- Default docker registry that maven fabric plugin will try to pull from -->
110         <docker.registry>docker.io</docker.registry>
111         <!-- Specifying the docker push registry where the image should be pushed -->
112         <!-- This value should be overwritten at runtime to wherever need to be pushed to -->
113         <docker.push.registry>localhost:5000</docker.push.registry>
114
115         <!--
116              Location where assembly of our scripts, resources and main jar will be held
117                  Check the ${project.artifactId}/src/main/assembly/descriptor.xml for more info
118         -->
119         <aai.build.directory>${project.build.directory}/${project.artifactId}-${project.version}-build/</aai.build.directory>
120         <aai.docker.namespace>onap</aai.docker.namespace>
121
122         <spring.web.version>4.3.6.RELEASE</spring.web.version>
123         <aai.project.version>1.3.0</aai.project.version>
124         <aai.docker.version>1.3</aai.docker.version>
125
126         <!--
127             Nexus Proxy Properties and Snapshot Locations
128             Ideally this can be overwritten at runtime per internal environment specific values at runtime
129         -->
130         <nexusproxy>https://nexus.onap.org</nexusproxy>
131         <site.path>/content/sites/site/org/onap/aai/traversal/${project.artifactId}/${project.version}</site.path>
132         <release.path>/content/repositories/releases/</release.path>
133         <snapshot.path>/content/repositories/snapshots/</snapshot.path>
134
135         <netty.handler.version>4.1.9.Final</netty.handler.version>
136         <netty.version>4.0.37.Final</netty.version>
137         <jackson.core.version>2.8.11.1</jackson.core.version>
138         <groovy.version>2.4.4</groovy.version>
139
140         <spring.test.version>4.3.6.RELEASE</spring.test.version>
141
142         <!-- This will be used for the docker images as the default format of maven build has issues -->
143         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
144
145         <antlr4.visitor>true</antlr4.visitor>
146         <antlr4.listener>true</antlr4.listener>
147         <antlr.version>4.7</antlr.version>
148
149         <plexus.utils.version>3.1.0</plexus.utils.version>
150
151         <snapshot.file>${project.basedir}/snapshots/data.graphson</snapshot.file>
152         <license.goal.type>check</license.goal.type>
153         <jacoco.line.coverage.limit>0.67</jacoco.line.coverage.limit>
154
155         <!-- Start of Default ONAP Schema Properties -->
156         <schema.source.name>onap</schema.source.name>
157         <schema.configuration.location>N/A</schema.configuration.location>
158         <schema.nodes.location>${project.basedir}/src/main/resources/schema/${schema.source.name}/oxm</schema.nodes.location>
159         <schema.edges.location>${project.basedir}/src/main/resources/schema/${schema.source.name}/dbedgerules</schema.edges.location>
160         <schema.version.depth.start>v9</schema.version.depth.start>
161         <schema.version.related.link.start>v10</schema.version.related.link.start>
162         <schema.version.app.root.start>v11</schema.version.app.root.start>
163         <schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
164         <schema.version.edge.label.start>v12</schema.version.edge.label.start>
165         <schema.version.api.default>v14</schema.version.api.default>
166         <schema.version.list>v8,v9,v10,v11,v12,v13,v14</schema.version.list>
167         <schema.uri.base.path>/aai</schema.uri.base.path>
168         <!-- End of Default ONAP Schema Properties -->
169     </properties>
170     <profiles>
171         <!-- Docker profile to be used for building docker image and pushing to nexus -->
172         <profile>
173             <id>docker</id>
174             <build>
175                 <plugins>
176                     <plugin>
177                         <groupId>io.fabric8</groupId>
178                         <artifactId>docker-maven-plugin</artifactId>
179                         <version>${docker.fabric.version}</version>
180                         <configuration>
181                             <verbose>true</verbose>
182                             <apiVersion>1.23</apiVersion>
183                             <images>
184                                 <image>
185                                     <name>${docker.push.registry}/${aai.docker.namespace}/${project.artifactId}:%l</name>
186                                     <build>
187                                         <filter>@</filter>
188                                         <tags>
189                                             <tag>latest</tag>
190                                             <tag>${project.docker.latesttag.version}</tag>
191                                             <tag>${project.major.version}.${project.minor.version}-STAGING-${maven.build.timestamp}</tag>
192                                         </tags>
193                                         <cleanup>try</cleanup>
194                                         <dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
195                                         <assembly>
196                                             <inline>
197                                               <fileSets>
198                                                 <fileSet>
199                                                   <directory>${aai.build.directory}</directory>
200                                                   <outputDirectory>/${project.artifactId}</outputDirectory>
201                                                 </fileSet>
202                                               </fileSets>
203                                             </inline>
204                                         </assembly>
205                                     </build>
206                                 </image>
207                             </images>
208                         </configuration>
209                         <executions>
210                             <execution>
211                                 <id>clean-images</id>
212                                 <phase>pre-clean</phase>
213                                 <goals>
214                                     <goal>remove</goal>
215                                 </goals>
216                                 <configuration>
217                                     <removeAll>true</removeAll>
218                                 </configuration>
219                             </execution>
220                             <execution>
221                                 <id>generate-images</id>
222                                 <phase>package</phase>
223                                 <goals>
224                                     <goal>build</goal>
225                                 </goals>
226                             </execution>
227                             <execution>
228                                 <id>push-images</id>
229                                 <phase>deploy</phase>
230                                 <goals>
231                                     <goal>push</goal>
232                                 </goals>
233                             </execution>
234                         </executions>
235                     </plugin>
236                 </plugins>
237             </build>
238         </profile>
239         <!-- Start of ONAP Profile -->
240         <profile>
241             <id>onap</id>
242             <properties>
243                 <schema.source.name>onap</schema.source.name>
244                 <schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
245                 <schema.version.list>v8,v9,v10,v11,v12,v13,v14</schema.version.list>
246             </properties>
247         </profile>
248         <!-- End of ONAP Profile -->
249         <profile>
250             <id>runAjsc</id>
251             <properties>
252                 <skipTests>${maven.skip.tests}</skipTests>
253             </properties>
254             <build>
255                 <defaultGoal>pre-integration-test</defaultGoal>
256                 <plugins>
257                     <plugin>
258                         <groupId>org.codehaus.mojo</groupId>
259                         <artifactId>exec-maven-plugin</artifactId>
260                         <version>1.6.0</version>
261                         <executions>
262                             <execution>
263                                 <id>run-spring-boot</id>
264                                 <phase>package</phase>
265                                 <goals>
266                                     <goal>java</goal>
267                                 </goals>
268                             </execution>
269                         </executions>
270                         <configuration>
271                             <mainClass>${start-class}</mainClass>
272                             <systemProperties>
273                                 <property>
274                                     <key>snapshot.location</key>
275                                     <value>${snapshot.file}</value>
276                                 </property>
277                                 <property>
278                                     <key>schema.source.name</key>
279                                     <value>${schema.source.name}</value>
280                                 </property>
281                                 <property>
282                                     <key>schema.configuration.location</key>
283                                     <value>${schema.configuration.location}</value>
284                                 </property>
285                                 <property>
286                                     <key>schema.nodes.location</key>
287                                     <value>${schema.nodes.location}</value>
288                                 </property>
289                                 <property>
290                                     <key>schema.edges.location</key>
291                                     <value>${schema.edges.location}</value>
292                                 </property>
293                                 <property>
294                                     <key>schema.version.depth.start</key>
295                                     <value>${schema.version.depth.start}</value>
296                                 </property>
297                                 <property>
298                                     <key>schema.version.related.link.start</key>
299                                     <value>${schema.version.related.link.start}</value>
300                                 </property>
301                                 <property>
302                                     <key>schema.version.app.root.start</key>
303                                     <value>${schema.version.app.root.start}</value>
304                                 </property>
305                                 <property>
306                                     <key>schema.version.namespace.change.start</key>
307                                     <value>${schema.version.namespace.change.start}</value>
308                                 </property>
309                                 <property>
310                                     <key>schema.version.edge.label.start</key>
311                                     <value>${schema.version.edge.label.start}</value>
312                                 </property>
313                                 <property>
314                                     <key>schema.version.api.default</key>
315                                     <value>${schema.version.api.default}</value>
316                                 </property>
317                                 <property>
318                                     <key>schema.version.list</key>
319                                     <value>${schema.version.list}</value>
320                                 </property>
321                                 <property>
322                                     <key>schema.uri.base.path</key>
323                                     <value>${schema.uri.base.path}</value>
324                                 </property>
325                             </systemProperties>
326                             <executable>java</executable>
327                         </configuration>
328                     </plugin>
329                 </plugins>
330             </build>
331         </profile>
332     </profiles>
333     <dependencyManagement>
334         <dependencies>
335             <dependency>
336                 <groupId>org.springframework.boot</groupId>
337                 <artifactId>spring-boot-starter-parent</artifactId>
338                 <version>${spring.boot.version}</version>
339                 <type>pom</type>
340                 <scope>import</scope>
341             </dependency>
342         </dependencies>
343     </dependencyManagement>
344     <dependencies>
345         <dependency>
346             <groupId>net.sf.jopt-simple</groupId>
347             <artifactId>jopt-simple</artifactId>
348             <version>${jopt.simple.version}</version>
349         </dependency>
350         <dependency>
351             <groupId>io.swagger</groupId>
352             <artifactId>swagger-core</artifactId>
353             <version>${io.swagger.version}</version>
354             <exclusions>
355                 <exclusion>
356                     <groupId>javax.ws.rs</groupId>
357                     <artifactId>jsr311-api</artifactId>
358                 </exclusion>
359             </exclusions>
360         </dependency>
361         <dependency>
362             <groupId>io.swagger</groupId>
363             <artifactId>swagger-annotations</artifactId>
364             <version>${io.swagger.version}</version>
365         </dependency>
366         <dependency>
367             <groupId>io.swagger</groupId>
368             <artifactId>swagger-jersey-jaxrs</artifactId>
369             <version>${io.swagger.version}</version>
370             <exclusions>
371                 <exclusion>
372                     <groupId>org.glassfish.jersey.media</groupId>
373                     <artifactId>jersey-media-multipart</artifactId>
374                 </exclusion>
375                 <exclusion>
376                     <artifactId>jersey-core</artifactId>
377                     <groupId>com.sun.jersey</groupId>
378                 </exclusion>
379                 <exclusion>
380                     <artifactId>jersey-json</artifactId>
381                     <groupId>com.sun.jersey</groupId>
382                 </exclusion>
383                 <exclusion>
384                     <artifactId>jersey-server</artifactId>
385                     <groupId>com.sun.jersey</groupId>
386                 </exclusion>
387                 <exclusion>
388                     <artifactId>jersey-client</artifactId>
389                     <groupId>com.sun.jersey</groupId>
390                 </exclusion>
391                 <exclusion>
392                     <artifactId>jsr311-api</artifactId>
393                     <groupId>javax.ws.rs</groupId>
394                 </exclusion>
395                 <exclusion>
396                     <artifactId>jersey-multipart</artifactId>
397                     <groupId>com.sun.jersey.contribs</groupId>
398                 </exclusion>
399             </exclusions>
400         </dependency>
401         <dependency>
402             <groupId>commons-configuration</groupId>
403             <artifactId>commons-configuration</artifactId>
404             <version>${commons.configuration.version}</version>
405             <exclusions>
406                 <exclusion>
407                     <artifactId>commons-lang</artifactId>
408                     <groupId>commons-lang</groupId>
409                 </exclusion>
410             </exclusions>
411         </dependency>
412         <dependency>
413             <groupId>commons-lang</groupId>
414             <artifactId>commons-lang</artifactId>
415             <version>${commons.lang.version}</version>
416         </dependency>
417         <!-- eelf dependency -->
418         <dependency>
419             <groupId>com.att.eelf</groupId>
420             <artifactId>eelf-core</artifactId>
421             <version>${eelf.core.version}</version>
422         </dependency>
423         <dependency>
424             <groupId>ch.qos.logback</groupId>
425             <artifactId>logback-core</artifactId>
426             <version>${logback.version}</version>
427         </dependency>
428         <dependency>
429             <groupId>ch.qos.logback</groupId>
430             <artifactId>logback-classic</artifactId>
431             <version>${logback.version}</version>
432         </dependency>
433         <dependency>
434             <groupId>ch.qos.logback</groupId>
435             <artifactId>logback-access</artifactId>
436             <version>${logback.version}</version>
437         </dependency>
438         <dependency>
439             <groupId>org.hamcrest</groupId>
440             <artifactId>hamcrest-junit</artifactId>
441             <version>${hamcrest.junit.version}</version>
442         </dependency>
443         <dependency>
444             <groupId>junit</groupId>
445             <artifactId>junit</artifactId>
446             <scope>test</scope>
447         </dependency>
448         <dependency>
449             <groupId>com.google.guava</groupId>
450             <artifactId>guava</artifactId>
451             <version>${google.guava.version}</version>
452         </dependency>
453         <dependency>
454             <groupId>org.janusgraph</groupId>
455             <artifactId>janusgraph-core</artifactId>
456             <version>${janusgraph.version}</version>
457             <exclusions>
458                 <exclusion>
459                     <groupId>org.slf4j</groupId>
460                     <artifactId>slf4j-log4j12</artifactId>
461                 </exclusion>
462             </exclusions>
463         </dependency>
464         <dependency>
465             <groupId>org.janusgraph</groupId>
466             <artifactId>janusgraph-cassandra</artifactId>
467             <version>${janusgraph.version}</version>
468             <exclusions>
469                 <exclusion>
470                     <groupId>org.slf4j</groupId>
471                     <artifactId>slf4j-log4j12</artifactId>
472                 </exclusion>
473             </exclusions>
474         </dependency>
475         <dependency>
476             <groupId>org.apache.tinkerpop</groupId>
477             <artifactId>gremlin-driver</artifactId>
478             <version>${gremlin.version}</version>
479         </dependency>
480         <dependency>
481             <groupId>com.fasterxml.jackson.jaxrs</groupId>
482             <artifactId>jackson-jaxrs-json-provider</artifactId>
483         </dependency>
484         <dependency>
485             <groupId>org.mockito</groupId>
486             <artifactId>mockito-all</artifactId>
487             <version>${mockito.version}</version>
488             <scope>test</scope>
489         </dependency>
490         <dependency>
491             <groupId>org.powermock</groupId>
492             <artifactId>powermock-module-junit4</artifactId>
493             <version>${powermock.version}</version>
494             <scope>test</scope>
495         </dependency>
496         <dependency>
497             <groupId>org.powermock</groupId>
498             <artifactId>powermock-api-mockito</artifactId>
499             <version>${powermock.version}</version>
500             <scope>test</scope>
501         </dependency>
502         <dependency>
503             <groupId>com.beust</groupId>
504             <artifactId>jcommander</artifactId>
505             <version>${jcommander.version}</version>
506         </dependency>
507         <dependency>
508             <groupId>org.json</groupId>
509             <artifactId>json</artifactId>
510             <version>${json.version}</version>
511         </dependency>
512         <dependency>
513             <groupId>org.freemarker</groupId>
514             <artifactId>freemarker</artifactId>
515             <version>${freemarker.version}</version>
516         </dependency>
517         <dependency>
518             <groupId>javax.xml.bind</groupId>
519             <artifactId>jaxb-api</artifactId>
520             <version>${jaxb.version}</version>
521         </dependency>
522         <dependency>
523             <groupId>com.sun.xml.bind</groupId>
524             <artifactId>jaxb-impl</artifactId>
525             <version>${jaxb.version}</version>
526         </dependency>
527         <dependency>
528             <groupId>com.sun.xml.bind</groupId>
529             <artifactId>jaxb-core</artifactId>
530             <version>${jaxb.version}</version>
531         </dependency>
532         <dependency>
533             <groupId>com.sun.xml.bind</groupId>
534             <artifactId>jaxb-xjc</artifactId>
535             <version>${jaxb.version}</version>
536         </dependency>
537         <dependency>
538             <groupId>org.eclipse.persistence</groupId>
539             <artifactId>eclipselink</artifactId>
540             <version>${eclipse.persistence.version}</version>
541         </dependency>
542         <dependency>
543             <groupId>org.eclipse.persistence</groupId>
544             <artifactId>org.eclipse.persistence.moxy</artifactId>
545             <version>${eclipse.persistence.version}</version>
546             <scope>compile</scope>
547         </dependency>
548         <dependency>
549             <groupId>org.powermock</groupId>
550             <artifactId>powermock-module-javaagent</artifactId>
551             <version>${powermock.version}</version>
552             <scope>test</scope>
553         </dependency>
554         <dependency>
555             <groupId>org.powermock</groupId>
556             <artifactId>powermock-module-junit4-rule-agent</artifactId>
557             <version>${powermock.version}</version>
558             <scope>test</scope>
559         </dependency>
560         <dependency>
561             <groupId>com.github.fge</groupId>
562             <artifactId>json-patch</artifactId>
563             <version>${json.patch.version}</version>
564         </dependency>
565         <dependency>
566             <groupId>org.javatuples</groupId>
567             <artifactId>javatuples</artifactId>
568             <version>${javatuples.version}</version>
569             <scope>compile</scope>
570         </dependency>
571         <dependency>
572             <groupId>com.google.code.gson</groupId>
573             <artifactId>gson</artifactId>
574             <version>${gson.version}</version>
575         </dependency>
576         <dependency>
577             <groupId>com.bazaarvoice.jolt</groupId>
578             <artifactId>jolt-complete</artifactId>
579             <version>${jolt.version}</version>
580         </dependency>
581         <dependency>
582             <groupId>com.jayway.jsonpath</groupId>
583             <artifactId>json-path</artifactId>
584             <version>${json.path.version}</version>
585         </dependency>
586         <!-- Do not use activemq-all because they force you to use a specific logging
587             and they shade it so you can't simply exclude it and when you deploy the
588             jar, you will notice failure -->
589         <dependency>
590             <groupId>org.apache.activemq</groupId>
591             <artifactId>activemq-broker</artifactId>
592             <version>${activemq.version}</version>
593         </dependency>
594         <dependency>
595             <groupId>org.apache.activemq</groupId>
596             <artifactId>activemq-client</artifactId>
597             <version>${activemq.version}</version>
598         </dependency>
599         <dependency>
600             <groupId>org.onap.aai.aai-common</groupId>
601             <artifactId>aai-core</artifactId>
602             <version>${aai.core.version}</version>
603             <exclusions>
604                 <exclusion>
605                     <groupId>com.sun.jersey</groupId>
606                     <artifactId>jersey-core</artifactId>
607                 </exclusion>
608                 <exclusion>
609                     <groupId>org.codehaus.jackson</groupId>
610                     <artifactId>jackson-mapper-asl</artifactId>
611                 </exclusion>
612             </exclusions>
613         </dependency>
614         <dependency>
615             <groupId>org.springframework</groupId>
616             <artifactId>spring-jms</artifactId>
617             <version>${spring.jms.version}</version>
618             <exclusions>
619                 <exclusion>
620                     <groupId>com.sun.jersey</groupId>
621                     <artifactId>jersey-core</artifactId>
622                 </exclusion>
623             </exclusions>
624         </dependency>
625         <!-- Do not use the jersey-client since jersey client 1.0 version clashes
626             with jersey 2 which we are using -->
627         <!-- Use this to make http requests instead of jersey 1.0 client -->
628         <dependency>
629             <groupId>org.apache.httpcomponents</groupId>
630             <artifactId>httpclient</artifactId>
631             <version>${httpclient.version}</version>
632         </dependency>
633         <dependency>
634             <groupId>org.skyscreamer</groupId>
635             <artifactId>jsonassert</artifactId>
636             <version>${jsonassert.version}</version>
637             <scope>test</scope>
638         </dependency>
639         <!--
640             Explicitly stating the security spring framework and
641             exclude the bouncy castle since that is somehow overwriting
642             our p12 file decryption that's built into java security
643             This will cause the password is incorrect
644             This needs to be added back if org.bouncy castle dependency
645             sneaks backs in and causing issues with the two way ssl
646         -->
647         <dependency>
648             <groupId>org.springframework.security</groupId>
649             <artifactId>spring-security-rsa</artifactId>
650             <version>${spring.security.version}</version>
651             <exclusions>
652                 <exclusion>
653                     <groupId>org.bouncycastle</groupId>
654                     <artifactId>bcpkix-jdk15on</artifactId>
655                 </exclusion>
656             </exclusions>
657         </dependency>
658         <dependency>
659             <groupId>io.netty</groupId>
660             <artifactId>netty-handler</artifactId>
661             <version>${netty.handler.version}</version>
662         </dependency>
663         <dependency>
664             <groupId>org.springframework.boot</groupId>
665             <artifactId>spring-boot-starter-web</artifactId>
666             <exclusions>
667                 <exclusion>
668                     <groupId>org.springframework.boot</groupId>
669                     <artifactId>spring-boot-starter-tomcat</artifactId>
670                 </exclusion>
671                 <exclusion>
672                     <groupId>org.slf4j</groupId>
673                     <artifactId>log4j-over-slf4j</artifactId>
674                 </exclusion>
675             </exclusions>
676         </dependency>
677         <dependency>
678             <groupId>org.springframework.boot</groupId>
679             <artifactId>spring-boot-starter-jetty</artifactId>
680         </dependency>
681         <dependency>
682             <groupId>org.springframework.boot</groupId>
683             <artifactId>spring-boot-starter-jersey</artifactId>
684         </dependency>
685         <dependency>
686             <groupId>org.springframework</groupId>
687             <artifactId>spring-web</artifactId>
688             <version>${spring.web.version}</version>
689         </dependency>
690         <dependency>
691             <groupId>io.netty</groupId>
692             <artifactId>netty-all</artifactId>
693             <version>${netty.version}</version>
694         </dependency>
695         <dependency>
696             <groupId>org.codehaus.groovy</groupId>
697             <artifactId>groovy</artifactId>
698             <version>${groovy.version}</version>
699             <classifier>indy</classifier>
700         </dependency>
701         <dependency>
702             <groupId>org.springframework</groupId>
703             <artifactId>spring-test</artifactId>
704             <version>${spring.test.version}</version>
705             <scope>test</scope>
706         </dependency>
707         <dependency>
708             <groupId>org.springframework.boot</groupId>
709             <artifactId>spring-boot-test</artifactId>
710             <scope>test</scope>
711         </dependency>
712         <dependency>
713             <groupId>org.antlr</groupId>
714             <artifactId>antlr4-runtime</artifactId>
715             <version>${antlr.version}</version>
716         </dependency>
717         <dependency>
718             <groupId>org.antlr</groupId>
719             <artifactId>antlr4-maven-plugin</artifactId>
720             <version>${antlr.version}</version>
721             <exclusions>
722                 <exclusion>
723                     <groupId>org.sonatype.sisu</groupId>
724                     <artifactId>sisu-guava</artifactId>
725                 </exclusion>
726             </exclusions>
727         </dependency>
728         <dependency>
729             <groupId>org.apache.tinkerpop</groupId>
730             <artifactId>gremlin-core</artifactId>
731             <version>${gremlin.version}</version>
732             <exclusions>
733                 <exclusion>
734                     <groupId>org.slf4j</groupId>
735                     <artifactId>slf4j-log4j12</artifactId>
736                 </exclusion>
737             </exclusions>
738         </dependency>
739         <dependency>
740             <groupId>org.apache.tinkerpop</groupId>
741             <artifactId>tinkergraph-gremlin</artifactId>
742             <version>${gremlin.version}</version>
743         </dependency>
744         <dependency>
745             <groupId>org.apache.tinkerpop</groupId>
746             <artifactId>gremlin-groovy</artifactId>
747             <version>${gremlin.version}</version>
748         </dependency>
749         <dependency>
750             <groupId>org.codehaus.plexus</groupId>
751             <artifactId>plexus-utils</artifactId>
752             <version>${plexus.utils.version}</version>
753         </dependency>
754     </dependencies>
755     <build>
756         <resources>
757             <resource>
758                 <directory>${project.basedir}/src/main/swm</directory>
759                 <targetPath>${project.build.directory}/swm</targetPath>
760                 <filtering>false</filtering>
761             </resource>
762             <resource>
763                 <directory>${project.basedir}/src/main/resources</directory>
764                 <includes>
765                     <include>application.properties</include>
766                     <include>dme2.properties</include>
767                     <include>logback.xml</include>
768                     <include>localhost-access-logback.xml</include>
769                 </includes>
770                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
771                 <filtering>false</filtering>
772             </resource>
773             <resource>
774                 <directory>${project.basedir}/src/main/resources</directory>
775                 <includes>
776                     <include>**/*</include>
777                 </includes>
778                 <filtering>true</filtering>
779             </resource>
780             <resource>
781                 <directory>${project.basedir}/src/main/resources/etc/appprops/</directory>
782                 <includes>
783                     <include>janusgraph-realtime.properties</include>
784                     <include>janusgraph-cached.properties</include>
785                     <include>aaiconfig.properties</include>
786                 </includes>
787                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
788                 <filtering>false</filtering>
789             </resource>
790             <resource>
791                 <directory>${project.basedir}/src/main/resources/etc/auth/</directory>
792                 <includes>
793                     <include>aai-client-cert.p12</include>
794                     <include>tomcat_keystore</include>
795                     <include>aai_policy.json</include>
796                 </includes>
797                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
798                 <filtering>true</filtering>
799             </resource>
800             <resource>
801                 <directory>${project.basedir}/src/main/resources/</directory>
802                 <includes>
803                     <include>logback.xml</include>
804                     <include>localhost-access-logback.xml</include>
805                 </includes>
806                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
807                 <filtering>true</filtering>
808             </resource>
809             <resource>
810                 <directory>${project.basedir}/src/main/resources/schema/</directory>
811                 <includes>
812                     <include>**/oxm/**/*.xml</include>
813                     <include>**/dbedgerules/**/*.json</include>
814                     <include>**/query/**</include>
815                 </includes>
816                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig/schema</targetPath>
817                 <filtering>false</filtering>
818             </resource>
819             <resource>
820                 <directory>${project.basedir}/src/main/resources/query/</directory>
821                 <includes>
822                     <include>**/*.json</include>
823                 </includes>
824                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig/query</targetPath>
825                 <filtering>false</filtering>
826             </resource>
827             <resource>
828                 <directory>${project.basedir}/src/main/docker</directory>
829                 <includes>
830                     <include>**/*</include>
831                 </includes>
832                 <targetPath>${aai.build.directory}</targetPath>
833                 <filtering>true</filtering>
834             </resource>
835         </resources>
836         <pluginManagement>
837             <plugins>
838                 <plugin>
839                     <groupId>com.mycila</groupId>
840                     <artifactId>license-maven-plugin</artifactId>
841                     <version>3.0</version>
842                     <configuration>
843                         <header>LICENSE.TXT</header>
844                         <includes>
845                             <include>src/main/java/**</include>
846                             <include>src/test/java/**</include>
847                             <include>pom.xml</include>
848                         </includes>
849                         <skipExistingHeaders>true</skipExistingHeaders>
850                         <skip>false</skip>
851                     </configuration>
852                     <executions>
853                         <execution>
854                             <goals>
855                                 <!-- Set goal to "format" to auto update license headers -->
856                                 <goal>${license.goal.type}</goal>
857                             </goals>
858                             <phase>process-sources</phase>
859                         </execution>
860                     </executions>
861                 </plugin>
862                 <plugin>
863                     <groupId>org.codehaus.groovy.maven</groupId>
864                     <artifactId>gmaven-plugin</artifactId>
865                     <version>1.0</version>
866                     <executions>
867                         <execution>
868                             <phase>validate</phase>
869                             <goals>
870                                 <goal>execute</goal>
871                             </goals>
872                             <configuration>
873                                 <source>
874                                     println project.properties['aai.project.version'];
875                                     def versionArray;
876                                     if (project.properties['aai.project.version'] != null) {
877                                         versionArray = project.properties['aai.project.version'].split('\\.');
878                                     }
879
880                                     project.properties["project.major.version"] = versionArray[0];
881                                     project.properties["project.minor.version"] = versionArray[1];
882                                     project.properties['project.docker.latesttag.version'] = versionArray[0] + '.' + versionArray[1] + '-STAGING-latest';
883                                     println 'New Tag for docker:' + project.properties['project.docker.latesttag.version'];
884                                 </source>
885                             </configuration>
886                         </execution>
887                     </executions>
888                 </plugin>
889             </plugins>
890         </pluginManagement>
891         <plugins>
892             <plugin>
893                 <groupId>org.apache.maven.plugins</groupId>
894                 <artifactId>maven-clean-plugin</artifactId>
895                 <version>2.4.1</version>
896                 <configuration>
897                     <filesets>
898                         <fileset>
899                             <directory>${project.basedir}/src/main/resources/etc/oxm</directory>
900                             <includes>
901                                 <include>**/*</include>
902                             </includes>
903                             <followSymlinks>false</followSymlinks>
904                         </fileset>
905                         <fileset>
906                             <directory>${project.basedir}/src/main/resources/etc/dbedgerules</directory>
907                             <includes>
908                                 <include>**/*</include>
909                             </includes>
910                             <followSymlinks>false</followSymlinks>
911                         </fileset>
912                         <fileset>
913                             <directory>${project.basedir}/src/main/resources/schema</directory>
914                             <includes>
915                                 <include>**/oxm/**</include>
916                                 <include>**/dbedgerules/**</include>
917                             </includes>
918                             <followSymlinks>false</followSymlinks>
919                         </fileset>
920                     </filesets>
921                 </configuration>
922             </plugin>
923             <plugin>
924                 <groupId>org.springframework.boot</groupId>
925                 <artifactId>spring-boot-maven-plugin</artifactId>
926             </plugin>
927             <plugin>
928                 <artifactId>exec-maven-plugin</artifactId>
929                 <groupId>org.codehaus.mojo</groupId>
930             </plugin>
931             <plugin>
932                 <groupId>org.apache.maven.plugins</groupId>
933                 <artifactId>maven-javadoc-plugin</artifactId>
934             </plugin>
935             <plugin>
936                 <groupId>com.mycila</groupId>
937                 <artifactId>license-maven-plugin</artifactId>
938             </plugin>
939             <plugin>
940                 <artifactId>maven-assembly-plugin</artifactId>
941                 <configuration>
942                     <descriptors>
943                         <descriptor>src/main/assembly/descriptor.xml</descriptor>
944                     </descriptors>
945                 </configuration>
946                 <executions>
947                     <execution>
948                         <id>make-assembly</id> <!-- this is used for inheritance merges -->
949                         <phase>package</phase> <!-- bind to the packaging phase -->
950                         <goals>
951                             <goal>single</goal>
952                         </goals>
953                     </execution>
954                 </executions>
955             </plugin>
956             <plugin>
957                 <groupId>org.apache.maven.plugins</groupId>
958                 <artifactId>maven-surefire-plugin</artifactId>
959                 <version>2.12.4</version>
960                 <configuration>
961                     <argLine>-noverify ${argLine}</argLine>
962                     <runOrder>alphabetical</runOrder>
963                 </configuration>
964             </plugin>
965             <plugin>
966                 <groupId>org.codehaus.mojo</groupId>
967                 <artifactId>sonar-maven-plugin</artifactId>
968                 <version>3.3</version>
969             </plugin>
970             <plugin>
971                 <groupId>org.codehaus.groovy.maven</groupId>
972                 <artifactId>gmaven-plugin</artifactId>
973             </plugin>
974             <plugin>
975                 <groupId>org.jacoco</groupId>
976                 <artifactId>jacoco-maven-plugin</artifactId>
977                 <version>0.7.9</version>
978                 <configuration>
979                     <dumpOnExit>true</dumpOnExit>
980                     <excludes>
981                         <exclude>**/**/models/**/*.class</exclude>
982                     </excludes>
983                 </configuration>
984                 <executions>
985                     <execution>
986                         <id>jacoco-initialize-unit-tests</id>
987                         <goals>
988                             <goal>prepare-agent</goal>
989                         </goals>
990                         <configuration>
991                             <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
992                             <!-- <append>true</append> -->
993                         </configuration>
994                     </execution>
995                     <execution>
996                         <id>post-unit-test</id>
997                         <phase>test</phase>
998                         <goals>
999                             <goal>report</goal>
1000                         </goals>
1001                         <configuration>
1002                             <!-- Sets the path to the file which contains the execution data. -->
1003                             <dataFile>${project.build.directory}/coverage-reports/jacoco.exec</dataFile>
1004                             <!-- Sets the output directory for the code coverage report. -->
1005                             <outputDirectory>${project.reporting.outputDirectory}/jacoco</outputDirectory>
1006                         </configuration>
1007                     </execution>
1008                     <execution>
1009                         <id>default-check</id>
1010                         <goals>
1011                             <goal>check</goal>
1012                         </goals>
1013                         <configuration>
1014                             <dataFile>${project.build.directory}/coverage-reports/jacoco.exec</dataFile>
1015                             <rules>
1016                                 <!--  implementation is needed only for Maven 2  -->
1017                                 <rule implementation="org.jacoco.maven.RuleConfiguration">
1018                                     <element>BUNDLE</element>
1019                                     <limits>
1020                                         <limit implementation="org.jacoco.report.check.Limit">
1021                                             <counter>LINE</counter>
1022                                             <value>COVEREDRATIO</value>
1023                                             <minimum>${jacoco.line.coverage.limit}</minimum>
1024                                         </limit>
1025                                     </limits>
1026                                 </rule>
1027                             </rules>
1028                         </configuration>
1029                     </execution>
1030                 </executions>
1031             </plugin>
1032             <plugin>
1033                 <groupId>org.springframework.boot</groupId>
1034                 <artifactId>spring-boot-maven-plugin</artifactId>
1035                 <configuration>
1036                     <mainClass>${start-class}</mainClass>
1037                     <layout>ZIP</layout>
1038                 </configuration>
1039                 <executions>
1040                     <execution>
1041                         <goals>
1042                             <goal>repackage</goal>
1043                         </goals>
1044                     </execution>
1045                 </executions>
1046             </plugin>
1047             <plugin>
1048                 <groupId>org.antlr</groupId>
1049                 <artifactId>antlr4-maven-plugin</artifactId>
1050                 <version>4.7</version>
1051                 <executions>
1052                     <execution>
1053                         <goals>
1054                             <goal>antlr4</goal>
1055                         </goals>
1056                         <configuration>
1057                             <sourceDirectory>src/main/resources/antlr4</sourceDirectory>
1058                             <!-- <outputDirectory>src/main/java/antlr4</outputDirectory> -->
1059                         </configuration>
1060                     </execution>
1061                 </executions>
1062             </plugin>
1063             <plugin>
1064                 <groupId>org.apache.maven.plugins</groupId>
1065                 <artifactId>maven-dependency-plugin</artifactId>
1066                 <version>2.8</version>
1067                 <executions>
1068                     <execution>
1069                         <id>unpack-schema-dependency</id>
1070                         <phase>initialize</phase>
1071                         <goals>
1072                             <goal>unpack</goal>
1073                         </goals>
1074                         <configuration>
1075                             <artifactItems>
1076                                 <artifactItem>
1077                                     <groupId>org.onap.aai.aai-common</groupId>
1078                                     <artifactId>aai-schema</artifactId>
1079                                     <version>${aai.schema.version}</version>
1080                                     <outputDirectory>${project.basedir}/src/main/resources/schema/</outputDirectory>
1081                                     <includes>**/oxm/**/*.xml</includes>
1082                                 </artifactItem>
1083                             </artifactItems>
1084                             <!-- other configurations here -->
1085                         </configuration>
1086                     </execution>
1087                     <execution>
1088                         <id>unpack-edgerules-dependency</id>
1089                         <phase>initialize</phase>
1090                         <goals>
1091                             <goal>unpack</goal>
1092                         </goals>
1093                         <configuration>
1094                             <artifactItems>
1095                                 <artifactItem>
1096                                     <groupId>org.onap.aai.aai-common</groupId>
1097                                     <artifactId>aai-schema</artifactId>
1098                                     <version>${aai.schema.version}</version>
1099                                     <outputDirectory>${project.basedir}/src/main/resources/schema/</outputDirectory>
1100                                     <includes>**/dbedgerules/**/*.json</includes>
1101                                 </artifactItem>
1102                             </artifactItems>
1103                             <!-- other configurations here -->
1104                         </configuration>
1105                     </execution>
1106                 </executions>
1107             </plugin>
1108             <plugin>
1109                 <groupId>com.mycila</groupId>
1110                 <artifactId>license-maven-plugin</artifactId>
1111                 <version>3.0</version>
1112                 <configuration>
1113                     <header>LICENSE.TXT</header>
1114                     <includes>
1115                         <include>src/main/java/**</include>
1116                         <include>src/test/java/**</include>
1117                         <include>pom.xml</include>
1118                     </includes>
1119                     <skipExistingHeaders>false</skipExistingHeaders>
1120                     <skip>false</skip>
1121                 </configuration>
1122                 <executions>
1123                     <execution>
1124                         <goals>
1125                             <!-- Set goal to "format" to auto update license headers -->
1126                             <goal>${license.goal.type}</goal>
1127                         </goals>
1128                         <phase>process-sources</phase>
1129                     </execution>
1130                 </executions>
1131             </plugin>
1132         </plugins>
1133     </build>
1134 </project>