<?xml version="1.0" encoding="UTF-8"?>
	<!--
		Licensed to the Apache Software Foundation (ASF) under one or more
		contributor license agreements. See the NOTICE file distributed with
		this work for additional information regarding copyright ownership.
		The ASF 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>
	<pomVersion>3</pomVersion>
	<name>JCS</name>
	<id>jcs</id>
	<currentVersion>1.3.2.5-RC</currentVersion>
	<organization>
		<name>Apache Software Foundation</name>
		<url>http://jakarta.apache.org/</url>
		<logo>/images/jakarta.png</logo>
	</organization>
	<inceptionYear>2002</inceptionYear>
	<package>org.apache.jcs</package>
	<logo></logo>
	<gumpRepositoryId>jakarta</gumpRepositoryId>
	<shortDescription>Cache</shortDescription>
	<description>Comprehensive Caching System</description>
	<url>http://jakarta.apache.org/jcs/</url>
	<issueTrackingUrl> http://issues.apache.org/jira/browse/JCS
	</issueTrackingUrl>
	<siteAddress>people.apache.org</siteAddress>
	<siteDirectory>/www/jakarta.apache.org/jcs/
	</siteDirectory>
	<distributionSite>www.apache.org</distributionSite>
	<distributionDirectory> /www/www.apache.org/dist/java-repository
	</distributionDirectory>
	<repository>
		<connection>
			scm:svn:http://svn.apache.org/repos/asf/jakarta/jcs/trunk/
		</connection>
		<developerConnection>
			scm:svn:https://svn.apache.org/repos/asf/jakarta/jcs/trunk/
		</developerConnection>
		<url>http://svn.apache.org/viewcvs.cgi/jakarta/jcs/trunk/
		</url>
	</repository>
	<mailingLists>
		<mailingList>
			<name>JCS User List</name>
			<subscribe> jcs-users-subscribe@jakarta.apache.org</subscribe>
			<unsubscribe> jcs-users-unsubscribe@jakarta.apache.org</unsubscribe>
			<archive> http://mail-archives.apache.org/mod_mbox/jakarta-jcs-users/
			</archive>
		</mailingList>
		<mailingList>
			<name>JCS Developer List</name>
			<subscribe>jcs-dev-subscribe@jakarta.apache.org
			</subscribe>
			<unsubscribe> jcs-dev-unsubscribe@jakarta.apache.org</unsubscribe>
			<archive> http://mail-archives.apache.org/mod_mbox/jakarta-jcs-dev/
			</archive>
		</mailingList>
		<mailingList>
			<name>OLD User list</name>
			<subscribe></subscribe>
			<unsubscribe></unsubscribe>
			<archive>
				http://mail-archives.apache.org/mod_mbox/jakarta-turbine-jcs-user/
			</archive>
		</mailingList>
		<mailingList>
			<name>OLD Developer list</name>
			<subscribe></subscribe>
			<unsubscribe></unsubscribe>
			<archive>
				http://mail-archives.apache.org/mod_mbox/jakarta-turbine-jcs-dev/
			</archive>
		</mailingList>
	</mailingLists>
	<developers>
		<developer>
			<name>Aaron Smuts</name>
			<id>asmuts</id>
			<email>asmuts@apache.org</email>
			<organization />
		</developer>
		<developer>
			<name>James Taylor</name>
			<id>jtaylor</id>
			<email>james@jamestaylor.org</email>
			<organization />
		</developer>
		<developer>
			<name>Hanson Char</name>
			<id>hchar</id>
			<email>hchar@apache.org</email>
			<organization />
		</developer>
		<developer>
			<name>Travis Savo</name>
			<id>tsavo</id>
			<email>tsavo@ifilm.com</email>
			<organization>IFilm</organization>
		</developer>
	</developers>
	<contributors>
		<contributor>
			<name>Scott Eade</name>
			<email>seade@backstagetech.com.au</email>
		</contributor>
		<contributor>
			<name>Michael Stevens</name>
			<email>mstevens@etla.org</email>
		</contributor>
		<contributor>
			<name>Thomas Vandahl</name>
			<email>tv@apache.org</email>
		</contributor>
	</contributors>
	<dependencies>

		<!--  For comparative performance tests only -->
		<dependency>
			<groupId>commons-collections</groupId>
			<artifactId>commons-collections</artifactId>
			<version>3.2</version>
			<url>http://jakarta.apache.org/commons/collections/
			</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>commons-configuration</groupId>
			<artifactId>commons-configuration</artifactId>
			<version>1.4</version>
			<url>http://jakarta.apache.org/commons/configuration/
			</url>
			<type>jar</type>
		</dependency>

		<!--  REQUIRED FOR JCS CORE -->
		<dependency>
			<groupId>commons-logging</groupId>
			<artifactId>commons-logging</artifactId>
			<version>1.1</version>
			<url>http://jakarta.apache.org/commons/logging/
			</url>
			<type>jar</type>
		</dependency>

		<!--  REQUIRED FOR JCS CORE -->
		<dependency>
			<groupId>commons-lang</groupId>
			<artifactId>commons-lang</artifactId>
			<version>2.1</version>
			<url>http://jakarta.apache.org/commons/lang/
			</url>
			<type>jar</type>
		</dependency>

		<!--  JDBC DISK CACHE -->
		<dependency>
			<groupId>commons-dbcp</groupId>
			<artifactId>commons-dbcp</artifactId>
			<version>1.2.2</version>
			<url>http://jakarta.apache.org/commons
			</url>
			<type>jar</type>
		</dependency>

		<!--  JDBC DISK CACHE -->
		<dependency>
			<groupId>commons-pool</groupId>
			<artifactId>commons-pool</artifactId>
			<version>1.3</version>
			<url>http://jakarta.apache.org/commons
			</url>
			<type>jar</type>
		</dependency>

		<!--  REQUIRED FOR JCS CORE -->
		<dependency>
			<groupId>concurrent</groupId>
			<artifactId>concurrent</artifactId>
			<!-- Using old release for now while JDK 1.3 is supported. -->
			<version>1.0</version>
			<url>
				http://gee.cs.oswego.edu/dl/classes/EDU/oswego/cs/dl/util/concurrent/intro.html
			</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>3.0.10</version>
			<url></url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>hsqldb</groupId>
			<artifactId>hsqldb</artifactId>
			<version>1.7.3.3</version>
			<!-- <version>1.8.0.7</version> -->
			<url>http://hsqldb.sourceforge.net/
			</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>log4j</groupId>
			<artifactId>log4j</artifactId>
			<version>1.2.12</version>
			<url>http://logging.apache.org/log4j/
			</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>servletapi</groupId>
			<artifactId>servletapi</artifactId>
			<version>2.3</version>
			<url>http://java.sun.com/products/servlet/
			</url>
			<type>jar</type>
		</dependency>

		<!-- LGPL! -->
		<!--
			<dependency> <groupId>jgroups</groupId>
			<artifactId>jgroups-all</artifactId> <version>2.2.8</version>
			<url></url> <type>jar</type> </dependency>
		-->
		<dependency>
			<groupId>tomcat</groupId>
			<artifactId>tomcat-util</artifactId>
			<version>3.2.1</version>
			<url>http://tomcat.apache.org/</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>velocity</groupId>
			<artifactId>velocity</artifactId>
			<version>1.5</version>
			<url>http://jakarta.apache.org/velocity/
			</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>3.8.1</version>
			<url>http://www.junit.org/</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>xmlrpc</groupId>
			<artifactId>xmlrpc</artifactId>
			<version>2.0</version>
			<url>http://ws.apache.org/xmlrpc/</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>xerces</groupId>
			<artifactId>xercesImpl</artifactId>
			<version>2.6.2</version>
			<url>http://xml.apache.org/xerces2-j/
			</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>xml-apis</groupId>
			<artifactId>xml-apis</artifactId>
			<version>2.0.2</version>
			<url>http://xml.apache.org/commons/
			</url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>berkeleydb</groupId>
			<artifactId>berkeleydb</artifactId>
			<version>1.5.1</version>
			<url></url>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>maven-plugins</groupId>
			<artifactId>maven-cobertura-plugin</artifactId>
			<version>1.4</version>
			<type>plugin</type>
		</dependency>
	</dependencies>
	<build>
		<sourceDirectory>src/java</sourceDirectory>
		<unitTestSourceDirectory>src/test</unitTestSourceDirectory>
		<!-- aspectSourceDirectories></aspectSourceDirectories -->
		<unitTest>
			<includes>
				<include>**/*${test}Test.java</include>
			</includes>
			<excludes>
				<!--
					Several of the test cases rely on background tasks that are timing
					sensitive.
				-->
				<!-- You need to manually run these test cases. -->
				<exclude>**/BlockDiskElementDescriptorUnitTest.java
				</exclude>
				<exclude>**/HSQLDiskCacheConcurrentUnitTest.java
				</exclude>
				<exclude>**/HSQLDiskCacheUnitTest.java
				</exclude>
				<exclude>**/IndexedDiskCacheOptimizationUnitTest.java
				</exclude>
				<exclude>**/TestTCPLateralUnitTest.java
				</exclude>
				<exclude>**/UDPDiscoveryUnitTest.java
				</exclude>
				<!-- The ones that fail may be different for you. -->
				<!-- <exclude>**/JDBCDiskCacheRemovalUnitTest.java</exclude> -->
				<!-- <exclude>**/JDBCDiskCacheUnitTest.java</exclude> -->
			</excludes>
			<resources>
				<resource>
					<directory>src/test-conf</directory>
					<includes>
						<include>**/*.properties</include>
						<include>**/*.ccf</include>
					</includes>
				</resource>
			</resources>
		</unitTest>
		<resources>
			<resource>
				<directory>${basedir}</directory>
				<targetPath>META-INF</targetPath>
				<includes>
					<include>NOTICE</include>
					<include>LICENSE.xerox</include>
				</includes>
			</resource>
		</resources>
	</build>
	<reports>
		<report>maven-jdepend-plugin</report>
		<!-- report>maven-checkstyle-plugin</report-->
		<report>maven-changes-plugin</report>
		<report>maven-cobertura-plugin</report>
		<report>maven-javadoc-plugin</report>
		<report>maven-jxr-plugin</report>
		<report>maven-junit-report-plugin</report>
		<report>maven-tasklist-plugin</report>
		<report>maven-pmd-plugin</report>
		<report>maven-simian-plugin</report>
		<report>maven-faq-plugin</report>
	</reports>
</project>