<!--
============LICENSE_START==========================================
ONAP : APPC
===================================================================
Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
===================================================================
Unless otherwise specified, all software contained herein is licensed
under the Apache License, Version 2.0 (the License);
you may not use this software except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
ECOMP is a trademark and service mark of AT&T Intellectual Property.
============LICENSE_END============================================
-->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN" "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
<!--
This configuration file was written by the eclipse-cs plugin configuration editor
-->
<!--
Checkstyle-Configuration: APPC Rules
Description: none
-->
<module name="Checker">
<property name="severity" value="warning"/>
<property name="charset" value="UTF-8"/>
<module name="TreeWalker">
<module name="FileContentsHolder"/>
<module name="OuterTypeFilename">
<property name="severity" value="error"/>
</module>
<module name="IllegalTokenText">
<property name="severity" value="warning"/>
<property name="tokens" value="CHAR_LITERAL,STRING_LITERAL"/>
<property name="format" value="\\u00(08|09|0(a|A)|0(c|C)|0(d|D)|22|27|5(C|c))|\\(0(10|11|12|14|15|42|47)|134)"/>
<property name="message" value="Avoid using corresponding octal or Unicode escape."/>
<message key="illegal.token.text" value="Token text matches the illegal pattern ''{0}''. Avoid using Octal or Unicode escape sequences. They are confusing and often error prone."/>
</module>
<module name="AvoidEscapedUnicodeCharacters">
<property name="severity" value="warning"/>
<property name="allowEscapesForControlCharacters" value="true"/>
<property name="allowByTailComment" value="true"/>
<property name="allowNonPrintableEscapes" value="true"/>
</module>
<module name="LineLength">
<property name="severity" value="info"/>
<property name="ignorePattern" value="^package.*|^import.*|a href|href|http://|https://|ftp://"/>
<property name="max" value="120"/>
</module>
<module name="AvoidStarImport">
<property name="severity" value="error"/>
</module>
<module name="NoLineWrap"/>
<module name="EmptyBlock">
<property name="severity" value="error"/>
<property name="option" value="text"/>
<property name="tokens" value="LITERAL_TRY,LITERAL_CATCH,LITERAL_FINALLY,LITERAL_IF,LITERAL_ELSE,LITERAL_SWITCH"/>
</module>
<module name="NeedBraces">
<property name="severity" value="warning"/>
</module>
<module name="OneStatementPerLine">
<property name="severity" value="warning"/>
</module>
<module name="MultipleVariableDeclarations">
<property name="severity" value="warning"/>
</module>
<module name="ArrayTypeStyle">
<property name="severity" value="info"/>
</module>
<module name="UpperEll">
<property name="severity" value="warning"/>
</module>
<module name="ModifierOrder">
<property name="severity" value="warning"/>
</module>
<module name="EmptyLineSeparator">
<property name="severity" value="info"/>
<property name="allowNoEmptyLineBetweenFields" value="true"/>
</module>
<module name="PackageName">
<property name="severity" value="warning"/>
<property name="format" value="^[a-z]+(\.[a-z][a-z0-9]*)*$"/>
<message key="name.invalidPattern" value="Package name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="TypeName">
<property name="severity" value="warning"/>
<message key="name.invalidPattern" value="Type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="MemberName">
<property name="severity" value="warning"/>
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern" value="Member name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="ParameterName">
<property name="severity" value="warning"/>
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern" value="Parameter name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="LocalVariableName">
<property name="severity" value="warning"/>
<property name="format" value="^[a-z][a-zA-Z0-9_]*$"/>
<property name="allowOneCharVarInForLoop" value="true"/>
<message key="name.invalidPattern" value="Local variable name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="ClassTypeParameterName">
<property name="severity" value="warning"/>
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
<message key="name.invalidPattern" value="Class type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="MethodTypeParameterName">
<property name="severity" value="warning"/>
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
<message key="name.invalidPattern" value="Method type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="NoFinalizer">
<property name="severity" value="error"/>
</module>
<module name="VariableDeclarationUsageDistance">
<property name="severity" value="info"/>
<property name="allowedDistance" value="5"/>
</module>
<module name="MethodParamPad">
<property name="severity" value="info"/>
</module>
<module name="AnnotationLocation">
<property name="severity" value="warning"/>
<property name="allowSamelineMultipleAnnotations" value="true"/>
</module>
<module name="NonEmptyAtclauseDescription">
<property name="severity" value="warning"/>
</module>
<module name="SummaryJavadocCheck">
<property name="severity" value="ignore"/>
<metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
</module>
<module name="JavadocMethod">
<property name="severity" value="warning"/>
<property name="minLineCount" value="2"/>
<property name="allowedAnnotations" value="Override, Test"/>
<property name="scope" value="protected"/>
<property name="allowThrowsTagsForSubclasses" value="true"/>
<property name="allowMissingThrowsTags" value="true"/>
<property name="allowMissingReturnTag" value="true"/>
<property name="suppressLoadErrors" value="true"/>
</module>
<module name="MethodName">
<property name="severity" value="warning"/>
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9_]*$"/>
<message key="name.invalidPattern" value="Method name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="JavadocType">
<property name="severity" value="warning"/>
<property name="scope" value="protected"/>
</module>
<module name="JavadocStyle">
<property name="severity" value="warning"/>
<property name="scope" value="protected"/>
<property name="checkFirstSentence" value="false"/>
</module>
<module name="JavadocVariable">
<property name="severity" value="warning"/>
<property name="excludeScope" value="private"/>
<property name="scope" value="protected"/>
</module>
<module name="ConstantName">
<property name="severity" value="warning"/>
</module>
<module name="InterfaceTypeParameterName">
<property name="severity" value="warning"/>
</module>
<module name="IllegalImport">
<property name="severity" value="error"/>
</module>
<module name="RedundantImport">
<property name="severity" value="warning"/>
</module>
<module name="UnusedImports">
<property name="severity" value="info"/>
</module>
<module name="AnonInnerLength">
<property name="severity" value="info"/>
</module>
<module name="MethodLength">
<property name="severity" value="info"/>
.highlight .hll { background-color: #ffffcc }
.highlight .c { color: #888888 } /* Comment */
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
.highlight .k { color: #008800; font-weight: bold } /* Keyword */
.highlight .ch { color: #888888 } /* Comment.Hashbang */
.highlight .cm { color: #888888 } /* Comment.Multiline */
.highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */
.highlight .cpf { color: #888888 } /* Comment.PreprocFile */
.highlight .c1 { color: #888888 } /* Comment.Single */
.highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #aa0000 } /* Generic.Error */
.highlight .gh { color: #333333 } /* Generic.Heading */
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #555555 } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #666666 } /* Generic.Subheading */
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
.highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: #008800 } /* Keyword.Pseudo */
.highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */
.highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */
.highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */
.highlight .na { color: #336699 } /* Name.Attribute */
.highlight .nb { color: #003388 } /* Name.Builtin */
.highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */
.highlight .no { color: #003366; font-weight: bold } /* Name.Constant */
.highlight .nd { color: #555555 } /* Name.Decorator */
.highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */
.highlight .nl { color: #336699; font-style: italic } /* Name.Label */
.highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */
.highlight .py { color: #336699; font-weight: bold } /* Name.Property */
.highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */
.highlight .nv { color: #336699 } /* Name.Variable */
.highlight .ow { color: #008800 } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */
.highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */
.highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */
.highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */
.highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */
.highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */
.highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */
.highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */
.highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */
.highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */
.highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */
.highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */
.highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */
.highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */
.highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */
.highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */
.highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */
.highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */
.highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */
.highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */
.highlight .vc { color: #336699 } /* Name.Variable.Class */
.highlight .vg { color: #dd7700 } /* Name.Variable.Global */
.highlight .vi { color: #3333bb } /* Name.Variable.Instance */
.highlight .vm { color: #336699 } /* Name.Variable.Magic */
.highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */<?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>
<!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
Any updates needed should be made to that template and not to the generated
pom.xml file -->
<parent>
<groupId>org.opendaylight.controller</groupId>
<artifactId>mdsal-it-parent</artifactId>
<version>3.0.8</version>
<relativePath/>
</parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>mdsal-it-parent</artifactId>
<version>2.2.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
<description>Root POM to be used in place of odlparent for CCSDK based projects</description>
<url>http://wiki.onap.org</url>
<organization>
<name>ONAP</name>
</organization>
<issueManagement>
<system>JIRA</system>
<url>https://jira.onap.org/</url>
</issueManagement>
<distributionManagement>
<repository>
<id>ecomp-releases</id>
<url>${onap.nexus.release-url}</url>
</repository>
<snapshotRepository>
<id>ecomp-snapshots</id>
<url>${onap.nexus.snapshot-url}</url>
</snapshotRepository>
</distributionManagement>
<properties>
<!-- Sonar properties -->
<sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
<sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
<!-- Default Sonar configuration -->
<sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
<!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
<sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
<!-- Jacoco properties -->
<jacoco.version>0.8.5</jacoco.version>
<!-- properties from oparent -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- sitePath may be overridden in the inheriting POM if desired -->
<sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
<!-- If following file exist, auto-generation of swagger.json will be done -->
<swagger-properties>${basedir}/src/main/resources/swagger.properties</swagger-properties>
<!-- If following file exist, auto-generation of sdk will be done -->
<swagger-json>${basedir}/src/main/resources/swagger.json</swagger-json>
<!-- end of properties from oparent -->
<!-- ONAP repositories -->
<onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
<onap.nexus.host>nexus.onap.org</onap.nexus.host>
<onap.nexus.port>443</onap.nexus.port>
<onap.nexus.protocol>https</onap.nexus.protocol>
<onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
<onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
<onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
<onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
<onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
<onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
<!-- OpenDaylight repositories -->
<opendaylight.nexus.public-url>https://nexus.opendaylight.org/content/repositories/public/</opendaylight.nexus.public-url>
<opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>11</java.version>
<maven-surefire-plugin.version>3.0.0-M5</maven-surefire-plugin.version>
<maven-failsafe-plugin.version>3.0.0-M5</maven-failsafe-plugin.version>
<bundle.plugin.version>4.2.1</bundle.plugin.version>
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
<features.file>features.xml</features.file>
<jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
<salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
<checkstyle.plugin.version>3.1.1</checkstyle.plugin.version>
<checkstyle.skip>true</checkstyle.skip>
<odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
<!-- logging-analytics versions -->
<logging-analytics.version>1.6.9</logging-analytics.version>
<!-- CCSDK component versions -->
<ccsdk.cds.version>1.2.0-SNAPSHOT</ccsdk.cds.version>
<ccsdk.features.version>1.2.0-SNAPSHOT</ccsdk.features.version>
<ccsdk.distribution.version>1.2.0-SNAPSHOT</ccsdk.distribution.version>
<ccsdk.sli.version>1.3.0-SNAPSHOT</ccsdk.sli.version>
<ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
<ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
<ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
<ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
<sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
<sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
<sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
<sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
<!-- Support libraries used by OpenDaylight -->
<odl.controller.mdsal.version>1.13.2</odl.controller.mdsal.version>
<odl.mdsal.version>7.0.7</odl.mdsal.version>
<odl.mdsal.model.version>7.0.7</odl.mdsal.model.version>
<odl.netconf.restconf.version>1.13.2</odl.netconf.restconf.version>
<odl.netconf.netconf.version>1.13.2</odl.netconf.netconf.version>
<odl.netconf.sal.rest.docgen.version>1.13.2</odl.netconf.sal.rest.docgen.version>
<!-- Used by aaa, vtn -->
<commons.codec.version>1.15</commons.codec.version>
<!-- Used by netconf, ovsdb -->
<commons.lang3.version>3.11</commons.lang3.version>
<!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
<commons.lang.version>2.6</commons.lang.version>
<!-- Used by neutron; see also controller, vtn -->
<commons.net.version>3.8.0</commons.net.version>
<!-- Used by neutron -->
<eclipse.persistence.version>2.7.7</eclipse.persistence.version>
<!-- Used by aaa -->
<felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
<!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
<gson.version>2.8.5</gson.version>
<!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
<guava.version>29.0-jre</guava.version>
<!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
integration/distribution, snmp4sdn, toolkit, ttp -->
<jackson.version>2.11.4</jackson.version>
<!-- Used by snmp4sdn, yangtools -->
<javassist.version>3.27.0-GA</javassist.version>
<!-- FIXME remove all dependencies for jersey 1.17 after migration all projects -->
<!-- Used by aaa, alto, netconf, neutron, sfc; see also affinity, defense4all, snmp4sdn, toolkit -->
<jersey.version>2.27</jersey.version>
<!-- Used by sfc -->
<jersey.client.version>2.27</jersey.client.version>
<!-- New packages for jersey migration 1.17 to 2.8 -->
<!-- appache.geronimo.bundle for DocGen -->
<!-- Used by aaa, iotdm, netconf, ovsdb, sfc -->
<org.json.version>20131018</org.json.version>
<!-- Used everywhere -->
<junit.version>4.13</junit.version>
<!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
<logback.version>1.11.7</logback.version>
<!-- Used by nic, sfc, sxp, tsdr -->
<mockito.version>3.3.3</mockito.version>
<!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
<netty.version>4.1.63.Final</netty.version>
<!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
<slf4j.version>1.7.29</slf4j.version>
<!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
<spring.version>4.3.25.RELEASE</spring.version>
<!-- Extra support libraries used by SDN-C -->
<jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
<antlr.version>4.8-1</antlr.version>
<eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
<!-- Managed dependency versions -->
<apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
<apache.httpcomponents.client.version>4.5.10</apache.httpcomponents.client.version>
<derby.version>10.14.2.0</derby.version>
<eelf.version>1.0.0</eelf.version>
<grpc.version>1.21.1</grpc.version>
<mariadb.connector.version>2.7.2</mariadb.connector.version>
<mariadb4j.version>2.4.0</mariadb4j.version>
<testng.version>6.14.3</testng.version>
<tomcat-jdbc.version>9.0.30</tomcat-jdbc.version>
<jetty.version>9.4.38.v20210224</jetty.version>
<skip.karaf.featureTest>true</skip.karaf.featureTest>
<dependency-list.file>direct-dependencies.txt</dependency-list.file>
</properties>
<dependencyManagement>
<dependencies>
<!-- Note: If value in BOM conflicts with value inherited from
parent pom, inherited value takes precedence. This seems more like
a bug than a feature, but this is how maven 3.6 works -->
<dependency>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>dependencies-odl-bom</artifactId>
<version>2.2.0-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>dependencies-bom</artifactId>
<version>2.2.0-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.8.RELEASE</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.onap.logging-analytics</groupId>
<artifactId>logging-slf4j</artifactId>
<version>${logging-analytics.version}</version>
</dependency>
<dependency>
<groupId>org.onap.logging-analytics</groupId>
<artifactId>logging-filter-base</artifactId>
<version>${logging-analytics.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
<repositories>
<repository>
<id>onap-public</id>
<url>${onap.nexus.public-url}</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
<repository>
<id>onap-staging</id>
<url>${onap.nexus.staging-url}</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
<repository>
<id>ecomp-release</id>
<name>onap-repository-releases</name>
<url>${onap.nexus.release-url}</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>ecomp-snapshot</id>
<name>onap-repository-snapshots</name>
<url>${onap.nexus.snapshot-url}</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>opendaylight-mirror</id>
<name>opendaylight-mirror</name>
<url>${opendaylight.nexus.public-url}</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>opendaylight-snapshot</id>
<name>opendaylight-snapshot</name>
<url>${opendaylight.nexus.snapshot-url}</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>onap-public</id>
<url>${onap.nexus.public-url}</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>onap-staging</id>
<url>${onap.nexus.staging-url}</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>onap-snapshot</id>
<url>${onap.nexus.snapshot-url}</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>opendaylight-mirror</id>
<name>opendaylight-mirror</name>
<url>${opendaylight.nexus.public-url}</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>opendaylight-snapshot</id>
<name>opendaylight-snapshot</name>
<url>${opendaylight.nexus.snapshot-url}</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<!-- Black Duck plugin dependencies -->
<pluginRepository>
<id>JCenter</id>
<name>JCenter Repository</name>
<url>http://jcenter.bintray.com</url>
</pluginRepository>
<pluginRepository>
<id>Restlet</id>
<name>Restlet Repository</name>
<url>http://maven.restlet.com</url>
</pluginRepository>
</pluginRepositories>
<build>
<pluginManagement>
<plugins>
<!-- Plugins from ONAP version (parent of oparent) -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<!-- This version supports the "deployAtEnd" parameter -->
<version>2.8</version>
<configuration>
<skip/>
<deployAtEnd>true</deployAtEnd>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.6</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-webdav-jackrabbit</artifactId>
<version>2.10</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.0.0-M2</version>
<executions>
<execution>
<id>enforce-property</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireProperty>
<property>onap.nexus.url</property>
<message>You must set a onap.nexus.url property in your
~/.m2/settings.xml. See oparent/settings.xml for an example.
</message>
</requireProperty>
</rules>
<fail>true</fail>
</configuration>
</execution>
<execution>
<id>enforce-no-snapshots</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireReleaseDeps>
<failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
<onlyWhenRelease>true</onlyWhenRelease>
<level>WARN</level>
</requireReleaseDeps>
</rules>
</configuration>
</execution>
<execution>
<id>enforce-maven</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireJavaVersion>
<version>8</version>
</requireJavaVersion>
<requireMavenVersion>
<version>[3.5.0,)</version>
</requireMavenVersion>
</rules>
</configuration>
</execution>
<execution>
<id>enforce-banned-dependencies</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
<excludes>
<exclude>org.mockito:mockito-all</exclude>
<!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
</excludes>
</bannedDependencies>
</rules>
<fail>true</fail>
</configuration>
</execution>
</executions>
</plugin>
<!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
<plugin>
<groupId>org.sonarsource.scanner.maven</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>${sonar.scanner.version}</version>
</plugin>
<!-- end of plugins from ONAP version (parent of oparent) -->
<!-- Plugins from ONAP oparent -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
<configuration>
<!-- Sets the VM argument line used when unit tests are run. -->
<argLine>${surefireArgLine}</argLine>
<!-- Excludes integration tests when unit tests are run. -->
<excludes>
<exclude>**/IT*.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${maven-failsafe-plugin.version}</version>
<executions>
<!-- Ensures that both integration-test and verify goals of the Failsafe
Maven plugin are executed. -->
<execution>
<id>integration-tests</id>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
<configuration>
<!-- Sets the VM argument line used when integration tests are run. -->
<argLine>${failsafeArgLine}</argLine>
</configuration>
</execution>
</executions>
</plugin>
<!-- End of plugins from ONAP oparent -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<goals>
<goal>set-system-properties</goal>
</goals>
<configuration>
<properties>
<property>
<name>maven.wagon.http.ssl.allowall</name>
<value>${ssl.allowall}</value>
</property>
<property>
<name>maven.wagon.http.ssl.insecure</name>
<value>${ssl.insecure}</value>
</property>
</properties>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.5</version>
<configuration>
<processAllModules>true</processAllModules>
</configuration>
</plugin>
<plugin>
<artifactId>maven-scm-plugin</artifactId>
<version>1.8.1</version>
<configuration>
<tag>${project.artifactId}-${project.version}</tag>
</configuration>
</plugin>
<plugin>
<groupId>com.github.ferstl</groupId>
<artifactId>depgraph-maven-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<graphFormat>text</graphFormat>
<outputFileName>${dependency-list.file}</outputFileName>
<outputDirectory>${project.basedir}</outputDirectory>
<transitiveExcludes>*</transitiveExcludes>
<showVersions>true</showVersions>
<showGroupIds>true</showGroupIds>
</configuration>
</plugin>
<plugin>
<groupId>de.jacks-it-lab</groupId>
<artifactId>frontend-maven-plugin</artifactId>
<version>1.7.2</version>
</plugin>
<plugin>
<groupId>com.github.alexcojocaru</groupId>
<artifactId>elasticsearch-maven-plugin</artifactId>
<version>6.16</version>
<configuration>
<version>7.1.1</version>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<failOnError>false</failOnError>
</configuration>
</plugin>
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<version>3.1.12.2</version>
<executions>
<execution>
<id>analyze-compile</id>
<phase>compile</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<plugins>
<plugin>
<groupId>jp.skypencil.findbugs.slf4j</groupId>
<artifactId>bug-pattern</artifactId>
<version>1.5.0</version>
</plugin>
</plugins>
<effort>Max</effort>
<threshold>Low</threshold>
<failOnError>false</failOnError>
<skip>true</skip>
<excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
<xmlOutput>true</xmlOutput>
<findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs</artifactId>
<version>3.1.12</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>spotbugs</artifactId>
<version>7.0.5</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.8.0-beta2</version>
<scope>compile</scope>
</dependency>
</dependencies>
<configuration>
<plugins>
<plugin>
<groupId>jp.skypencil.findbugs.slf4j</groupId>
<artifactId>bug-pattern</artifactId>
<version>1.5.0</version>
</plugin>
</plugins>
<effort>Max</effort>
<threshold>Low</threshold>
<failOnError>false</failOnError>
<skip>true</skip>
<excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
<xmlOutput>true</xmlOutput>
<findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${checkstyle.plugin.version}</version>
<dependencies>
<dependency>
<groupId>org.onap.oparent</groupId>
<artifactId>checkstyle</artifactId>
<version>1.2.2</version>
</dependency>
</dependencies>
<executions>
<execution>
<phase>process-sources</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<failOnViolation>false</failOnViolation>
<skip>true</skip>
</configuration>
</execution>
<execution>
<id>check-license</id>
<goals>
<goal>check</goal>
</goals>
<phase>process-sources</phase>
<configuration>
<configLocation>onap-checkstyle/check-license.xml</configLocation>
<includeResources>false</includeResources>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
<includeTestResources>false</includeTestResources>
<sourceDirectories>
<directory>${project.build.sourceDirectory}</directory>
</sourceDirectories>
<excludes>
</excludes>
<consoleOutput>true</consoleOutput>
<failOnViolation>false</failOnViolation>
</configuration>
</execution>
<execution>
<id>onap-java-style</id>
<goals>
<goal>check</goal>
</goals>
<phase>process-sources</phase>
<configuration>
<!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
with minor changes -->
<configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
<!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory -->
<sourceDirectories>
<directory>${project.build.sourceDirectory}/src/main/java</directory>
</sourceDirectories>
<includeResources>true</includeResources>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
<includeTestResources>true</includeTestResources>
<excludes>
</excludes>
<consoleOutput>true</consoleOutput>
<failOnViolation>false</failOnViolation>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.gaul</groupId>
<artifactId>modernizer-maven-plugin</artifactId>
<version>2.1.0</version>
<executions>
<execution>
<id>modernizer</id>
<phase>verify</phase>
<goals>
<goal>modernizer</goal>
</goals>
<configuration>
<failOnViolations>false</failOnViolations>
<skip>true</skip>
</configuration>
</execution>
</executions>
<configuration>
<failOnViolations>false</failOnViolations>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<!-- Plugins from oparent version (parent of oparent) -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<!--
<configuration>
<reportPlugins>
<reportPlugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${checkstyle.plugin.version}</version>
</reportPlugin>
</reportPlugins>
</configuration>
-->
</plugin>
<!-- end of plugins from oparent version (parent of oparent) -->
<!-- Plugins from oparent -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.12</version>
</plugin>
<!-- Jacoco / Sonar -->
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco.version}</version>
<executions>
<execution>
<id>pre-unit-test</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
<!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
<propertyName>surefireArgLine</propertyName>
</configuration>
</execution>
<!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. -->
<execution>
<id>post-unit-test</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
<!-- Sets the output directory for the code coverage report. -->
<outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
</configuration>
</execution>
<execution>
<id>pre-integration-test</id>
<phase>pre-integration-test</phase>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
<!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
<propertyName>failsafeArgLine</propertyName>
</configuration>
</execution>
<!-- Ensures that the code coverage report for integration tests after integration tests have been run. -->
<execution>
<id>post-integration-test</id>
<phase>post-integration-test</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
<!-- Sets the output directory for the code coverage report. -->
<outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
</configuration>
</execution>
<execution>
<id>default-prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>default-report</id>
<phase>prepare-package</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
<execution>
<id>default-check</id>
<goals>
<goal>check</goal>
</goals>
<configuration>
<rules>
<rule>
<element>PACKAGE</element>
<limits>
<limit>
<counter>COMPLEXITY</counter>
<value>COVEREDRATIO</value>
<minimum>0.0</minimum>
</limit>
</limits>
</rule>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
</plugin>
<!-- end of plugins from oparent -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<additionalparam>-Xdoclint:none</additionalparam>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.0.0-M2</version>
<executions>
<execution>
<id>enforce-property</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireProperty>
<property>onap.nexus.url</property>
<message>You must set a onap.nexus.url property in your
~/.m2/settings.xml. See oparent/settings.xml for an example.
</message>
</requireProperty>
</rules>
<fail>true</fail>
</configuration>
</execution>
<execution>
<id>enforce-no-snapshots</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireReleaseDeps>
<failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
<onlyWhenRelease>true</onlyWhenRelease>
<level>WARN</level>
</requireReleaseDeps>
</rules>
</configuration>
</execution>
<execution>
<id>enforce-maven</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireJavaVersion>
<version>1.8.0</version>
</requireJavaVersion>
<requireMavenVersion>
<version>[3.5.0,)</version>
</requireMavenVersion>
</rules>
</configuration>
</execution>
<execution>
<id>enforce-banned-dependencies</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
<excludes>
<exclude>org.mockito:mockito-all</exclude>
<!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
</excludes>
</bannedDependencies>
</rules>
<fail>true</fail>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
<version>4.0.0</version>
<configuration>
<commitIdGenerationMode>full</commitIdGenerationMode>
<includeOnlyProperties>
<includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
<includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
</includeOnlyProperties>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<failOnError>false</failOnError>
<additionalparam>-Xdoclint:none</additionalparam>
</configuration>
</plugin>
</plugins>
</reporting>
<profiles>
<!-- Profiles from ONAP oparent -->
<profile>
<id>generate-json</id>
<activation>
<file>
<exists>${swagger-properties}</exists>
</file>
<property>
<name>swagger-sdk.generate-json</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>${basedir}/src/main/resources/swagger.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.kongchen</groupId>
<artifactId>swagger-maven-plugin</artifactId>
<version>3.1.4</version>
<configuration>
<apiSources>
<apiSource>
<locations>${api-rest-package}</locations>
<schemes>http,https</schemes>
<host>${api-host-ip}:${api-host-port}</host>
<basePath>${api-base-path}</basePath>
<info>
<title>${api-title}</title>
<version>${api-version}</version>
<description>${api-description}</description>
<license>
<name>${api-license}</name>
</license>
</info>
<swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
</apiSource>
</apiSources>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<id>install-file-id</id>
<phase>install</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<file>${basedir}/src/main/resources/swagger.json</file>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}-swagger-schema</artifactId>
<version>${project.version}</version>
<packaging>json</packaging>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>generate-sdk</id>
<activation>
<file>
<exists>${swagger-json}</exists>
</file>
<property>
<name>swagger-sdk.generate-java-sdk</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>initialize</phase>
<id>ant-create-script</id>
<configuration>
<exportAntProperties>true</exportAntProperties>
<tasks>
<taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/>
<condition property="is_windows" value="true">
<os family="windows"/>
</condition>
<condition property="isLinux" value="true">
<os family="unix"/>
</condition>
<if>
<equals arg1="${is_windows}" arg2="true"/>
<then>
<property name="swagger.sdk.script.file" value="generated-source-script.bat"/>
<echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true"
message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
<echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true"
message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
</then>
<else>
<property name="swagger.sdk.script.file" value="generated-source-script.sh"/>
<echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true"
message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
<echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true"
message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
<chmod file="${project.build.directory}${file.separator}generated-source-script.sh" perm="755"/>
</else>
</if>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>1.0b3</version>
<exclusions>
<exclusion>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>io.swagger</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
<output>${project.build.directory}/generated-sources</output>
<language>java</language>
<configOptions>
<dateLibrary>joda</dateLibrary>
</configOptions>
<library>jersey2</library>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}-java-sdk</artifactId>
<artifactVersion>${project.version}</artifactVersion>
<modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
<apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
<invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.5.0</version>
<executions>
<execution>
<id>swagger-generate-sources</id>
<phase>generate-sources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>clean-generated-files</id>
<phase>generate-sources</phase>
<goals>
<goal>clean</goal>
</goals>
<configuration>
<filesets>
<fileset>
<directory>${project.build.directory}/generated-sources</directory>
</fileset>
</filesets>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.onap.msb.swagger-sdk</groupId>
<artifactId>swagger-sdk</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
</profile>
<profile>
<id>sonar-jacoco-aggregate</id>
<activation>
<property>
<name>onap.jacoco.aggregateFile</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<executions>
<execution>
<id>merge</id>
<goals>
<goal>merge</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<destFile>${onap.jacoco.aggregateFile}</destFile>
<fileSets>
<fileSet>
<directory>${project.basedir}</directory>
<includes>
<include>**/target/code-coverage/*.exec</include>
</includes>
</fileSet>
</fileSets>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!-- End of profiles from ONAP oparent -->
<profile>
<id>yang-compile</id>
<activation>
<file>
<exists>src/main/yang</exists>
</file>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.opendaylight.yangtools</groupId>
<artifactId>yang-maven-plugin</artifactId>
<version>6.0.5</version>
<dependencies>
<dependency>
<groupId>org.opendaylight.mdsal</groupId>
<artifactId>maven-sal-api-gen-plugin</artifactId>
<version>${odl.mdsal.model.version}</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.opendaylight.netconf</groupId>
<artifactId>sal-rest-docgen-maven</artifactId>
<version>${odl.netconf.sal.rest.docgen.version}</version>
<type>jar</type>
</dependency>
</dependencies>
<executions>
<execution>
<id>binding</id>
<goals>
<goal>generate-sources</goal>
</goals>
<configuration>
<yangFilesRootDir>${yang.file.directory}</yangFilesRootDir>
<codeGenerators>
<generator>
<codeGeneratorClass>org.opendaylight.mdsal.binding.maven.api.gen.plugin.CodeGeneratorImpl</codeGeneratorClass>
<outputBaseDir>${salGeneratorPath}</outputBaseDir>
</generator>
<!--
<generator>
<codeGeneratorClass>org.opendaylight.netconf.sal.rest.doc.maven.StaticDocGenerator</codeGeneratorClass>
<outputBaseDir>target/swagger</outputBaseDir>
</generator>
-->
</codeGenerators>
<inspectDependencies>true</inspectDependencies>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>