<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.ig.orchestrations.us.rfed</groupId>
		<artifactId>parent</artifactId>
		<version>0.4.13</version>
	</parent>
	<artifactId>json-schema</artifactId>
	<packaging>pom</packaging>
	<name>${project.groupId}:${project.artifactId}</name>
	<properties>
		<groovy-maven-plugin.version>2.1.1</groovy-maven-plugin.version>
		<groovy.version>2.0.6</groovy.version>
	</properties>
	<dependencies>
		<dependency>
			<groupId>com.ig.orchestrations.us.rfed</groupId>
			<artifactId>orchestration</artifactId>
			<classifier>repository</classifier>
			<version>${project.version}</version>
			<type>zip</type>
		</dependency>
	</dependencies>
	<build>
		<plugins>
			<plugin>
				<groupId>org.codehaus.gmaven</groupId>
				<artifactId>groovy-maven-plugin</artifactId>
				<version>${groovy-maven-plugin.version}</version>
				<dependencies>
					<dependency>
						<groupId>org.codehaus.groovy</groupId>
						<artifactId>groovy-all</artifactId>
						<version>${groovy.version}</version>
					</dependency>
				</dependencies>
				<executions>
					<execution>
						<id>setproperty</id>
						<phase>initialize</phase>
						<goals>
							<goal>execute</goal>
						</goals>
						<configuration>
							<!-- project.basedir was used in following as project.build.directory does not seen to work -->
							<source>
								project.properties['basedir-with-forward-slash']=project.basedir.getAbsolutePath().replace(File.separator,'/');
							</source>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<id>unpack-dependencies</id>
						<phase>process-sources</phase>
						<goals>
							<goal>unpack</goal>
						</goals>
						<configuration>
							<artifactItems>
								<artifactItem>
									<groupId>${target-package}</groupId>
									<artifactId>orchestration</artifactId>
									<type>zip</type>
									<classifier>repository</classifier>
									<outputDirectory>${project.build.directory}/dependency/repository</outputDirectory>
								</artifactItem>            
							</artifactItems>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>xml-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>orchestraTransformForJsonDatatypes</id>
						<goals>
							<goal>transform</goal>
						</goals>
						<configuration>
							<transformationSets>
								<transformationSet>
									<dir>${project.build.directory}/dependency/repository</dir>
									<stylesheet>${project.basedir}/src/main/xsl/AddJsonDatatypes.xslt</stylesheet>
 									<outputDir>${project.build.directory}/repositoryWithJsonDatatypes</outputDir>
								</transformationSet>
							</transformationSets>
						</configuration>
					</execution>
					<execution>
						<id>orchestra2Json</id>
						<goals>
							<goal>transform</goal>
						</goals>
						<configuration>
							<transformationSets>
								<transformationSet>
									<dir>${project.build.directory}/repositoryWithJsonDatatypes</dir>
									<stylesheet>${project.basedir}/src/main/xsl/OrchestraToJSONSchema.xslt</stylesheet>
									<parameters>
										<parameter>
											<name>debug</name>
											<value>false</value>
										</parameter>
										<parameter>
											<name>targetDirectory</name>
											<value>file:///${basedir-with-forward-slash}/target/generated-resources/definitions</value>
										</parameter>
										<parameter>
											<name>javaPackageName</name>
											<value>${target-package}</value>
										</parameter>
										<parameter>
											<name>useCodeNameForEnum</name>
											<value>true</value>
										</parameter>
										<parameter>
											<name>normaliseComponents</name>
											<value>false</value>
										</parameter>
									</parameters>
								</transformationSet>
							</transformationSets>
						</configuration>
					</execution>
				</executions>
				<dependencies>
					<dependency>
						<groupId>net.sf.saxon</groupId>
						<artifactId>Saxon-HE</artifactId>
						<version>9.8.0-2</version>
					</dependency>
				</dependencies>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-assembly-plugin</artifactId>
				<executions>
					<execution>
						<id>json-distribution</id>
						<phase>package</phase>
							<goals>
								<goal>single</goal>
							</goals>
							<configuration>
								<descriptors>
									<descriptor>${project.basedir}/src/main/assembly/json-schema-assembly.xml</descriptor>
								</descriptors>
							</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>
