<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>

	<groupId>com.commafeed</groupId>
	<artifactId>commafeed</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>war</packaging>
	<name>CommaFeed</name>

	<prerequisites>
		<maven>3.0.0</maven>
	</prerequisites>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<production>false</production>
		<jpa.show_sql>false</jpa.show_sql>
		<jpa.datasource.name>java:openejb/Resource/My DataSource</jpa.datasource.name>
		<jpa.cache>false</jpa.cache>
		<cache_service.class>com.commafeed.backend.cache.NoopCacheService</cache_service.class>
	</properties>

	<repositories>

		<repository>
			<id>hsqldb.snapshots</id>
			<url>http://www.hsqldb.org/repos/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</repository>
	</repositories>

	<build>
		<finalName>commafeed</finalName>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
				<filtering>true</filtering>
			</resource>
			<resource>
				<directory>src/main/java</directory>
				<includes>
					<include>**/*</include>
				</includes>
				<excludes>
					<exclude>**/*.java</exclude>
				</excludes>
			</resource>
		</resources>

		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.1</version>
				<configuration>
					<source>1.7</source>
					<target>1.7</target>
					<compilerArgument>-proc:none</compilerArgument>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-war-plugin</artifactId>
				<version>2.3</version>
				<configuration>
					<failOnMissingWebXml>false</failOnMissingWebXml>
					<webResources combine.children="append">
						<resource>
							<directory>${basedir}/src/main/webapp/WEB-INF</directory>
							<targetPath>WEB-INF</targetPath>
							<filtering>true</filtering>
							<includes>
								<include>**/beans.xml</include>
							</includes>
						</resource>
					</webResources>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.openejb.maven</groupId>
				<artifactId>tomee-maven-plugin</artifactId>
				<version>1.5.2</version>
				<configuration>
					<tomeeVersion>1.5.2</tomeeVersion>
					<tomeeClassifier>plus</tomeeClassifier>
					<tomeeHttpPort>8082</tomeeHttpPort>
					<args>-Xmx1024m -XX:MaxPermSize=512m -XX:+CMSClassUnloadingEnabled</args>
					<config>${project.basedir}/src/main/tomee/conf</config>
					<reloadOnUpdate>true</reloadOnUpdate>
					<synchronization>
						<updateInterval>1</updateInterval>
						<extensions>
							<extension>.class</extension>
						</extensions>
						<updateOnlyExtensions>
							<updateOnlyExtension>.properties</updateOnlyExtension>
							<updateOnlyExtension>.html</updateOnlyExtension>
							<updateOnlyExtension>.js</updateOnlyExtension>
							<updateOnlyExtension>.css</updateOnlyExtension>
							<updateOnlyExtension>.scss</updateOnlyExtension>
						</updateOnlyExtensions>
					</synchronization>
					<libs>
						<lib>org.hibernate:hibernate-entitymanager:4.1.11.Final</lib>
						<lib>org.hibernate:hibernate-core:4.1.11.Final</lib>
						<lib>org.hibernate.common:hibernate-commons-annotations:4.0.1.Final</lib>
						<lib>org.hibernate:hibernate-validator:4.3.1.Final</lib>
						<lib>org.jboss.logging:jboss-logging:3.1.3.GA</lib>

						<lib>dom4j:dom4j:1.6.1</lib>
						<lib>antlr:antlr:2.7.7</lib>
						<lib>remove:openjpa-</lib>
						<lib>remove:hsqldb</lib>
						<lib>org.hsqldb:hsqldb:SNAPSHOT</lib>
						<lib>mysql:mysql-connector-java:5.1.24</lib>
						<lib>postgresql:postgresql:9.1-901.jdbc4</lib>
						<lib>net.sourceforge.jtds:jtds:1.3.1</lib>

						<lib>org.infinispan:infinispan-core:5.1.4.FINAL</lib>
						<lib>org.hibernate:hibernate-infinispan:4.1.11.Final</lib>
						<lib>org.jgroups:jgroups:3.0.9.Final</lib>
						<lib>org.jboss.marshalling:jboss-marshalling-river:1.3.11.GA</lib>
						<lib>org.jboss.marshalling:jboss-marshalling:1.3.11.GA</lib>
						<lib>org.codehaus.woodstox:woodstox-core-asl:4.1.1</lib>
						<lib>org.codehaus.woodstox:stax2-api:3.1.1</lib>
						<lib>org.rhq.helpers:rhq-pluginAnnotations:3.0.4</lib>
						<lib>org.jboss.logmanager:jboss-logmanager:1.2.2.GA</lib>
					</libs>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.bsc.maven</groupId>
				<artifactId>maven-processor-plugin</artifactId>
				<version>2.2.3</version>
				<executions>
					<execution>
						<id>process</id>
						<goals>
							<goal>process</goal>
						</goals>
						<phase>generate-sources</phase>
						<configuration>
							<processors>
								<processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor>
							</processors>
							<outputDirectory>target/generated-sources/metamodel</outputDirectory>
						</configuration>
					</execution>
				</executions>
				<dependencies>
					<dependency>
						<groupId>org.hibernate</groupId>
						<artifactId>hibernate-jpamodelgen</artifactId>
						<version>1.2.0.Final</version>
					</dependency>
				</dependencies>
			</plugin>
		</plugins>
	</build>

	<dependencies>
		<dependency>
			<groupId>org.jboss.spec</groupId>
			<artifactId>jboss-javaee-6.0</artifactId>
			<version>1.0.0.Final</version>
			<type>pom</type>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-entitymanager</artifactId>
			<version>4.1.11.Final</version>
			<scope>provided</scope>
			<exclusions>
				<exclusion>
					<artifactId>dom4j</artifactId>
					<groupId>dom4j</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>redis.clients</groupId>
			<artifactId>jedis</artifactId>
			<version>2.1.0</version>
		</dependency>
		<dependency>
			<groupId>org.liquibase</groupId>
			<artifactId>liquibase-core</artifactId>
			<version>3.0.1</version>
		</dependency>

		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
			<version>14.0.1</version>
		</dependency>
		<dependency>
			<groupId>commons-beanutils</groupId>
			<artifactId>commons-beanutils</artifactId>
			<version>1.8.3</version>
		</dependency>
		<dependency>
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
			<version>1.8</version>
		</dependency>
		<dependency>
			<groupId>commons-collections</groupId>
			<artifactId>commons-collections</artifactId>
			<version>3.2.1</version>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>2.4</version>
		</dependency>
		<dependency>
			<groupId>commons-lang</groupId>
			<artifactId>commons-lang</artifactId>
			<version>2.6</version>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-math</artifactId>
			<version>2.2</version>
		</dependency>
		<dependency>
			<groupId>commons-fileupload</groupId>
			<artifactId>commons-fileupload</artifactId>
			<version>1.3</version>
		</dependency>
		<dependency>
			<groupId>com.googlecode.lambdaj</groupId>
			<artifactId>lambdaj</artifactId>
			<version>2.3.3</version>
		</dependency>
		<dependency>
			<groupId>joda-time</groupId>
			<artifactId>joda-time</artifactId>
			<version>2.2</version>
		</dependency>

		<dependency>
			<groupId>net.java.dev.rome</groupId>
			<artifactId>rome</artifactId>
			<version>1.0.0</version>
			<exclusions>
				<exclusion>
					<groupId>jdom</groupId>
					<artifactId>jdom</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.rometools</groupId>
			<artifactId>rome-opml</artifactId>
			<version>1.0</version>
			<exclusions>
				<exclusion>
					<groupId>rome</groupId>
					<artifactId>rome</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>edu.uci.ics</groupId>
			<artifactId>crawler4j</artifactId>
			<version>3.5</version>
		</dependency>
		<dependency>
			<groupId>org.jdom</groupId>
			<artifactId>jdom</artifactId>
			<version>1.1.3</version>
		</dependency>
		<dependency>
			<groupId>com.googlecode.juniversalchardet</groupId>
			<artifactId>juniversalchardet</artifactId>
			<version>1.0.3</version>
		</dependency>
		<dependency>
			<groupId>com.google.gwt</groupId>
			<artifactId>gwt-servlet</artifactId>
			<version>2.5.1</version>
		</dependency>
		<dependency>
			<groupId>net.sourceforge.cssparser</groupId>
			<artifactId>cssparser</artifactId>
			<version>0.9.9</version>
		</dependency>

		<dependency>
			<groupId>com.google.oauth-client</groupId>
			<artifactId>google-oauth-client-servlet</artifactId>
			<version>1.14.1-beta</version>
		</dependency>
		<dependency>
			<groupId>com.google.http-client</groupId>
			<artifactId>google-http-client-jackson2</artifactId>
			<version>1.14.1-beta</version>
		</dependency>

		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpclient</artifactId>
			<version>4.2.5</version>
		</dependency>
		<dependency>
			<groupId>org.jsoup</groupId>
			<artifactId>jsoup</artifactId>
			<version>1.7.2</version>
		</dependency>

		<dependency>
			<groupId>com.fasterxml.jackson.jaxrs</groupId>
			<artifactId>jackson-jaxrs-json-provider</artifactId>
			<version>2.1.4</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
			<version>1.7.5</version>
		</dependency>
		<dependency>
			<groupId>log4j</groupId>
			<artifactId>log4j</artifactId>
			<version>1.2.17</version>
		</dependency>

		<dependency>
			<groupId>org.apache.wicket</groupId>
			<artifactId>wicket-core</artifactId>
			<version>6.8.0</version>
		</dependency>

		<dependency>
			<groupId>org.apache.wicket</groupId>
			<artifactId>wicket-auth-roles</artifactId>
			<version>6.8.0</version>
		</dependency>
		<dependency>
			<groupId>org.apache.wicket</groupId>
			<artifactId>wicket-extensions</artifactId>
			<version>6.8.0</version>
		</dependency>
		<dependency>
			<groupId>org.apache.wicket</groupId>
			<artifactId>wicket-cdi</artifactId>
			<version>6.8.0</version>
		</dependency>
		<dependency>
			<groupId>ro.isdc.wro4j</groupId>
			<artifactId>wro4j-extensions</artifactId>
			<version>1.6.3</version>
		</dependency>

		<dependency>
			<groupId>com.wordnik</groupId>
			<artifactId>swagger-jaxrs_2.9.1</artifactId>
			<version>1.2.5</version>
			<exclusions>
				<exclusion>
					<artifactId>jersey-server</artifactId>
					<groupId>com.sun.jersey</groupId>
				</exclusion>
				<exclusion>
					<artifactId>jersey-servlet</artifactId>
					<groupId>com.sun.jersey</groupId>
				</exclusion>
				<exclusion>
					<artifactId>jersey-client</artifactId>
					<groupId>com.sun.jersey</groupId>
				</exclusion>
				<exclusion>
					<artifactId>jersey-core</artifactId>
					<groupId>com.sun.jersey</groupId>
				</exclusion>
			</exclusions>
		</dependency>

		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.11</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<profiles>
		<profile>
			<id>default</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<build>
				<plugins>
					<plugin>
						<groupId>ro.isdc.wro4j</groupId>
						<artifactId>wro4j-maven-plugin</artifactId>
						<version>1.6.3</version>
						<executions>
							<execution>
								<id>js</id>
								<phase>test</phase>
								<goals>
									<goal>jshint</goal>
								</goals>
								<configuration>
									<targetGroups>app</targetGroups>
									<options>indent,devel,noarg,quotmark,laxcomma,laxbreak</options>
								</configuration>
							</execution>
							<execution>
								<id>css</id>
								<phase>test</phase>
								<goals>
									<goal>csslint</goal>
								</goals>
								<configuration>
									<targetGroups>app</targetGroups>
									<options>display-property-grouping,duplicate-properties,compatible-vendor-prefixes,vendor-prefix</options>
								</configuration>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>openshift</id>
			<properties>
				<jpa.datasource.name>java:jboss/datasources/MysqlDS</jpa.datasource.name>
			</properties>
			<build>
				<finalName>commafeed</finalName>
				<plugins>
					<plugin>
						<artifactId>maven-surefire-plugin</artifactId>
						<version>2.14.1</version>
						<configuration>
							<skip>true</skip>
						</configuration>
					</plugin>
					<plugin>
						<artifactId>maven-war-plugin</artifactId>
						<version>2.3</version>
						<configuration>
							<outputDirectory>deployments</outputDirectory>
							<warName>ROOT</warName>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>

		<profile>
			<id>cache</id>
			<properties>
				<jpa.cache>true</jpa.cache>
			</properties>
		</profile>
		<profile>
			<id>redis</id>
			<properties>
				<cache_service.class>com.commafeed.backend.cache.RedisCacheService</cache_service.class>
			</properties>
		</profile>
		<profile>
			<id>mysql</id>
			<properties>
				<jpa.datasource.name>java:openejb/Resource/MySQL</jpa.datasource.name>
			</properties>
		</profile>
		<profile>
			<id>pgsql</id>
			<properties>
				<jpa.datasource.name>java:openejb/Resource/PostgreSQL</jpa.datasource.name>
			</properties>
		</profile>
		<profile>
			<id>mssql</id>
			<properties>
				<jpa.datasource.name>java:openejb/Resource/MSSQL</jpa.datasource.name>
			</properties>
		</profile>
		<profile>
			<id>prod</id>
			<activation>
				<property>
					<name>skipTests</name>
				</property>
			</activation>
			<properties>
				<timestamp>${maven.build.timestamp}</timestamp>
				<production>true</production>
				<jpa.show_sql>false</jpa.show_sql>
			</properties>
			<build>
				<plugins>
					<plugin>
						<groupId>org.codehaus.gmaven</groupId>
						<artifactId>gmaven-plugin</artifactId>
						<version>1.5</version>
						<dependencies>
							<dependency>
								<groupId>commons-io</groupId>
								<artifactId>commons-io</artifactId>
								<version>2.4</version>
							</dependency>
						</dependencies>
						<executions>
							<execution>
								<phase>generate-sources</phase>
								<goals>
									<goal>execute</goal>
								</goals>
								<configuration>
									<properties>
										<source>${basedir}/src/main/webapp/templates</source>
										<prefix>templates/</prefix>
										<destination>${basedir}/target/generated-sources/angularjs/all-templates.html</destination>
										<i18nPath>${basedir}/src/main/resources/i18n/</i18nPath>
									</properties>
									<scriptpath>
										<element>${basedir}/src/main/script</element>
									</scriptpath>
									<source>
										def source = project.properties['source'];
										def prefix =
										project.properties['prefix'];
										def dest =
										project.properties['destination'];
										def i18n =
										project.properties['i18nPath'];
										new
										HTMLConcat().concat(source,
										prefix, dest, i18n);
									</source>
								</configuration>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>ro.isdc.wro4j</groupId>
						<artifactId>wro4j-maven-plugin</artifactId>
						<version>1.6.3</version>
						<executions>
							<execution>
								<goals>
									<goal>run</goal>
								</goals>
							</execution>
						</executions>
						<configuration>
							<targetGroups>all</targetGroups>
							<wroManagerFactory>ro.isdc.wro.maven.plugin.manager.factory.ConfigurableWroManagerFactory</wroManagerFactory>
							<destinationFolder>${project.build.directory}/${project.build.finalName}/static/</destinationFolder>
						</configuration>
					</plugin>
					<plugin>
						<artifactId>maven-war-plugin</artifactId>
						<version>2.3</version>
						<configuration>
							<webResources>
								<resource>
									<directory>target/generated-sources/angularjs/</directory>
									<targetPath>templates</targetPath>
									<includes>
										<include>**/*.html</include>
									</includes>
								</resource>
							</webResources>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>i18n</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.codehaus.gmaven</groupId>
						<artifactId>gmaven-plugin</artifactId>
						<version>1.5</version>
						<dependencies>
							<dependency>
								<groupId>commons-io</groupId>
								<artifactId>commons-io</artifactId>
								<version>2.4</version>
							</dependency>
						</dependencies>
						<configuration>
							<properties>
								<dir>${basedir}/src/main/resources/i18n/</dir>
							</properties>
							<scriptpath>
								<element>${basedir}/src/main/script</element>
							</scriptpath>
							<source>
								def dir = project.properties['dir'];
								new
								I18nGenerator().generate(dir);
							</source>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
</project>
