<?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/maven-v4_0_0.xsd">
    <parent>
        <groupId>org.onap.ccsdk.sli.core</groupId>
        <artifactId>sdnc-core</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>


    <modelVersion>4.0.0</modelVersion>
    <packaging>pom</packaging>
    <groupId>org.onap.ccsdk.sli.core</groupId>
    <artifactId>dblib</artifactId>


    <name>DBLIB Adaptor</name>
    <description>The DBLIB adaptor allows service logic to access persistent data in a local sql database</description>

    <version>0.0.1-SNAPSHOT</version>

    <build>
    <plugins>
                <plugin>

                <groupId>org.codehaus.mojo</groupId>

                <artifactId>license-maven-plugin</artifactId>

                <version>1.9</version>

                <configuration>

                    <licenseName>apache_v2</licenseName>

                    <inceptionYear>2016</inceptionYear>

                    <organizationName>AT&amp;T</organizationName>

                    <projectName>openecomp</projectName>

                    <roots>

                        <root>src/main/java</root>

                    </roots>

                    <excludes>

                        <exclude>*.png</exclude>

                    </excludes>

                </configuration>

            </plugin>
    </plugins>

        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>${maven.compile.plugin.version}</version>
                    <configuration>
                        <source>${java.version.source}</source>
                        <target>${java.version.target}</target>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>2.10</version>

                    <executions>
                        <execution>
                            <id>aggregate</id>
                            <goals>
                                <goal>aggregate</goal>
                            </goals>
                            <phase>site</phase>

                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>2.1.1</version>
                    <executions>
                        <execution>
                            <id>bundle-sources</id>
                            <phase>package</phase>
                            <goals>
                                <!-- produce source artifact for main project sources -->
                                <goal>jar-no-fork</goal>

                                <!-- produce source artifact for project test sources -->
                                <goal>test-jar-no-fork</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>

        </pluginManagement>
    </build>
    <organization>
        <name>AT&amp;T</name>
    </organization>
  <modules>
    <module>provider</module>
    <module>features</module>
    <module>installer</module>
  </modules>
</project>
