<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright (c) 2018, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file 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.
  -->

<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">

    <parent>
        <groupId>org.wso2</groupId>
        <artifactId>wso2</artifactId>
        <version>5</version>
    </parent>

    <modelVersion>4.0.0</modelVersion>
    <groupId>org.wso2.analytics.solutions</groupId>
    <artifactId>org.wso2.analytics.solutions.parent</artifactId>
    <packaging>pom</packaging>
    <version>1.0.23</version>
    <name>WSO2 Analytics Solutions - Parent</name>

    <modules>
        <module>components/analytics-solutions-common</module>
        <module>components/sp-solutions</module>
        <module>components/apim-analytics</module>
        <module>components/ei-analytics</module>
        <module>components/is-analytics</module>
        <module>features/analytics-solutions-common-features</module>
        <module>features/sp-solution-features</module>
        <module>features/apim-analytics-feature</module>
        <module>features/ei-analytics-feature</module>
        <module>features/is-analytics-feature</module>
    </modules>

    <scm>
        <connection>scm:git:https://github.com/wso2/analytics-solutions.git</connection>
        <url>https://github.com/wso2/analytics-solutions.git</url>
        <developerConnection>scm:git:https://github.com/wso2/analytics-solutions.git</developerConnection>
        <tag>v1.0.23</tag>
    </scm>

    <dependencyManagement>
        <dependencies>

            <!-- Micro services Interceptor -->
            <dependency>
                <groupId>org.wso2.msf4j</groupId>
                <artifactId>msf4j-core</artifactId>
                <version>${msf4j.version}</version>
            </dependency>

            <dependency>
                <groupId>org.wso2.carbon.analytics</groupId>
                <artifactId>org.wso2.carbon.analytics.msf4j.interceptor.common.feature</artifactId>
                <version>${carbon.analytics.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>org.wso2.carbon.analytics</groupId>
                <artifactId>org.wso2.carbon.analytics.msf4j.interceptor.common</artifactId>
                <version>${carbon.analytics.version}</version>
            </dependency>

            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>javax.servlet-api</artifactId>
                <version>${javax.servlet.version}</version>
            </dependency>

            <dependency>
                <groupId>com.h2database.wso2</groupId>
                <artifactId>h2-database-engine</artifactId>
                <version>${h2.database.version}</version>
            </dependency>

            <dependency>
                <groupId>io.swagger</groupId>
                <artifactId>swagger-annotations</artifactId>
                <version>${io.swagger.version}</version>
            </dependency>

            <dependency>
                <groupId>javax.ws.rs</groupId>
                <artifactId>javax.ws.rs-api</artifactId>
                <version>${javax.ws.rs-api.version}</version>
            </dependency>

            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>${slf4j.version}</version>
            </dependency>

            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-log4j12</artifactId>
                <version>${slf4j.version}</version>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.jaxrs</groupId>
                <artifactId>jackson-jaxrs-json-provider</artifactId>
                <version>${com.fasterxml.jackson.core.version}</version>
            </dependency>

            <!-- Analytics solutions -->
            <!-- Open Tracing -->
            <dependency>
                <groupId>io.opentracing</groupId>
                <artifactId>opentracing-api</artifactId>
                <version>${open.tracing.version}</version>
            </dependency>
            <dependency>
                <groupId>io.opentracing</groupId>
                <artifactId>opentracing-util</artifactId>
                <version>${open.tracing.version}</version>
            </dependency>

            <!-- Carbon analytics common -->
            <dependency>
                <groupId>org.wso2.carbon.analytics-common</groupId>
                <artifactId>org.wso2.carbon.databridge.agent</artifactId>
                <version>${carbon.analytics-common.version}</version>
            </dependency>

            <dependency>
                <groupId>org.wso2.carbon.analytics-common</groupId>
                <artifactId>org.wso2.carbon.databridge.core</artifactId>
                <version>${carbon.analytics-common.version}</version>
            </dependency>

            <!-- Siddhi -->
            <dependency>
                <groupId>org.wso2.siddhi</groupId>
                <artifactId>siddhi-core</artifactId>
                <version>${siddhi.version}</version>
            </dependency>

            <dependency>
                <groupId>org.wso2.extension.siddhi.map.wso2event</groupId>
                <artifactId>siddhi-map-wso2event</artifactId>
                <version>${siddhi.map.wso2event.version}</version>
            </dependency>

            <dependency>
                <groupId>org.wso2.extension.siddhi.map.json</groupId>
                <artifactId>siddhi-map-json</artifactId>
                <version>${siddhi.map.json.version}</version>
            </dependency>

            <dependency>
                <groupId>org.wso2.siddhi</groupId>
                <artifactId>siddhi-query-api</artifactId>
                <version>${siddhi.version}</version>
            </dependency>

            <dependency>
                <groupId>org.wso2.siddhi</groupId>
                <artifactId>siddhi-query-compiler</artifactId>
                <version>${siddhi.version}</version>
            </dependency>

            <dependency>
                <groupId>org.wso2.siddhi</groupId>
                <artifactId>siddhi-annotations</artifactId>
                <version>${siddhi.version}</version>
            </dependency>

            <!-- Orbit -->
            <dependency>
                <groupId>org.json.wso2</groupId>
                <artifactId>json</artifactId>
                <version>${org.wso2.json.version}</version>
            </dependency>

            <!-- Logging -->
            <dependency>
                <groupId>org.apache.log4j.wso2</groupId>
                <artifactId>log4j</artifactId>
                <version>${log4j.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
                <version>${commons-lang3.version}</version>
            </dependency>

            <dependency>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
                <version>${commons.logging.version}</version>
            </dependency>

            <!-- Testng -->
            <dependency>
                <groupId>org.testng</groupId>
                <artifactId>testng</artifactId>
                <version>${testng.version}</version>
                <scope>test</scope>
            </dependency>

            <!-- Analytics common -->
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.common.widgets.date-time-range-picker</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.common.feature</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>

            <!-- Apim Analytics solution-->
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.apim.analytics.feature</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.apim.analytics.widgets.apim.apisubscriber.alert.config
                </artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.apim.analytics.widgets.apim.apicreator.alert.config
                </artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>

            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.sp.extension.siddhi.io.mgwfile</artifactId>
                <type>jar</type>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.apim.rest.api.file</artifactId>
                <type>jar</type>
                <version>${project.version}</version>
            </dependency>


            <!-- HTTP analytics -->
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.http.analytics.feature</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.http.analytics.widgets.latency.comparison</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.http.analytics.widgets.latency</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.http.analytics.widgets.server.request.count.comparison
                </artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.http.analytics.widgets.server.request.count</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.http.analytics.widgets.request.statistics</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.http.analytics.widgets.request.count.filter</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.http.analytics.widgets.response.code.filter</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>

            <!-- Message tracer -->
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.message.tracer.widgets.open-tracing-list</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.message.tracer.widgets.open-tracing-search</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.message.tracer.widgets.open-tracing-vis-timeline
                </artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.sp.open.tracer.client</artifactId>
                <type>jar</type>
                <version>${project.version}</version>
            </dependency>

            <!-- Twitter Analytics solution dependencies -->
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.emotions</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.emotions-analysis</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.hashtag</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.livetweets</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.populartweets</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.topcountries</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.topsentiment</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.tweet-count-analysis</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.tweetcounter</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.sp.twitter.analytics.widgets.wordcloud</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>

            <!-- WSO2 IS Analytics solution dependencies -->
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.feature</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.login.attempts.map</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.attempts.over.time</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.compact.summary</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.attempts.by.type</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.summary</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.messages</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.user.preferences</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.session.count</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.session.count.overtime</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.session.messages</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.long.session</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.is.analytics.widgets.average.session</artifactId>
                <type>zip</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>siddhi-execution-country</artifactId>
                <type>jar</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>siddhi-execution-tokenizer</artifactId>
                <version>${project.version}</version>
                <type>jar</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>siddhi-execution-word</artifactId>
                <type>jar</type>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>siddhi-execution-filterwords</artifactId>
                <type>jar</type>
                <version>${project.version}</version>
            </dependency>

            <!--Ei Analytics solution dependencies-->
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.ei.analytics.widgets.stats.chart</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.ei.analytics.widgets.horizontal.bar.chart</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.ei.analytics.widgets.message.flow</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.ei.analytics.widgets.mediator.properties</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.ei.analytics.widgets.tps</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.ei.analytics.widgets.message.table</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.ei.analytics.widgets.search.box</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.wso2.analytics.solutions</groupId>
                <artifactId>org.wso2.analytics.solutions.ei.analytics.feature</artifactId>
                <version>${project.version}</version>
                <type>zip</type>
            </dependency>
            <dependency>
                <groupId>org.testng</groupId>
                <artifactId>testng</artifactId>
                <version>${testng.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>com.esotericsoftware</groupId>
                <artifactId>kryo-shaded</artifactId>
                <version>${kryo.version}</version>
            </dependency>
            <dependency>
                <groupId>org.wso2.carbon.analytics</groupId>
                <artifactId>org.wso2.carbon.analytics.spark.core</artifactId>
                <version>${carbon.analytics.spark.core.version}</version>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <build>
        <extensions>
            <extension>
                <groupId>org.apache.maven.wagon</groupId>
                <artifactId>wagon-ssh</artifactId>
            </extension>
        </extensions>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.wso2.carbon.maven</groupId>
                    <artifactId>carbon-feature-plugin</artifactId>
                    <version>${carbon.feature.plugin.version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.felix</groupId>
                    <artifactId>maven-scr-plugin</artifactId>
                    <version>${maven.src.version}</version>
                </plugin>
                <plugin>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version>${maven.clean.plugin.version}</version>
                    <configuration>
                        <filesets>
                            <fileset>
                                <directory>${project.basedir}/node_modules</directory>
                            </fileset>
                            <fileset>
                                <directory>${project.basedir}/dist</directory>
                            </fileset>
                        </filesets>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>${maven.exec.plugin.version}</version>
                    <executions>
                        <execution>
                            <id>npm install (initialize)</id>
                            <goals>
                                <goal>exec</goal>
                            </goals>
                            <phase>initialize</phase>
                            <configuration>
                                <executable>${npm.executable}</executable>
                                <arguments>
                                    <argument>install</argument>
                                </arguments>
                            </configuration>
                        </execution>
                        <execution>
                            <id>npm run dev (compile)</id>
                            <goals>
                                <goal>exec</goal>
                            </goals>
                            <phase>generate-resources</phase>
                            <configuration>
                                <executable>${npm.executable}</executable>
                                <arguments>
                                    <argument>run</argument>
                                    <argument>build</argument>
                                </arguments>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </pluginManagement>

        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-plugin</artifactId>
                <configuration>
                    <preparationGoals>clean install</preparationGoals>
                    <autoVersionSubmodules>true</autoVersionSubmodules>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-deploy-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <!-- <inherited>false</inherited> -->
                <configuration>
                    <environmentVariables>
                        <testEnvironmentVariable>EnvironmentVariable</testEnvironmentVariable>
                    </environmentVariables>
                    <suiteXmlFiles>
                        <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile>
                    </suiteXmlFiles>
                    <argLine>${surefireArgLine} -ea -Xmx512m</argLine>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>${org.jacoco.version}</version>
                <configuration>
                    <excludes>
                        <exclude>**/JacksonJsonProvider.class</exclude>
                        <exclude>**/RFC3339DateFormat.class</exclude>
                        <exclude>**/StringUtil.class</exclude>
                        <exclude>**/ApiOriginFilter.class</exclude>
                        <exclude>**/ApiResponseMessage.class</exclude>
                        <exclude>**/*Exception.class</exclude>
                        <exclude>**/model/**</exclude>
                    </excludes>
                </configuration>
                <executions>
                    <execution>
                        <id>jacoco-initialize</id>
                        <goals>
                            <goal>prepare-agent</goal>
                        </goals>
                        <configuration>
                            <destFile>${basedir}/target/jacoco.exec</destFile>
                            <propertyName>surefireArgLine</propertyName>
                        </configuration>
                    </execution>
                    <execution>
                        <id>jacoco-site</id>
                        <phase>post-integration-test</phase>
                        <goals>
                            <goal>report</goal>
                        </goals>
                        <configuration>
                            <dataFile>${basedir}/target/jacoco.exec</dataFile>
                            <outputDirectory>${basedir}/target/coverage-reports/</outputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <profiles>
        <profile>
            <id>default</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <modules>
            </modules>
        </profile>
        <profile>
            <id>builder</id>
            <activation>
                <property>
                    <name>builder</name>
                    <value>true</value>
                </property>
            </activation>
            <modules>
            </modules>
        </profile>
        <profile>
            <id>sonar-profile</id>
            <activation>
                <property>
                    <name>bamboo</name>
                    <value>sonar</value>
                </property>
            </activation>
            <modules>
            </modules>
        </profile>
        <profile>
            <id>platform-windows</id>
            <activation>
                <os>
                    <family>windows</family>
                </os>
            </activation>
            <properties>
                <npm.executable>npm.cmd</npm.executable>
            </properties>
        </profile>
        <profile>
            <id>platform-unix</id>
            <activation>
                <os>
                    <family>unix</family>
                </os>
            </activation>
            <properties>
                <npm.executable>npm</npm.executable>
            </properties>
        </profile>
        <profile>
            <id>platform-default</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <npm.executable>npm</npm.executable>
            </properties>
        </profile>
    </profiles>

    <properties>
        <carbon.analytics-common.version>6.0.72</carbon.analytics-common.version>
        <carbon.analytics.version>2.0.455</carbon.analytics.version>
        <carbon.analytics.spark.core.version>1.2.3</carbon.analytics.spark.core.version>
        <kryo.version>3.0.3</kryo.version>

        <siddhi.version>4.2.35</siddhi.version>
        <siddhi.map.wso2event.version>4.0.16</siddhi.map.wso2event.version>
        <siddhi.map.json.version>4.0.32</siddhi.map.json.version>

        <open.tracing.version>0.31.0</open.tracing.version>
        <org.wso2.json.version>3.0.0.wso2v1</org.wso2.json.version>

        <commons-lang3.version>3.3.2</commons-lang3.version>
        <commons.logging.version>1.2</commons.logging.version>

        <javax.servlet.version>3.1.0</javax.servlet.version>
        <io.swagger.version>1.5.16</io.swagger.version>
        <msf4j.version>2.6.2</msf4j.version>
        <javax.ws.rs-api.version>2.0</javax.ws.rs-api.version>
        <slf4j.version>1.7.5</slf4j.version>
        <com.fasterxml.jackson.core.version>2.8.9</com.fasterxml.jackson.core.version>
        <log4j.version>1.2.17.wso2v1</log4j.version>
        <h2.database.version>1.2.140.wso2v3</h2.database.version>

        <org.jacoco.version>0.7.9</org.jacoco.version>
        <carbon.feature.plugin.version>3.1.3</carbon.feature.plugin.version>
        <maven.exec.plugin.version>1.5.0</maven.exec.plugin.version>
        <maven.clean.plugin.version>3.0.0</maven.clean.plugin.version>

        <testng.version>6.9.4</testng.version>
    </properties>
</project>
