org.apache.ivy.plugins.resolver
Class IvyRepResolver

java.lang.Object
  extended by org.apache.ivy.plugins.resolver.AbstractResolver
      extended by org.apache.ivy.plugins.resolver.BasicResolver
          extended by org.apache.ivy.plugins.resolver.AbstractPatternsBasedResolver
              extended by org.apache.ivy.plugins.resolver.RepositoryResolver
                  extended by org.apache.ivy.plugins.resolver.URLResolver
                      extended by org.apache.ivy.plugins.resolver.IvyRepResolver
All Implemented Interfaces:
Validatable, DependencyResolver, HasLatestStrategy

public class IvyRepResolver
extends URLResolver

IvyRepResolver is a resolver which can be used to resolve dependencies found in the ivy official repository for ivy files and ibiblio maven repository for the artifacts, or similar repositories. For more flexibility with url and patterns, see URLResolver.


Field Summary
static java.lang.String DEFAULT_IVYPATTERN
           
static java.lang.String DEFAULT_IVYROOT
           
 
Fields inherited from class org.apache.ivy.plugins.resolver.BasicResolver
DATE_FORMAT, DESCRIPTOR_OPTIONAL, DESCRIPTOR_REQUIRED
 
Constructor Summary
IvyRepResolver()
           
 
Method Summary
 DownloadReport download(Artifact[] artifacts, DownloadOptions options)
          Download artifacts with specified DownloadOptions.
 boolean exists(Artifact artifact)
          Returns true if the given artifact can be located by this resolver and actually exist.
protected  ResolvedResource findArtifactRef(Artifact artifact, java.util.Date date)
           
 java.util.List getArtifactPatterns()
           
 java.lang.String getArtpattern()
           
 java.lang.String getArtroot()
           
 ResolvedModuleRevision getDependency(DependencyDescriptor dd, ResolveData data)
          Resolve a module by id, getting its module descriptor and resolving the revision if it's a latest one (i.e. a revision uniquely identifying the revision of a module in the current environment - If this revision is not able to identify uniquelely the revision of the module outside of the current environment, then the resolved revision must begin by ##)
 java.lang.String getIvypattern()
           
 java.util.List getIvyPatterns()
           
 java.lang.String getIvyroot()
           
 java.lang.String getTypeName()
           
 ModuleEntry[] listModules(OrganisationEntry org)
           
 OrganisationEntry[] listOrganisations()
           
 RevisionEntry[] listRevisions(ModuleEntry mod)
           
 ArtifactOrigin locate(Artifact artifact)
          Default implementation actually download the artifact Subclasses should overwrite this to avoid the download
 void publish(Artifact artifact, java.io.File src)
           
 void setArtpattern(java.lang.String pattern)
           
 void setArtroot(java.lang.String root)
           
 void setIvypattern(java.lang.String pattern)
           
 void setIvyroot(java.lang.String root)
          Sets the root of the maven like repository.
 void setM2compatible(boolean m2compatible)
           
 
Methods inherited from class org.apache.ivy.plugins.resolver.RepositoryResolver
dumpSettings, exist, findResourceUsingPattern, findTokenValues, get, getDestination, getRepository, getResource, isAlwaysCheckExactRevision, listResources, listTokenValues, publish, put, putChecksum, putSignature, setAlwaysCheckExactRevision, setName, setRepository, setSettings, setSigner
 
Methods inherited from class org.apache.ivy.plugins.resolver.AbstractPatternsBasedResolver
addArtifactPattern, addConfiguredArtifact, addConfiguredIvy, addIvyPattern, convertM2IdForResourceSearch, convertM2OrganizationForResourceSearch, convertM2TokenValuesForResourceSearch, filterNames, findArtifactNames, findIvyFileRef, findIvyNames, findNames, findResource, findResourceUsingPatterns, getModuleDescriptorExtension, isM2compatible, listTokenValues, setArtifactPatterns, setIvyPatterns
 
Methods inherited from class org.apache.ivy.plugins.resolver.BasicResolver
acceptLatest, clearArtifactAttempts, clearIvyAttempts, download, findFirstArtifactRef, getAndCheck, getArtifactRef, getChecksumAlgorithms, getDefaultRMDParser, getPublicationDate, getRMDParser, getWorkspaceName, isAllownomd, isCheckconsistency, isEnvDependent, isForce, listTokenValues, logArtifactAttempt, logAttempt, logIvyAttempt, parse, reportFailure, reportFailure, setAllownomd, setCheckconsistency, setChecksums, setDescriptor, setEnvDependent, setForce, setWorkspaceName, shouldReturnResolvedModule, toString
 
Methods inherited from class org.apache.ivy.plugins.resolver.AbstractResolver
abortPublishTransaction, beginPublishTransaction, checkInterrupted, checkLatest, commitPublishTransaction, doValidate, findModuleInCache, findModuleInCache, fromSystem, fromSystem, getCacheDownloadOptions, getCacheOptions, getChangingMatcherName, getChangingPattern, getDownloadOptions, getEventManager, getLatest, getLatestStrategy, getName, getNamespace, getParserSettings, getRepositoryCacheManager, getSettings, getSystemNode, hidePassword, isAfter, isValidate, saveModuleRevisionIfNeeded, setCache, setChangingMatcher, setChangingPattern, setCheckmodified, setEventManager, setLatest, setLatestStrategy, setNamespace, setRepositoryCacheManager, setValidate, toSystem, toSystem, toSystem, toSystem, toSystem, toSystem, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEFAULT_IVYPATTERN

public static final java.lang.String DEFAULT_IVYPATTERN
See Also:
Constant Field Values

DEFAULT_IVYROOT

public static final java.lang.String DEFAULT_IVYROOT
See Also:
Constant Field Values
Constructor Detail

IvyRepResolver

public IvyRepResolver()
Method Detail

getIvypattern

public java.lang.String getIvypattern()

setIvypattern

public void setIvypattern(java.lang.String pattern)

getIvyroot

public java.lang.String getIvyroot()

setIvyroot

public void setIvyroot(java.lang.String root)
Sets the root of the maven like repository. The maven like repository is necessarily an http repository.

Parameters:
root - the root of the maven like repository
Throws:
java.lang.IllegalArgumentException - if root does not start with "http://"

setM2compatible

public void setM2compatible(boolean m2compatible)
Overrides:
setM2compatible in class AbstractPatternsBasedResolver

publish

public void publish(Artifact artifact,
                    java.io.File src)

getArtroot

public java.lang.String getArtroot()

getArtpattern

public java.lang.String getArtpattern()

setArtpattern

public void setArtpattern(java.lang.String pattern)

setArtroot

public void setArtroot(java.lang.String root)

listOrganisations

public OrganisationEntry[] listOrganisations()
Specified by:
listOrganisations in interface DependencyResolver
Overrides:
listOrganisations in class BasicResolver

listModules

public ModuleEntry[] listModules(OrganisationEntry org)
Specified by:
listModules in interface DependencyResolver
Overrides:
listModules in class BasicResolver

listRevisions

public RevisionEntry[] listRevisions(ModuleEntry mod)
Specified by:
listRevisions in interface DependencyResolver
Overrides:
listRevisions in class BasicResolver

getTypeName

public java.lang.String getTypeName()
Overrides:
getTypeName in class URLResolver

getDependency

public ResolvedModuleRevision getDependency(DependencyDescriptor dd,
                                            ResolveData data)
                                     throws java.text.ParseException
Description copied from interface: DependencyResolver
Resolve a module by id, getting its module descriptor and resolving the revision if it's a latest one (i.e. a revision uniquely identifying the revision of a module in the current environment - If this revision is not able to identify uniquelely the revision of the module outside of the current environment, then the resolved revision must begin by ##)

Specified by:
getDependency in interface DependencyResolver
Overrides:
getDependency in class BasicResolver
Throws:
java.text.ParseException

findArtifactRef

protected ResolvedResource findArtifactRef(Artifact artifact,
                                           java.util.Date date)
Overrides:
findArtifactRef in class AbstractPatternsBasedResolver

download

public DownloadReport download(Artifact[] artifacts,
                               DownloadOptions options)
Description copied from interface: DependencyResolver
Download artifacts with specified DownloadOptions.

The resolver will always make a best effort, and do not stop when an artifact is not available. It rather continue to attempt to download other requested artifacts, and report what has been done in the returned DownloadReport.

The returned DownloadReport is never null, and always contain an ArtifactDownloadReport for each requested Artifact.

Specified by:
download in interface DependencyResolver
Overrides:
download in class RepositoryResolver
Parameters:
artifacts - an array of artifacts to download. Must not be null.
options - options to apply for this download. Must not be null.
Returns:
a DownloadReport with details about each Artifact download.

exists

public boolean exists(Artifact artifact)
Description copied from interface: DependencyResolver
Returns true if the given artifact can be located by this resolver and actually exist.

Specified by:
exists in interface DependencyResolver
Overrides:
exists in class BasicResolver
Parameters:
artifact - the artifact which should be tested.
Returns:
true if the given artifact can be located by this resolver and actually exist.

locate

public ArtifactOrigin locate(Artifact artifact)
Description copied from class: AbstractResolver
Default implementation actually download the artifact Subclasses should overwrite this to avoid the download

Specified by:
locate in interface DependencyResolver
Overrides:
locate in class BasicResolver
Parameters:
artifact - the artifact which should be located
Returns:
the artifact location, or null if it can't be located by this resolver or doesn't exist.

getIvyPatterns

public java.util.List getIvyPatterns()
Overrides:
getIvyPatterns in class AbstractPatternsBasedResolver

getArtifactPatterns

public java.util.List getArtifactPatterns()
Overrides:
getArtifactPatterns in class AbstractPatternsBasedResolver