public abstract class AbstractVcsDependencyManager<REPOSITORY,VERSION> extends java.lang.Object implements DependencyResolver, DependencyInstaller
| Constructor and Description |
|---|
AbstractVcsDependencyManager(GlobalCacheManager cacheManager,
DependencyRegistry dependencyRegistry) |
| Modifier and Type | Method and Description |
|---|---|
protected abstract ResolvedDependency |
createResolvedDependency(NotationDependency dependency,
java.io.File directory,
REPOSITORY repository,
VERSION version) |
protected abstract VERSION |
determineVersion(REPOSITORY repository,
NotationDependency dependency) |
protected abstract void |
doReset(ResolvedDependency dependency,
java.nio.file.Path globalCachePath) |
protected abstract REPOSITORY |
initRepository(NotationDependency dependency,
java.io.File directory) |
void |
install(ResolvedDependency dependency,
java.io.File targetDirectory)
Copy all necessary files of this
dependency to the targetDirectory. |
protected abstract java.util.Optional<REPOSITORY> |
repositoryMatch(java.io.File directory,
NotationDependency dependency)
Checks if a non-empty directory matches the dependency.
|
protected abstract void |
resetToSpecificVersion(REPOSITORY repository,
VERSION version) |
ResolvedDependency |
resolve(NotationDependency dependency)
Resolves a dependency.
|
protected abstract REPOSITORY |
updateRepository(NotationDependency dependency,
REPOSITORY repository,
java.io.File directory) |
public AbstractVcsDependencyManager(GlobalCacheManager cacheManager, DependencyRegistry dependencyRegistry)
public ResolvedDependency resolve(NotationDependency dependency)
DependencyResolverresolve in interface DependencyResolverdependency - dependency to be resolvedpublic void install(ResolvedDependency dependency, java.io.File targetDirectory)
DependencyInstallerdependency to the targetDirectory.install in interface DependencyInstallerdependency - the dependencytargetDirectory - the target directoryprotected abstract void doReset(ResolvedDependency dependency, java.nio.file.Path globalCachePath)
protected abstract ResolvedDependency createResolvedDependency(NotationDependency dependency, java.io.File directory, REPOSITORY repository, VERSION version)
protected abstract void resetToSpecificVersion(REPOSITORY repository, VERSION version)
protected abstract VERSION determineVersion(REPOSITORY repository, NotationDependency dependency)
protected abstract REPOSITORY updateRepository(NotationDependency dependency, REPOSITORY repository, java.io.File directory)
protected abstract REPOSITORY initRepository(NotationDependency dependency, java.io.File directory)
protected abstract java.util.Optional<REPOSITORY> repositoryMatch(java.io.File directory, NotationDependency dependency)
directory - the directorydependency - the dependencyOptional.of() if matched, Optional.empty() otherwise.