<!--

    Copyright (C) 2017 Red Hat, Inc.

    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">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>io.atlasmap</groupId>
		<artifactId>atlas-parent</artifactId>
		<version>1.19.0</version>
		<relativePath>../atlas-parent/pom.xml</relativePath>
	</parent>

	<artifactId>atlas-model</artifactId>
	<packaging>bundle</packaging>
	<name>Atlas :: Model</name>

	<properties>
		<xjb.folder>src/main/resources</xjb.folder>
		<xjb.file>atlas-model-v2.xjb</xjb.file>
		<xsd.folder>src/main/resources</xsd.folder>
		<xsd.file>atlas-model-v2.xsd</xsd.file>
		<at.osgi.export.pkg>io.atlasmap.v2</at.osgi.export.pkg>
		<at.osgi.import.pkg>com.fasterxml.jackson.annotation;version="[2.6,3)",javax.xml.bind;version="[2.2,3)",javax.xml.bind.annotation;version="[2.2,3)",javax.xml.namespace</at.osgi.import.pkg>
	</properties>
	
	<dependencies>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-annotations</artifactId>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-core</artifactId>
		</dependency>
		<dependency>
			<groupId>javax.xml.bind</groupId>
			<artifactId>jaxb-api</artifactId>
      <scope>test</scope>
		</dependency>
    <dependency>
      <groupId>javax.xml</groupId>
      <artifactId>jaxb-impl</artifactId>
      <scope>test</scope>
    </dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.jvnet.jaxb2.maven2</groupId>
				<artifactId>maven-jaxb2-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>generate</goal>
						</goals>
						<configuration>
							<episode>true</episode>
							<schemaDirectory>${xsd.folder}</schemaDirectory>
							<bindingDirectory>${xjb.folder}</bindingDirectory>
              <schemaExcludes>
                <include>**/atlas-actions-v3.xsd</include> 
              </schemaExcludes>
							<verbose>true</verbose>
							<strict>false</strict>
							<extension>true</extension>
							<debugMode>true</debugMode>
							<args>
								<arg>-no-header</arg>
								<arg>-XsimpleEquals</arg>
								<arg>-XsimpleHashCode</arg>
								<arg>-Xannotate</arg>
								<arg>-Xnamespace-prefix</arg>
							</args>
							<plugins>
								<plugin>
									<groupId>org.jvnet.jaxb2_commons</groupId>
									<artifactId>jaxb2-basics</artifactId>
									<version>${at.jaxb2-basics.version}</version>
								</plugin>
								<plugin>
									<groupId>org.jvnet.jaxb2_commons</groupId>
									<artifactId>jaxb2-basics-annotate</artifactId>
									<version>${at.jaxb2-basics-annotate.version}</version>
								</plugin>
								<plugin>
									<groupId>org.jvnet.jaxb2_commons</groupId>
									<artifactId>jaxb2-namespace-prefix</artifactId>
									<version>${at.jaxb2-basics-namespace-prefix.version}</version>
								</plugin>
								<plugin>
									<groupId>com.fasterxml.jackson.module</groupId>
									<artifactId>jackson-module-jaxb-annotations</artifactId>
									<version>${at.jackson-module-jaxb-annotations.version}</version>
								</plugin>
							</plugins>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>attach-artifacts</id>
						<phase>package</phase>
						<goals>
							<goal>attach-artifact</goal>
						</goals>
						<configuration>
							<artifacts>
								<artifact>
									<file>${xsd.folder}/${xsd.file}</file>
									<type>xsd</type>
								</artifact>
                                 <artifact>
                                     <file>${xsd.folder}/atlas-actions-v2.xsd</file>
                                     <type>xsd</type>
                                     <classifier>actions</classifier>
                                 </artifact>
								<artifact>
									<file>${xjb.folder}/${xjb.file}</file>
									<type>xjb</type>
								</artifact>
							</artifacts>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>
