Enum Version
- java.lang.Object
-
- java.lang.Enum<Version>
-
- org.incenp.obofoundry.sssom.model.Version
-
- All Implemented Interfaces:
Serializable,Comparable<Version>
public enum Version extends Enum<Version>
Represents a version of the SSSOM specification.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidenforceCompliance(MappingSet ms)Ensures the provided mapping set is compatible with this version.static VersionfromIRI(String iri)Parses an IRI into the corresponding SSSOM version object.static VersionfromString(String v)Parses a string into the corresponding SSSOM version object.static VersiongetCompliantVersion(MappingSet ms)Gets the minimum version of the SSSOM specification that the given set is compliant with.static VersiongetHighestVersion(Collection<Version> versions)Gets the most recent version of all the versions in the given collection.StringgetIRI()Gets the IRI associated to the enum value.booleanisCompatibleWith(Version target)Checks whether this version is compatible with the indicated version.booleanisCompliant(MappingSet ms)Checks that the given mapping set is compatible with this version.StringtoString()static VersionvalueOf(String name)Returns the enum constant of this type with the specified name.static Version[]values()Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
SSSOM_1_0
public static final Version SSSOM_1_0
SSSOM specification version 1.0.
-
SSSOM_1_1
public static final Version SSSOM_1_1
SSSOM specification version 1.1.
-
UNKNOWN
public static final Version UNKNOWN
Represents an unrecognised version of the specification (possibly, a version more recent than the latest supported by this implementation).
-
-
Field Detail
-
LATEST
public static final Version LATEST
The latest version of the specification currently supported by this implementation.
-
-
Method Detail
-
values
public static Version[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (Version c : Version.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static Version valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum type has no constant with the specified nameNullPointerException- if the argument is null
-
getIRI
public String getIRI()
Gets the IRI associated to the enum value.- Returns:
- The IRI used to represent the enum value.
-
isCompatibleWith
public boolean isCompatibleWith(Version target)
Checks whether this version is compatible with the indicated version.For the purpose of this method, a version A is said to be compatible with another version B if an implementation compliant with B can accept data compliant with A. This is case iff: (1) both A and B have the same major version number, and (2) A’s minor version number is at most as high as B’s.
For example, version 1.0 is compatible with version 1.1; version 1.2 is not compatible with version 1.1.
- Parameters:
target- The version to compare to.- Returns:
Trueif this version is compatible with the target version,falseotherwise.
-
enforceCompliance
public void enforceCompliance(MappingSet ms)
Ensures the provided mapping set is compatible with this version.Any slot or slot value that requires a higher version will be forcibly removed from the set.
- Parameters:
ms- The set that must be made compliant with this version of the specification.
-
isCompliant
public boolean isCompliant(MappingSet ms)
Checks that the given mapping set is compatible with this version.- Parameters:
ms- The set whose compliance must be checked.- Returns:
trueif the set is compatible with this version, orfalseif it requires a higher version.
-
getCompliantVersion
public static Version getCompliantVersion(MappingSet ms)
Gets the minimum version of the SSSOM specification that the given set is compliant with.- Parameters:
ms- The set whose compliance is to be checked.- Returns:
- The earliest version of the SSSOM specification that defines all slots and values required by the set.
-
getHighestVersion
public static Version getHighestVersion(Collection<Version> versions)
Gets the most recent version of all the versions in the given collection.- Parameters:
versions- A collection of versions.- Returns:
- The most recent version, or
SSSOM_1_0if the collection is empty.
-
fromString
public static Version fromString(String v)
Parses a string into the corresponding SSSOM version object.- Parameters:
v- The string to parse.- Returns:
- The corresponding version, or
UNKNOWNif the string does not match any recognised version.
-
-