Class FileCacheResolver
java.lang.Object
software.amazon.smithy.cli.dependencies.FileCacheResolver
- All Implemented Interfaces:
DependencyResolver
A resolver that loads and caches resolved artifacts to a JSON file if
the cache is fresh and resolved artifacts haven't been updated after a
given reference point in time.
-
Nested Class Summary
Nested classes/interfaces inherited from interface software.amazon.smithy.cli.dependencies.DependencyResolver
DependencyResolver.Factory
-
Constructor Summary
ConstructorDescriptionFileCacheResolver
(File location, long referenceTimeInMillis, DependencyResolver delegate) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addDependency
(String coordinates) Add a dependency.void
addRepository
(MavenRepository repository) Add a Maven repository.resolve()
Resolves artifacts for the configured dependencies.
-
Constructor Details
-
FileCacheResolver
- Parameters:
location
- The location to the cache.referenceTimeInMillis
- Invalidate cache items if this time is newer than the cache item time.delegate
- Resolver to delegate to when dependencies aren't cached.
-
-
Method Details
-
addRepository
Description copied from interface:DependencyResolver
Add a Maven repository.- Specified by:
addRepository
in interfaceDependencyResolver
- Parameters:
repository
- Repository to add.
-
addDependency
Description copied from interface:DependencyResolver
Add a dependency.Coordinates must be given a group ID, artifact ID, and version in the form of "groupId:artifactId:version". Coordinates support Maven dependency ranges. Coordinates do not support LATEST, SNAPSHOT, latest-release, latest.*, or Gradle style "+" syntax.
- Specified by:
addDependency
in interfaceDependencyResolver
- Parameters:
coordinates
- Dependency coordinates to add.
-
resolve
Description copied from interface:DependencyResolver
Resolves artifacts for the configured dependencies.- Specified by:
resolve
in interfaceDependencyResolver
- Returns:
- Returns the resolved artifacts, including file on disk and coordinates.
-