<?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/xsd/maven-4.0.0.xsd">
	<parent>
		<groupId>org.codefilarete.stalactite</groupId>
		<artifactId>parent</artifactId>
		<version>3.0.0-SNAPSHOT</version>
	</parent>
	<modelVersion>4.0.0</modelVersion>
	
	<artifactId>spring-integration</artifactId>
	<packaging>pom</packaging>
	
	<properties>
		<spring.version>5.3.28</spring.version>
		<spring-data.version>2.7.18</spring-data.version>
		<!-- if upgrade to 3.x.y, please fix the TODO in SqlNativeRepositoryQuery about the Limit parameter -->
		<spring-data-relational.version>2.4.18</spring-data-relational.version>
	</properties>
	
	<modules>
		<module>transaction</module>
		<module>spring-data</module>
		<module>autoconfigure</module>
	</modules>
	
	<dependencies>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>${spring.version}</version>
			<!-- we don't force our version of Spring since this module needs little from it, so it's let to the "caller" to provided it -->
			<scope>provided</scope>
		</dependency>
		<!-- for HSQLDBInMemoryDataSource to do IT tests -->
		<dependency>
			<groupId>org.codefilarete.stalactite</groupId>
			<artifactId>sql-hsqldb-adapter</artifactId>
			<type>test-jar</type>
			<version>${project.version}</version>
			<scope>test</scope>
		</dependency>
		<!-- for HSQLDB Dialect to do IT tests -->
		<dependency>
			<groupId>org.codefilarete.stalactite</groupId>
			<artifactId>core-hsqldb-adapter</artifactId>
			<version>${project.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.codefilarete.stalactite</groupId>
			<artifactId>orm</artifactId>
			<type>test-jar</type>
			<version>${project.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-reload4j</artifactId>
			<version>${slf4j-api.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>3.12.0</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<version>${spring-data.version}</version>
			<scope>test</scope>
			<!-- we remove Spring dependency on logging because it's in conflict with log4j (dependency above) -->
			<!-- and make ir raises the error "LoggerFactory is not a Logback LoggerContext but Logback is on the classpath" -->
			<!-- See solution at https://tedblob.com/loggerfactory-is-not-a-logback-loggercontext-but-logback-is-on-the-classpath/ -->
			<exclusions>
				<exclusion>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-starter-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
	</dependencies>

</project>