<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>

	<!--
		NOTE :
			sudoor Lib Project Provide Interface:
				CORS filter

				Spring Security for login

				Olingo for OData service
				CXF for REST router to Utils

				JPAManager
	-->

	<!-- The Basics -->
	<parent>
		<groupId>net.gplatform</groupId>
		<artifactId>sudoor-server-parent</artifactId>
		<version>1.0.17</version>
		<relativePath />
	</parent>

	<artifactId>sudoor-server-lib</artifactId>
	<version>1.0.22</version>
	<packaging>jar</packaging>

	<properties>
		<cxf.version>3.0.3</cxf.version>
		<!-- jackson 2.3.3 already included by spring boot, so here include jackson.jaxrs 2.3.3-->
		<com.fasterxml.jackson.jaxrs.version>2.4.4</com.fasterxml.jackson.jaxrs.version>
		<org.apache.olingo.version>2.0.3</org.apache.olingo.version>
		<kaptcha.version>0.0.9</kaptcha.version>
	</properties>

	<dependencies>
	<!-- this is for wildfly debug purpose -->
<!-- 		<dependency> -->
<!-- 		    <groupId>org.wildfly</groupId> -->
<!-- 		    <artifactId>wildfly-build</artifactId> -->
<!-- 		    <version>8.1.0.Final</version> -->
<!-- 		    <type>pom</type> -->
<!-- 		    <scope>import</scope> -->
<!-- 		</dependency> -->
		<!-- spring-boot-starter start -->
		<!-- used to track app status -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<dependency>
			<groupId>org.jolokia</groupId>
			<artifactId>jolokia-core</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
<!-- 			<exclusions> -->
<!-- 				<exclusion> -->
<!-- 					<groupId>org.springframework.boot</groupId> -->
<!-- 					<artifactId>spring-boot-starter-tomcat</artifactId> -->
<!-- 				</exclusion> -->
<!-- 			</exclusions> -->
		</dependency>
		
<!-- 		<dependency> -->
<!-- 			<groupId>org.springframework.boot</groupId> -->
<!-- 			<artifactId>spring-boot-starter-undertow</artifactId> -->
<!-- 		</dependency> -->

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-jpa</artifactId>
<!-- 			<exclusions> -->
<!-- 				<exclusion> -->
<!-- 					<groupId>org.hibernate</groupId> -->
<!-- 					<artifactId>hibernate-entitymanager</artifactId> -->
<!-- 				</exclusion> -->
<!-- 			</exclusions> -->
		</dependency>

		<!-- use  eclipselink to replace hibernate to avoid hibernate temporal literal issue. bug: HHH-8653
			To use eclipselink need to speify *QL for "in" clause due to bug: 349477
			Also txn need to be confinged for eclipselink
		-->
<!-- 		<dependency> -->
<!-- 			<groupId>org.eclipse.persistence</groupId> -->
<!-- 			<artifactId>eclipselink</artifactId> -->
<!-- 			<version>2.5.2</version> -->
<!-- 		</dependency> -->

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-jta-bitronix</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-security</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-thymeleaf</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-batch</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-social-linkedin</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-social-twitter</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-social-facebook</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-integration</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.integration</groupId>
			<artifactId>spring-integration-ftp</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-mail</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
		</dependency>
<!-- 		<dependency> -->
<!-- 			<groupId>org.springframework.boot</groupId> -->
<!-- 			<artifactId>spring-boot-starter-jersey</artifactId> -->
<!-- 		</dependency> -->
		<!-- for Generating your own meta-data for @ConfigurationProperties -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-configuration-processor</artifactId>
			<optional>true</optional>
		</dependency>
		<!-- spring-boot-starter end -->
		
		
		<!-- Infra Comp -->
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
		</dependency>
		<dependency>
			<groupId>commons-beanutils</groupId>
			<artifactId>commons-beanutils</artifactId>
		</dependency>

		<!-- use cxf to provider ws support, as spring ws only support contract-first approach which is a effort consuming approach -->
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-rt-frontend-jaxws</artifactId>
			<version>${cxf.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-rt-transports-http</artifactId>
			<version>${cxf.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-rt-ws-security</artifactId>
			<version>${cxf.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-rt-frontend-jaxrs</artifactId>
			<version>${cxf.version}</version>
		</dependency>
		<!-- Providers in cxf-rt-rs-extension-providers can only handle jaxb object & primiry object -->
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-rt-rs-extension-providers</artifactId>
			<version>${cxf.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-rt-rs-client</artifactId>
			<version>${cxf.version}</version>
		</dependency>
		<!-- jackson 2.3.3 already included by spring boot -->
		<!-- Providers in jackson-jaxrs-json-provider can handle pojo -->
		<dependency>
			<groupId>com.fasterxml.jackson.jaxrs</groupId>
			<artifactId>jackson-jaxrs-json-provider</artifactId>
			<version>${com.fasterxml.jackson.jaxrs.version}</version>
		</dependency>
		
		<!-- jersey client for rest test, but we recommend to use RestTemplate 
		<dependency>
		    <groupId>org.glassfish.jersey.core</groupId>
		    <artifactId>jersey-client</artifactId>
		    <version>2.13</version>
		</dependency>
		-->

		<!-- OData Impl Start -->
		<dependency>
			<groupId>org.apache.olingo</groupId>
			<artifactId>olingo-odata2-api</artifactId>
			<version>${org.apache.olingo.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.olingo</groupId>
			<artifactId>olingo-odata2-core</artifactId>
			<version>${org.apache.olingo.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.olingo</groupId>
			<artifactId>olingo-odata2-jpa-processor-api</artifactId>
			<version>${org.apache.olingo.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.olingo</groupId>
			<artifactId>olingo-odata2-api-annotation</artifactId>
			<version>${org.apache.olingo.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.olingo</groupId>
			<artifactId>olingo-odata2-jpa-processor-core</artifactId>
			<version>${org.apache.olingo.version}</version>
		</dependency>
		<!-- OData Impl End -->

		<dependency>
			<groupId>com.github.axet</groupId>
			<artifactId>kaptcha</artifactId>
			<version>${kaptcha.version}</version>
		</dependency>

		<dependency>
			<groupId>org.hsqldb</groupId>
			<artifactId>hsqldb</artifactId>
			<scope>runtime</scope>
		</dependency>
	</dependencies>

	<!-- Environment Settings -->
	<issueManagement>
		<system>GitHub</system>
		<url>https://github.com/xfcjscn/sudoor-server-lib/issues</url>
	</issueManagement>
	<scm>
		<connection>scm:git:https://github.com/xfcjscn/sudoor-server-lib.git</connection>
		<developerConnection>scm:git:https://github.com/xfcjscn/sudoor-server-lib.git</developerConnection>
		<url>https://github.com/xfcjscn/sudoor-server-lib</url>
		<tag>1.0.22</tag>
	</scm>
</project>
