<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright (c) 2020, RTE (http://www.rte-france.com)
    This Source Code Form is subject to the terms of the Mozilla Public
    License, v. 2.0. If a copy of the MPL was not distributed with this
    file, You can obtain one at http://mozilla.org/MPL/2.0/.

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

    <parent>
        <groupId>com.powsybl</groupId>
        <artifactId>powsybl</artifactId>
        <version>3</version>
        <relativePath/>
    </parent>

    <groupId>org.gridsuite</groupId>
    <artifactId>gridsuite-dependencies</artifactId>
    <version>2</version>
    <packaging>pom</packaging>

    <name>GridSuite Dependencies</name>
    <description>GridSuite Dependencies</description>
    <url>https://www.gridsuite.org/</url>

    <developers>
        <developer>
            <name>Jon Harper</name>
            <email>jon.harper@rte-france.com</email>
            <organization>RTE</organization>
            <organizationUrl>http://www.rte-france.com</organizationUrl>
        </developer>
    </developers>

    <scm>
        <connection>scm:git:https://github.com/gridsuite/gridsuite-dependencies.git</connection>
        <developerConnection>scm:git:https://github.com/gridsuite/gridsuite-dependencies.git</developerConnection>
        <url>https://github.com/gridsuite/gridsuite-dependencies/tree/master/</url>
    </scm>

    <properties>
        <embedded-cassandra.version>3.0.3</embedded-cassandra.version>
        <junit.version>4.13</junit.version>
        <logback.version>1.1.8</logback.version>
        <lombok.version>1.18.12</lombok.version>
        <powsybl-case-datasource-client.version>1.0.0-SNAPSHOT</powsybl-case-datasource-client.version>
        <powsybl-core.version>3.6.0</powsybl-core.version>
        <powsybl-rte-core.version>2.13.0</powsybl-rte-core.version>
        <powsybl-open-loadflow.version>0.6.0</powsybl-open-loadflow.version>
        <powsybl-balances-adjustment.version>1.2.2</powsybl-balances-adjustment.version>
        <powsybl-network-store.version>1.0.0-SNAPSHOT</powsybl-network-store.version>
        <powsybl-single-line-diagram.version>1.7.0</powsybl-single-line-diagram.version>
        <spring-cloud.version>Hoxton.SR3</spring-cloud.version>
        <springboot.version>2.2.9.RELEASE</springboot.version>
        <springdoc-openapi.version>1.4.8</springdoc-openapi.version>
        <springfox.version>2.9.2</springfox.version>
        <websocket-tyrus.version>1.17</websocket-tyrus.version>
        <metricscore.version>3.2.6</metricscore.version>
    </properties>
    <dependencyManagement>
        <dependencies>
            <!-- overrides of imports -->
            <!-- powsybl-core 3.6 specifies logback-classic but not logback-core,
                 leading to mismatched versions. Remove when fixed in powsybl-core -->
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-core</artifactId>
                <version>${logback.version}</version>
            </dependency>
            <!-- downgrade of metrics-core needed for compatibility with cassandra-driver < 4 . To remove when we upgrade to >4 -->
            <dependency>
                <groupId>io.dropwizard.metrics</groupId>
                <artifactId>metrics-core</artifactId>
                <version>${metricscore.version}</version>
            </dependency>
            <!-- to remove when powsybl upgrades to 4.13 -->
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>${junit.version}</version>
            </dependency>

            <!-- imports -->
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-core</artifactId>
                <version>${powsybl-core.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${springboot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>${lombok.version}</version>
            </dependency>
            <!-- powsybl-core multimodule (no bom) -->
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-dsl</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-scripting</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-dynamic-simulation-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-dynamic-simulation-tool</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-dynamic-simulation-dsl</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-dynamic-simulation</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-ieee-cdf-model</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-ieee-cdf</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-ieee-cdf-converter</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-triple-store-impl-jena</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-triple-store-impl-blazegraph</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-triple-store-impl-rdf4j</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-triple-store-test</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-triple-store</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-triple-store-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-reducer</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-test</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-mergingview</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-xml-converter</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-impl</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-converter-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-tck</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-scripting</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-extensions</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-comparator</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-iidm-util</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-security-analysis-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-security-analysis</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-math</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-ampl-converter</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-contingency-dsl</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-contingency</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-contingency-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-distribution-core</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-cim-anonymiser</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-itools-packager-maven-plugin</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-cgmes-model</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-cgmes</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-cgmes-model-alternatives</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-cgmes-conformity</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-cgmes-conversion</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-core</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-psse-model</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-psse</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-psse-converter</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-action-dsl</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-action-util</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-action</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-action-dsl-spi</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-action-simulator</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-commons</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-time-series-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-time-series</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-config-classic</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-matpower-model</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-matpower</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-matpower-converter</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-entsoe-util</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-ucte-util</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-ucte-network</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-ucte</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-ucte-converter</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-sensitivity-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-simulation-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-loadflow-api</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-loadflow-results-completion</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-loadflow-scripting</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-loadflow-validation</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-loadflow</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-config-test</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-computation</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-tools</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-computation-local</artifactId>
                <version>${powsybl-core.version}</version>
            </dependency>

            <!-- project specific dependencies (also overrides imports, but separate for clarity) -->
            <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger-ui</artifactId>
                <version>${springfox.version}</version>
            </dependency>
            <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger2</artifactId>
                <version>${springfox.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-case-datasource-client</artifactId>
                <version>${powsybl-case-datasource-client.version}</version>
            </dependency>
            <dependency>
                <groupId>org.glassfish.tyrus.bundles</groupId>
                <artifactId>tyrus-standalone-client</artifactId>
                <version>${websocket-tyrus.version}</version>
            </dependency>
            <dependency>
                <groupId>org.springdoc</groupId>
                <artifactId>springdoc-openapi-webflux-ui</artifactId>
                <version>${springdoc-openapi.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-open-loadflow</artifactId>
                <version>${powsybl-open-loadflow.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-balances-adjustment</artifactId>
                <version>${powsybl-balances-adjustment.version}</version>
            </dependency>

            <!-- powsybl rte core multimodule (no bom) -->
            <dependency>
                <groupId>com.rte-france.powsybl</groupId>
                <artifactId>powsybl-hades2-integration</artifactId>
                <version>${powsybl-rte-core.version}</version>
            </dependency>

            <!-- powsybl-network-store multimodule (no bom) -->
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-network-store-iidm-impl</artifactId>
                <version>${powsybl-network-store.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-network-store-client</artifactId>
                <version>${powsybl-network-store.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-network-store-model</artifactId>
                <version>${powsybl-network-store.version}</version>
            </dependency>

            <!-- powsybl-single-line-diagram multimodule (no bom) -->
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-single-line-diagram-cgmes-dl-conversion</artifactId>
                <version>${powsybl-single-line-diagram.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-single-line-diagram-cgmes-iidm-extensions</artifactId>
                <version>${powsybl-single-line-diagram.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-single-line-diagram-cgmes-layout</artifactId>
                <version>${powsybl-single-line-diagram.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-single-line-diagram-color</artifactId>
                <version>${powsybl-single-line-diagram.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-single-line-diagram-core</artifactId>
                <version>${powsybl-single-line-diagram.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-single-line-diagram-force-layout</artifactId>
                <version>${powsybl-single-line-diagram.version}</version>
            </dependency>
            <dependency>
                <groupId>com.powsybl</groupId>
                <artifactId>powsybl-single-line-diagram-iidm-extensions</artifactId>
                <version>${powsybl-single-line-diagram.version}</version>
            </dependency>

            <!-- embedded cassandra multimodule (no bom) -->
            <dependency>
                <groupId>com.github.nosan</groupId>
                <artifactId>embedded-cassandra-spring-test</artifactId>
                <version>${embedded-cassandra.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.nosan</groupId>
                <artifactId>embedded-cassandra-junit4-test</artifactId>
                <version>${embedded-cassandra.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.nosan</groupId>
                <artifactId>embedded-cassandra</artifactId>
                <version>${embedded-cassandra.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.nosan</groupId>
                <artifactId>embedded-cassandra-api</artifactId>
                <version>${embedded-cassandra.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.nosan</groupId>
                <artifactId>embedded-cassandra-annotations</artifactId>
                <version>${embedded-cassandra.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.nosan</groupId>
                <artifactId>embedded-cassandra-commons</artifactId>
                <version>${embedded-cassandra.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.nosan</groupId>
                <artifactId>embedded-cassandra-mock</artifactId>
                <version>${embedded-cassandra.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

</project>
