<?xml version="1.0"?>
<!--

    ============LICENSE_START=======================================================
    org.onap.aai
    ================================================================================
    Copyright © 2017-2018 AT&T Intellectual Property. 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.
    ============LICENSE_END=========================================================

-->
<project
    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" xmlns="http://maven.apache.org/POM/4.0.0">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.onap.aai.schema-service</groupId>
        <artifactId>schema-service</artifactId>
        <version>1.12.6-SNAPSHOT</version>
    </parent>
    <artifactId>aai-queries</artifactId>
    <name>aai-queries</name>
    <properties>
        <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
        <!-- Start of Default ONAP Schema Properties -->
        <aai.wiki.link>https://wiki.onap.org/</aai.wiki.link>
        <gendoc.version>v15</gendoc.version>
        <aai.release>onap</aai.release>
        <schema.uri.base.path>/aai</schema.uri.base.path>
        <schema.xsd.maxoccurs>5000</schema.xsd.maxoccurs>
        <schema.configuration.location>N/A</schema.configuration.location>
        <schema.nodes.location>aai-schema/src/main/resources/${aai.release}/oxm</schema.nodes.location>
        <schema.edges.location>aai-schema/src/main/resources/${aai.release}/dbedgerules</schema.edges.location>
        <schema.version.depth.start>v10</schema.version.depth.start>
        <schema.version.related.link.start>v10</schema.version.related.link.start>
        <schema.version.app.root.start>v11</schema.version.app.root.start>
        <schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
        <schema.version.edge.label.start>v12</schema.version.edge.label.start>
        <schema.version.api.default>v29</schema.version.api.default>
        <schema.version.list>v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29</schema.version.list>
        <!-- End of Default ONAP Schema Properties -->
    </properties>
    <profiles>
        <!-- Start of ONAP profile -->
        <profile>
            <id>onap</id>
            <properties>
                <aai.release>onap</aai.release>
                <schema.xsd.maxoccurs>unbounded</schema.xsd.maxoccurs>
                <schema.configuration.location>N/A</schema.configuration.location>
                <schema.nodes.location>aai-schema/src/main/resources/${aai.release}/oxm</schema.nodes.location>
                <schema.edges.location>aai-schema/src/main/resources/${aai.release}/dbedgerules</schema.edges.location>
                <schema.version.depth.start>v10</schema.version.depth.start>
                <schema.version.related.link.start>v10</schema.version.related.link.start>
                <schema.version.app.root.start>v11</schema.version.app.root.start>
                <schema.version.edge.label.start>v12</schema.version.edge.label.start>
                <schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
                <schema.version.api.default>v29</schema.version.api.default>
                <schema.version.list>v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29</schema.version.list>
                <gendoc.version>v15</gendoc.version>
            </properties>
        </profile>
        <!-- End of ONAP profile -->
        <!-- Start of NARAD profile -->
        <profile>
            <id>narad</id>
            <properties>
                <aai.release>narad</aai.release>
                <schema.uri.base.path>/narad</schema.uri.base.path>
                <schema.xsd.maxoccurs>5000</schema.xsd.maxoccurs>
                <schema.configuration.location>N/A</schema.configuration.location>
                <schema.nodes.location>aai-schema/src/main/resources/${aai.release}/oxm</schema.nodes.location>
                <schema.edges.location>aai-schema/src/main/resources/${aai.release}/dbedgerules</schema.edges.location>
                <schema.version.depth.start>v1</schema.version.depth.start>
                <schema.version.related.link.start>v1</schema.version.related.link.start>
                <schema.version.app.root.start>v1</schema.version.app.root.start>
                <schema.version.namespace.change.start>v1</schema.version.namespace.change.start>
                <schema.version.edge.label.start>v1</schema.version.edge.label.start>
                <schema.version.api.default>v1</schema.version.api.default>
                <schema.version.list>v1,v2</schema.version.list>
                <gendoc.version>v2</gendoc.version>
            </properties>
        </profile>
        <!-- End of NARAD profile -->
    </profiles>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.onap.aai.aai-common</groupId>
            <artifactId>aai-core</artifactId>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.hamcrest</groupId>
            <artifactId>java-hamcrest</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.hamcrest</groupId>
            <artifactId>hamcrest-core</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.3.0</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>eclipselink</artifactId>
            <version>3.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>org.eclipse.persistence.moxy</artifactId>
            <version>3.0.0</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-deploy-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>com.mycila</groupId>
                <artifactId>license-maven-plugin</artifactId>
            </plugin>
        </plugins>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>false</filtering>
                <includes>
                    <include>**/*</include>
                </includes>
            </resource>
            <resource>
                <directory>${project.basedir}/../aai-schema/src/main/resources/</directory>
                <includes>
                    <include>**/oxm/**/*.xml</include>
                    <include>**/dbedgerules/**/*.json</include>
                </includes>
                <targetPath>${project.basedir}/src/main/resources/schema</targetPath>
                <filtering>false</filtering>
            </resource>
        </resources>
    </build>

    <!-- Start of ONAP Specific Repositories -->
    <pluginRepositories>
        <pluginRepository>
            <id>central</id>
            <url>https://repo1.maven.org/maven2</url>
        </pluginRepository>
        <pluginRepository>
            <id>EvoSuite</id>
            <name>EvoSuite Repository</name>
            <url>https://www.evosuite.org/m2</url>
        </pluginRepository>
    </pluginRepositories>
    <!-- End of ONAP Specific Repositories -->
</project>
