org.apache.ivy.plugins.version

## Class SubVersionMatcher

- java.lang.Object
- - org.apache.ivy.plugins.version.AbstractVersionMatcher
  - - org.apache.ivy.plugins.version.SubVersionMatcher

All Implemented Interfaces:
  IvySettingsAware, VersionMatcher

    public class SubVersionMatcher
    extends AbstractVersionMatcher

### Constructor Summary

Constructors
Constructor and Description
`SubVersionMatcher()`

### Method Summary

Methods
`boolean` `accept(ModuleRevisionId askedMrid, ModuleRevisionId foundMrid)` Indicates if this version matcher considers that the module revision found matches the asked one.
`int` `compare(ModuleRevisionId askedMrid, ModuleRevisionId foundMrid, java.util.Comparator staticComparator)` This method should be overriden in most cases, because it uses the default contract to return 1 when it's not possible to know which revision is greater.
`boolean` `isDynamic(ModuleRevisionId askedMrid)` Indicates if the given asked ModuleRevisionId should be considered as dynamic for the current VersionMatcher or not.

### Methods inherited from class org.apache.ivy.plugins.version.AbstractVersionMatcher

`accept, getName, getSettings, needModuleDescriptor, setName, setSettings, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### SubVersionMatcher

    public SubVersionMatcher()

### Method Detail

#### isDynamic

    public boolean isDynamic(ModuleRevisionId askedMrid)

Description copied from interface: `VersionMatcher`
Indicates if the given asked ModuleRevisionId should be considered as dynamic for the current VersionMatcher or not.

Parameters:
  `askedMrid` - the dependency module revision id as asked by a module
Returns:
  true if this revision is considered as a dynamic one, false otherwise

#### accept

    public boolean accept(ModuleRevisionId askedMrid,
                 ModuleRevisionId foundMrid)

Description copied from interface: `VersionMatcher`
Indicates if this version matcher considers that the module revision found matches the asked one.

Returns:

#### compare

    public int compare(ModuleRevisionId askedMrid,
              ModuleRevisionId foundMrid,
              java.util.Comparator staticComparator)

Description copied from class: `AbstractVersionMatcher`
This method should be overriden 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:
  `compare` in interface `VersionMatcher`
Overrides:
  `compare` in class `AbstractVersionMatcher`
Parameters:
  `askedMrid` - the dynamic revision to compare
  `foundMrid` - the static revision to compare
  `staticComparator` - a comparator which can be used to compare static revisions
Returns:
  0 if it's not possible to know which one is greater, greater than 0 if askedMrid should be considered greater, lower than 0 if it can't be consider greater