Package org.apache.ivy.core.module.id
Class ModuleRevisionId
java.lang.Object
org.apache.ivy.util.extendable.UnmodifiableExtendableItem
org.apache.ivy.core.module.id.ModuleRevisionId
- All Implemented Interfaces:
ExtendableItem
Identifies a module in a particular version
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final String
private static final Map<ModuleRevisionId,
WeakReference<ModuleRevisionId>> private static final String
private static final String
private int
private final ModuleId
static final Pattern
Pattern to use to matched mrid text representation.static final Pattern
Same as MRID_PATTERN but using non capturing groups, useful to build larger regexpprivate static final String
private static final String
private final String
(package private) static final String
-
Constructor Summary
ConstructorsModifierConstructorDescriptionModuleRevisionId
(ModuleId moduleId, String revision) ModuleRevisionId
(ModuleId moduleId, String branch, String revision) private
ModuleRevisionId
(ModuleId moduleId, String branch, String revision, Map<String, String> extraAttributes) private
ModuleRevisionId
(ModuleId moduleId, String branch, String revision, Map<String, String> extraAttributes, boolean replaceNullBranchWithDefault) private
-
Method Summary
Modifier and TypeMethodDescriptionstatic ModuleRevisionId
boolean
getName()
int
hashCode()
static ModuleRevisionId
intern
(ModuleRevisionId moduleRevisionId) Returns an intern instance of the given ModuleRevisionId if any, or put the given ModuleRevisionId in a cache of intern instances and returns it.static ModuleRevisionId
newInstance
(String organisation, String name, String revision) static ModuleRevisionId
newInstance
(String organisation, String name, String branch, String revision) static ModuleRevisionId
newInstance
(String organisation, String name, String branch, String revision, Map<String, String> extraAttributes) static ModuleRevisionId
newInstance
(String organisation, String name, String branch, String revision, Map<String, String> extraAttributes, boolean replaceNullBranchWithDefault) static ModuleRevisionId
static ModuleRevisionId
newInstance
(ModuleRevisionId mrid, String rev) static ModuleRevisionId
newInstance
(ModuleRevisionId mrid, String branch, String rev) private static String
normalizeRevision
(String revision) [revision] is a valid revision in maven.static ModuleRevisionId
Parses a module revision id text representation and returns a newModuleRevisionId
instance corresponding to the parsed String.toString()
Methods inherited from class org.apache.ivy.util.extendable.UnmodifiableExtendableItem
getAttribute, getAttributes, getExtraAttribute, getExtraAttributes, getQualifiedExtraAttributes, setExtraAttribute, setStandardAttribute
-
Field Details
-
ENCODE_SEPARATOR
- See Also:
-
ENCODE_PREFIX
- See Also:
-
NULL_ENCODE
- See Also:
-
STRICT_CHARS_PATTERN
- See Also:
-
REV_STRICT_CHARS_PATTERN
- See Also:
-
CACHE
-
MRID_PATTERN
Pattern to use to matched mrid text representation.- See Also:
-
NON_CAPTURING_PATTERN
Same as MRID_PATTERN but using non capturing groups, useful to build larger regexp -
moduleId
-
branch
-
revision
-
hash
private int hash
-
-
Constructor Details
-
ModuleRevisionId
-
ModuleRevisionId
-
ModuleRevisionId
-
ModuleRevisionId
-
ModuleRevisionId
-
-
Method Details
-
parse
Parses a module revision id text representation and returns a newModuleRevisionId
instance corresponding to the parsed String.The result is unspecified if the module doesn't respect strict name conventions.
- Parameters:
mrid
- the text representation of the module (as returned bytoString()
). Must not benull
.- Returns:
- a
ModuleRevisionId
corresponding to the given text representation - Throws:
IllegalArgumentException
- if the given text representation does not match theModuleRevisionId
text representation rules.
-
newInstance
-
newInstance
-
newInstance
public static ModuleRevisionId newInstance(String organisation, String name, String branch, String revision) -
newInstance
-
newInstance
-
newInstance
-
newInstance
-
intern
Returns an intern instance of the given ModuleRevisionId if any, or put the given ModuleRevisionId in a cache of intern instances and returns it.This method should be called on ModuleRevisionId created with one of the constructor to decrease memory footprint.
When using static newInstances methods, this method is already called.
- Parameters:
moduleRevisionId
- the module revision id to intern- Returns:
- an interned ModuleRevisionId
-
getModuleId
-
getName
-
getOrganisation
-
getRevision
-
equals
-
hashCode
public int hashCode() -
toString
-
encodeToString
-
decode
-
getBranch
-
normalizeRevision
[revision] is a valid revision in maven. This method strips the '[' and ']' characters. Cfr. http://docs.codehaus.org/x/IGU
-