<?xml version="1.0" encoding="UTF-8"?>
<!--
 ******************************************************************************
 * Copyright (c) 2008, 2010 VMware Inc.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *   VMware Inc. - initial contribution
 ******************************************************************************
-->
<ivysettings>

	<typedef name="s3" classname="org.springframework.aws.ivy.S3Resolver"/>

	<settings defaultResolver="external-lookup" defaultLatestStrategy="latest-lexico"/>

	<caches resolutionCacheDir="${ivy.cache.dir}/resolution" repositoryCacheDir="${ivy.cache.dir}/repository"
			ivyPattern="[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"
			artifactPattern="[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"
			useOrigin="false" checkUpToDate="false"/>

	<macrodef name="s3repo">
		<attribute name="bucket"/>
		<attribute name="artifact.type"/>
		<attribute name="release.type"/>
		<url name="s3.read.resolver">
			<ivy pattern="http://@{bucket}/ivy/@{artifact.type}/@{release.type}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
			<artifact pattern="http://@{bucket}/ivy/@{artifact.type}/@{release.type}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
		</url>
	</macrodef>	

	<macrodef name="eclipse-build">
		<attribute name="artifact.type"/>
		<attribute name="release.type"/>
		<sftp descriptor="required" user="${eclipse.buildId}" keyFile="${key.file}" host="build.eclipse.org">
			<ivy pattern="/opt/public/rt/virgo/ivy/@{artifact.type}/@{release.type}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
			<artifact pattern="/opt/public/rt/virgo/ivy/@{artifact.type}/@{release.type}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
		</sftp>
	</macrodef>

	<macrodef name="eclipse-build-read">
		<attribute name="artifact.type"/>
		<attribute name="release.type"/>
		<url name="eclipse.build.read.resolver">
			<ivy pattern="http://build.eclipse.org/rt/virgo/ivy/@{artifact.type}/@{release.type}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
			<artifact pattern="http://build.eclipse.org/rt/virgo/ivy/@{artifact.type}/@{release.type}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
		</url>
	</macrodef>

	<macrodef name="localrepo">
		<filesystem descriptor="required">
			<ivy pattern="${local.repo.dir}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
			<artifact pattern="${local.repo.dir}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
		</filesystem>
	</macrodef>

	<resolvers>
<!-- Integration repositories -->
		<filesystem name="integration" descriptor="required" >
			<ivy pattern="${integration.repo.dir}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
			<artifact pattern="${integration.repo.dir}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
		</filesystem>

<!-- Lookup repositories -->

		<url name="eclipse-external-lookup">
			<ivy pattern="http://build.eclipse.org/rt/virgo/external/[module]/ivy-[revision].xml"/>
			<artifact pattern="http://build.eclipse.org/rt/virgo/external/[module]/[artifact]-[revision].[ext]"/>
		</url>

		<chain name="external-lookup" returnFirst="true">
			<localrepo name="local-external-repository"/>
			<s3repo name="bundle-external-repository"			bucket="repository.springsource.com" artifact.type="bundles" release.type="external"/>
			<s3repo name="library-external-repository"			bucket="repository.springsource.com" artifact.type="libraries" release.type="external"/>
			<s3repo name="private-bundle-external-repository"	bucket="private.repository.springsource.com" artifact.type="bundles" release.type="external"/>
			<s3repo name="private-library-external-repository"	bucket="private.repository.springsource.com" artifact.type="libraries" release.type="external"/>
		</chain>

		<chain name="third-party-lookup" returnFirst="true">
			<resolver ref="integration"/>
			<localrepo name="local"/>
			<s3repo name="bundle-release-repository"		bucket="repository.springsource.com" artifact.type="bundles" release.type="release"/>
			<s3repo name="bundle-milestone-repository"		bucket="repository.springsource.com" artifact.type="bundles" release.type="milestone"/>
			<s3repo name="bundle-snapshot-repository"		bucket="repository.springsource.com" artifact.type="bundles" release.type="snapshot"/>
			<s3repo name="library-release-repository"		bucket="repository.springsource.com" artifact.type="libraries" release.type="release"/>
			<s3repo name="library-milestone-repository"		bucket="repository.springsource.com" artifact.type="libraries" release.type="milestone"/>
			<s3repo name="library-snapshot-repository"		bucket="repository.springsource.com" artifact.type="libraries" release.type="snapshot"/>
		</chain>

		<chain name="virgo-lookup" returnFirst="true">
			<resolver ref="integration"/>
			<localrepo name="local"/>
			<eclipse-build-read name="eclipse-bundle-release-repository"	    artifact.type="bundles" release.type="release"/>
			<eclipse-build-read name="eclipse-bundle-milestone-repository"	    artifact.type="bundles" release.type="milestone"/>
			<eclipse-build-read name="eclipse-bundle-snapshot-repository"	    artifact.type="bundles" release.type="snapshot"/>
			<eclipse-build-read name="eclipse-library-release-repository"	    artifact.type="libraries" release.type="release"/>
			<eclipse-build-read name="eclipse-library-milestone-repository"		artifact.type="libraries" release.type="milestone"/>
			<eclipse-build-read name="eclipse-library-snapshot-repository"	    artifact.type="libraries" release.type="snapshot"/>
		</chain>

		<chain name="gemini-lookup" returnFirst="true">
			<resolver ref="integration"/>
			<localrepo name="local"/>
			<eclipse-build-read name="eclipse-bundle-release-repository"	    artifact.type="bundles" release.type="release"/>
			<eclipse-build-read name="eclipse-bundle-milestone-repository"	    artifact.type="bundles" release.type="milestone"/>
			<eclipse-build-read name="eclipse-bundle-snapshot-repository"	    artifact.type="bundles" release.type="snapshot"/>
			<eclipse-build-read name="eclipse-library-release-repository"	    artifact.type="libraries" release.type="release"/>
			<eclipse-build-read name="eclipse-library-milestone-repository"		artifact.type="libraries" release.type="milestone"/>
			<eclipse-build-read name="eclipse-library-snapshot-repository"	    artifact.type="libraries" release.type="snapshot"/>
			<resolver ref="external-lookup"/>
		</chain>

<!-- Publishing repositories -->
		<eclipse-build name="eclipse-remote-bundle-publish"		artifact.type="bundles"		release.type="${adjusted.release.type}"/>
		<eclipse-build name="eclipse-remote-library-publish"	artifact.type="libraries"	release.type="${adjusted.release.type}"/>
		<localrepo name="eclipse-local-bundle-publish"/>
		<localrepo name="eclipse-local-library-publish"/>
	</resolvers>

	<modules>
		<module organisation="org.springframework.*"	name="*"		resolver="third-party-lookup"/>
		<module organisation="com.springsource.*"		name="*"		resolver="third-party-lookup"/>
		<module organisation="org.eclipse.virgo.*"		name="*"		resolver="virgo-lookup"/>
		<module organisation="org.eclipse.gemini.*"		name="*"		resolver="gemini-lookup"/>
		<module organisation="org.eclipse"				name="*"		resolver="eclipse-external-lookup"/>
	</modules>

</ivysettings>
