Package org.apache.ivy.plugins.version
Class AbstractVersionMatcher
- java.lang.Object
-
- org.apache.ivy.plugins.version.AbstractVersionMatcher
-
- All Implemented Interfaces:
IvySettingsAware,VersionMatcher
- Direct Known Subclasses:
ChainVersionMatcher,ExactVersionMatcher,LatestVersionMatcher,MavenTimedSnapshotVersionMatcher,PatternVersionMatcher,SubVersionMatcher,VersionRangeMatcher
public abstract class AbstractVersionMatcher extends java.lang.Object implements VersionMatcher, IvySettingsAware
-
-
Constructor Summary
Constructors Constructor Description AbstractVersionMatcher()AbstractVersionMatcher(java.lang.String name)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaccept(ModuleRevisionId askedMrid, ModuleDescriptor foundMD)Indicates if this version matcher considers that the module found matches the asked one.intcompare(ModuleRevisionId askedMrid, ModuleRevisionId foundMrid, java.util.Comparator<ModuleRevisionId> staticComparator)This method should be overridden in most cases, because it uses the default contract to return 1 when it's not possible to know which revision is greater.java.lang.StringgetName()Returns the version matcher name identifying this version matcherIvySettingsgetSettings()booleanneedModuleDescriptor(ModuleRevisionId askedMrid, ModuleRevisionId foundMrid)Indicates if this VersionMatcher needs module descriptors to determine if a module revision matches the asked one.voidsetName(java.lang.String name)voidsetSettings(IvySettings settings)java.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.ivy.plugins.version.VersionMatcher
accept, isDynamic
-
-
-
-
Method Detail
-
getName
public java.lang.String getName()
Description copied from interface:VersionMatcherReturns the version matcher name identifying this version matcher- Specified by:
getNamein interfaceVersionMatcher- Returns:
- the version matcher name identifying this version matcher
-
setName
public void setName(java.lang.String name)
-
needModuleDescriptor
public boolean needModuleDescriptor(ModuleRevisionId askedMrid, ModuleRevisionId foundMrid)
Description copied from interface:VersionMatcherIndicates if this VersionMatcher needs module descriptors to determine if a module revision matches the asked one. Note that returning true in this method may imply big performance issues.- Specified by:
needModuleDescriptorin interfaceVersionMatcher- Parameters:
askedMrid- ModuleRevisionIdfoundMrid- ModuleRevisionId- Returns:
- boolean
-
accept
public boolean accept(ModuleRevisionId askedMrid, ModuleDescriptor foundMD)
Description copied from interface:VersionMatcherIndicates if this version matcher considers that the module found matches the asked one. This method can be called even needModuleDescriptor(ModuleRevisionId askedMrid, ModuleRevisionId foundMrid) returns false, so it is required to implement it in any case, a usual default implementation being: return accept(askedMrid, foundMD.getResolvedModuleRevisionId());- Specified by:
acceptin interfaceVersionMatcher- Parameters:
askedMrid- ModuleRevisionIdfoundMD- ModuleDescriptor- Returns:
- boolean
-
compare
public int compare(ModuleRevisionId askedMrid, ModuleRevisionId foundMrid, java.util.Comparator<ModuleRevisionId> staticComparator)
This method should be overridden in most cases, because it uses the default contract to return 1 when it's not possible to know which revision is greater.- Specified by:
comparein interfaceVersionMatcher- Parameters:
askedMrid- ModuleRevisionIdfoundMrid- ModuleRevisionIdstaticComparator- Comparator- Returns:
- int
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
getSettings
public IvySettings getSettings()
-
setSettings
public void setSettings(IvySettings settings)
- Specified by:
setSettingsin interfaceIvySettingsAware
-
-