Set up Ivy cache for launcher to properly handle SNAPSHOTs.

This commit is contained in:
Mark Harrah 2009-10-24 09:14:32 -04:00
parent dc7da2dc98
commit bb02f60e5e
1 changed files with 8 additions and 1 deletions

View File

@ -18,6 +18,7 @@ import core.resolve.{ResolveEngine, ResolveOptions}
import core.retrieve.{RetrieveEngine, RetrieveOptions}
import core.sort.SortEngine
import core.settings.IvySettings
import plugins.matcher.PatternMatcher
import plugins.resolver.{ChainResolver, FileSystemResolver, IBiblioResolver, URLResolver}
import util.{DefaultMessageLogger, Message}
@ -153,10 +154,16 @@ final class Update(config: UpdateConfiguration)
newDefault.setName("redefined-public")
if(repositories.isEmpty) error("No repositories defined.")
repositories.foreach(repo => newDefault.add(toIvyRepository(settings, repo)))
onDefaultRepositoryCacheManager(settings)(_.setUseOrigin(true))
onDefaultRepositoryCacheManager(settings)(configureCache)
settings.addResolver(newDefault)
settings.setDefaultResolver(newDefault.getName)
}
private def configureCache(manager: DefaultRepositoryCacheManager)
{
manager.setUseOrigin(true)
manager.setChangingMatcher(PatternMatcher.REGEXP)
manager.setChangingPattern(".*-SNAPSHOT")
}
private def toIvyRepository(settings: IvySettings, repo: Repository) =
{
import Repository.{Ivy, Maven, Predefined}