<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2018 Red Hat, Inc. Red Hat licenses this file to you 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/maven-v4_0_0.xsd">

	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>org.apache.camel</groupId>
		<artifactId>camel-parent</artifactId>
		<version>3.20.1.redhat-00050</version>
	</parent>

	<groupId>org.fusesource</groupId>
	<artifactId>camel-sap-parent</artifactId>
	<version>3.20.1.redhat-00089</version>
	<packaging>pom</packaging>

	<name>JBoss Fuse :: Components :: SAP JCO</name>
	<description>Provides SAP Camel Component</description>
	<url>http://www.jboss.org/products/fuse/overview/</url>

	<properties>
		<maven.compiler.target>11</maven.compiler.target>
		<maven.compiler.source>11</maven.compiler.source>
		<maven-surefire-plugin-version>2.22.2</maven-surefire-plugin-version>
		<camel-version>3.20.1.redhat-00050</camel-version>
		<camel-community-version>3.20.1</camel-community-version>
		<camel.sap.plugin.version>3.20.1.redhat-00089</camel.sap.plugin.version>
		<karaf-version>4.2.15.fuse-7_11_1-00017</karaf-version>
		<mockito.version>3.12.4</mockito.version>
		<powermock.version>2.0.2</powermock.version>
		<hamcrest.version>2.1.0.redhat-00001</hamcrest.version>
	</properties>

	<dependencyManagement>

		<!-- Camel dependencies -->

		<dependencies>
			<dependency>
				<groupId>org.apache.camel</groupId>
				<artifactId>camel-core</artifactId>
				<version>${camel-version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.camel</groupId>
				<artifactId>camel-spring</artifactId>
				<version>${camel-version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.camel</groupId>
				<artifactId>spi-annotations</artifactId>
				<version>${camel-version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.camel</groupId>
				<artifactId>camel-support</artifactId>
				<version>${camel-version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.apache.camel</groupId>
				<artifactId>camel-test-junit5</artifactId>
				<version>${camel-version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.apache.camel</groupId>
				<artifactId>camel-test-spring-junit5</artifactId>
				<version>${camel-version}</version>
				<type>bundle</type>
				<scope>test</scope>
			</dependency>

			<dependency>
				<groupId>org.fusesource</groupId>
				<artifactId>org.fusesource.camel.component.sap</artifactId>
				<version>${camel.sap.plugin.version}</version>
				<scope>compile</scope>
			</dependency>
			<dependency>
				<groupId>org.fusesource</groupId>
				<artifactId>org.fusesource.camel.component.sap.model</artifactId>
				<version>${camel.sap.plugin.version}</version>
				<scope>compile</scope>
			</dependency>
			<dependency>
				<groupId>org.fusesource</groupId>
				<artifactId>org.fusesource.camel.component.sap.model.edit</artifactId>
				<version>${camel.sap.plugin.version}</version>
				<scope>compile</scope>
			</dependency>

			<!-- Eclipse -->

			<dependency>
				<groupId>org.eclipse.emf</groupId>
				<artifactId>org.eclipse.emf.common</artifactId>
				<version>2.19.0</version>
				<scope>compile</scope>
			</dependency>
			<dependency>
				<groupId>org.eclipse.emf</groupId>
				<artifactId>org.eclipse.emf.ecore</artifactId>
				<version>2.22.0</version>
				<scope>compile</scope>
			</dependency>
			<dependency>
				<groupId>org.eclipse.emf</groupId>
				<artifactId>org.eclipse.emf.ecore.change</artifactId>
				<version>2.11.0</version>
				<scope>compile</scope>
			</dependency>
			<dependency>
				<groupId>org.eclipse.emf</groupId>
				<artifactId>org.eclipse.emf.ecore.xmi</artifactId>
				<version>2.16.0</version>
				<scope>compile</scope>
			</dependency>
			<dependency>
				<groupId>org.eclipse.emf</groupId>
				<artifactId>org.eclipse.emf.edit</artifactId>
				<version>2.16.0</version>
				<scope>compile</scope>
			</dependency>

			<dependency>
				<groupId>org.eclipse.core</groupId>
				<artifactId>runtime</artifactId>
				<version>3.10.0-v20140318-2214</version>
			</dependency>

			<!-- SAP libraries -->

			<dependency>
				<groupId>com.sap.conn.idoc</groupId>
				<artifactId>sapidoc3</artifactId>
				<version>3.1.1</version>
			</dependency>
			<dependency>
				<groupId>com.sap.conn.jco</groupId>
				<artifactId>sapjco3</artifactId>
				<version>3.1.4</version>
			</dependency>
			<dependency>
				<groupId>com.sap.conn.jco</groupId>
				<artifactId>sapjco3</artifactId>
				<version>3.1.4</version>
				<type>${envType}</type>
				<classifier>${envClassifier}</classifier>
				<scope>test</scope>
			</dependency>

			<!-- Other -->

			<dependency>
				<groupId>com.sun.xml.bind</groupId>
				<artifactId>jaxb-core</artifactId>
				<version>2.3.0.redhat-1</version>
			</dependency>

			<dependency>
				<groupId>org.mockito</groupId>
				<artifactId>mockito-core</artifactId>
				<version>${mockito.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.powermock</groupId>
				<artifactId>powermock-module-junit4</artifactId>
				<version>${powermock.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.powermock</groupId>
				<artifactId>powermock-api-mockito2</artifactId>
				<version>${powermock.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.hamcrest</groupId>
				<artifactId>hamcrest</artifactId>
				<version>${hamcrest.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.hamcrest</groupId>
				<artifactId>hamcrest-library</artifactId>
				<version>${hamcrest.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>4.13.2</version>
				<scope>test</scope>
			</dependency>

		</dependencies>
	</dependencyManagement>

	<profiles>
		<profile>
			<id>integration-tests</id>
			<properties>
				<skip.integration.tests>false</skip.integration.tests>
				<skip.unit.tests>true</skip.unit.tests>
			</properties>
		</profile>
		<profile>
			<id>win-i386</id>
			<activation>
				<os>
					<name>windows</name>
					<arch>i386</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>win-i686</envClassifier>
				<envType>dll</envType>
				<native.lib.filename>sapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>win-x86</id>
			<activation>
				<os>
					<name>windows</name>
					<arch>x86</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>win-i686</envClassifier>
				<envType>dll</envType>
				<native.lib.filename>sapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>win-x86_64</id>
			<activation>
				<os>
					<name>windows</name>
					<arch>x86_64</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>win-x86_64</envClassifier>
				<envType>dll</envType>
				<native.lib.filename>sapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>win10-x86_64</id>
			<activation>
				<os>
					<name>windows 10</name>
					<arch>x86_64</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>win-x86_64</envClassifier>
				<envType>dll</envType>
				<native.lib.filename>sapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>win32-amd64</id>
			<activation>
				<os>
					<name>windows</name>
					<arch>amd64</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>win-x86_64</envClassifier>
				<envType>dll</envType>
				<native.lib.filename>sapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>win10-amd64</id>
			<activation>
				<os>
					<name>windows 10</name>
					<arch>amd64</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>win-x86_64</envClassifier>
				<envType>dll</envType>
				<native.lib.filename>sapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>linux-i386</id>
			<activation>
				<os>
					<name>linux</name>
					<arch>i386</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>linux-i686</envClassifier>
				<envType>so</envType>
				<native.lib.filename>libsapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>linux-x86</id>
			<activation>
				<os>
					<name>linux</name>
					<arch>x86</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>linux-i686</envClassifier>
				<envType>so</envType>
				<native.lib.filename>libsapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>linux-x86_64</id>
			<activation>
				<os>
					<name>linux</name>
					<arch>x86_64</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>linux-x86_64</envClassifier>
				<envType>so</envType>
				<native.lib.filename>libsapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>linux-amd64</id>
			<activation>
				<os>
					<name>linux</name>
					<arch>amd64</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>linux-x86_64</envClassifier>
				<envType>so</envType>
				<native.lib.filename>libsapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>macosx-i386</id>
			<activation>
				<os>
					<name>mac os x</name>
					<arch>i386</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>macosx-i686</envClassifier>
				<envType>dylib</envType>
				<native.lib.filename>libsapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>macosx-x86</id>
			<activation>
				<os>
					<name>mac os x</name>
					<arch>x86</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>macosx-i686</envClassifier>
				<envType>dylib</envType>
				<native.lib.filename>libsapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>macosx-x86_64</id>
			<activation>
				<os>
					<name>mac os x</name>
					<arch>x86_64</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>macosx-x86_64</envClassifier>
				<envType>dylib</envType>
				<native.lib.filename>libsapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>macosx-amd64</id>
			<activation>
				<os>
					<name>mac os x</name>
					<arch>amd64</arch>
				</os>
			</activation>
			<properties>
				<envClassifier>macosx-x86_64</envClassifier>
				<envType>dylib</envType>
				<native.lib.filename>libsapjco3</native.lib.filename>
			</properties>
		</profile>
		<profile>
			<id>repository</id>
			<modules>
				<!-- these 6 SAP bundles are only used at build time as per ENTESB-5801 -->
				<!-- NOT SUPPORT in 3.1.4
                                <module>com.sap.conn.jco.linux.x86</module>
				-->
				<module>com.sap.conn.jco.linux.x86_64</module>
				<!-- NOT SUPPORT in 3.1.4
                                <module>com.sap.conn.jco.osx.x86</module>
				-->
				<module>com.sap.conn.jco.osx.x86_64</module>
				<module>com.sap.conn.jco.win32.x86</module>
				<module>com.sap.conn.jco.win32.x86_64</module>
			</modules>
		</profile>
	</profiles>

	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.camel</groupId>
					<artifactId>camel-package-maven-plugin</artifactId>
					<version>${camel-version}</version>
					<executions>
						<execution>
							<goals>
								<goal>generate-components-list</goal>
							</goals>
							<phase>generate-resources</phase>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.apache.felix</groupId>
					<artifactId>maven-bundle-plugin</artifactId>
					<version>${maven-bundle-plugin-version}</version>
					<extensions>true</extensions>
					<configuration>
						<excludeDependencies>${fuse.osgi.exclude.dependencies}</excludeDependencies>
						<instructions>
							<Bundle-Name>%Bundle-Name</Bundle-Name>
							<Bundle-Vendor>%Bundle-Vendor</Bundle-Vendor>
							<Bundle-Version>${project.version}</Bundle-Version>
							<_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
							<_failok>false</_failok>
						</instructions>
					</configuration>
					<executions>
						<execution>
							<id>cleanVersions</id>
							<phase>generate-sources</phase>
							<goals>
								<goal>cleanVersions</goal>
							</goals>
							<configuration>
								<versions>
									<karaf.osgi.version>${karaf-version}</karaf.osgi.version>
								</versions>
							</configuration>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-plugin</artifactId>
					<version>${maven-surefire-plugin-version}</version>
				</plugin>
			</plugins>
		</pluginManagement>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>3.0.1</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>aggregate</goal>
						</goals>
						<configuration>
							<finalName>camel-sap-${project.version}</finalName>
							<attach>true</attach>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-install-plugin</artifactId>
				<inherited>false</inherited>
				<executions>
					<execution>
						<id>attach-artifacts</id>
						<phase>install</phase>
						<goals>
							<goal>install-file</goal>
						</goals>
						<configuration>
							<file>target/camel-sap-${project.version}-sources.jar</file>
							<groupId>org.fusesource</groupId>
							<artifactId>camel-sap</artifactId>
							<version>${project.version}</version>
							<packaging>jar</packaging>
							<classifier>sources</classifier>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
	<modules>
		<!--
			These 2 SAP bundles are only used at build time as per ENTESB-5801
			These projects:
			 - depend on actual SAP libraries stored in brew repository
			 - use maven-dependency-plugin to copy the SAP libraries to their target/ directory
			 - will then provide system-scoped dependencies for next projects
		-->
		<!-- Not needed
		<module>com.sap.conn.idoc</module>
		<module>com.sap.conn.jco</module>
		-->

		<module>org.fusesource.camel.component.sap.model</module>
		<module>org.fusesource.camel.component.sap.model.edit</module>
		<module>org.fusesource.camel.component.sap</module>
		<module>org.fusesource.camel.component.sap.test</module>

		<module>camel-sap-component</module>
	</modules>

	<repositories>
		
		
		
	</repositories>
	<pluginRepositories>
		
		
	</pluginRepositories>
</project>
<!--
Modified by POM Manipulation Extension for Maven 4.16 ( SHA: 352ae4a7 )
-->
