rename PluginVersion to Version and move from sonia.scm.plugin to sonia.scm.version

This commit is contained in:
Sebastian Sdorra
2014-02-19 21:39:54 +01:00
parent 5b72a0de18
commit 8b21036c62
5 changed files with 60 additions and 60 deletions

View File

@@ -41,6 +41,7 @@ import sonia.scm.PlatformType;
import sonia.scm.SCMContext;
import sonia.scm.util.SystemUtil;
import sonia.scm.util.Util;
import sonia.scm.version.Version;
//~--- JDK imports ------------------------------------------------------------
@@ -235,7 +236,7 @@ public class PluginCondition implements Cloneable, Serializable
if (Util.isNotEmpty(minVersion) && Util.isNotEmpty(version))
{
supported = (minVersion.equalsIgnoreCase(version)
|| new PluginVersion(version).isNewer(minVersion));
|| new Version(version).isNewer(minVersion));
}
if (supported && Util.isNotEmpty(this.os) && Util.isNotEmpty(os))

View File

@@ -34,7 +34,7 @@ package sonia.scm.upgrade;
//~--- non-JDK imports --------------------------------------------------------
import sonia.scm.plugin.PluginVersion;
import sonia.scm.version.Version;
//~--- JDK imports ------------------------------------------------------------
@@ -59,5 +59,5 @@ public interface UpgradeHandler
* @param newVersion new version
*/
public void doUpgrade(File homeDirectory, File configDirectory,
PluginVersion oldVersion, PluginVersion newVersion);
Version oldVersion, Version newVersion);
}

View File

@@ -31,7 +31,7 @@
package sonia.scm.plugin;
package sonia.scm.version;
//~--- non-JDK imports --------------------------------------------------------
@@ -49,16 +49,15 @@ import java.util.Locale;
/**
* Version object for comparing and parsing versions.
*
* TODO for 2.0: rename to version and move to another package.
*
* @author Sebastian Sdorra
*/
public class PluginVersion implements Comparable<PluginVersion>
public final class Version implements Comparable<Version>
{
/** the logger for PluginVersion */
/** the logger for Version */
private static final Logger logger =
LoggerFactory.getLogger(PluginVersion.class);
LoggerFactory.getLogger(Version.class);
//~--- constructors ---------------------------------------------------------
@@ -68,12 +67,12 @@ public class PluginVersion implements Comparable<PluginVersion>
*
* @param versionString string representation of the version
*/
public PluginVersion(String versionString)
public Version(String versionString)
{
this.unparsedVersion = versionString;
int index = versionString.indexOf('-');
String versionPart = null;
String versionPart;
String qualifierPart = null;
if (index > 0)
@@ -87,7 +86,7 @@ public class PluginVersion implements Comparable<PluginVersion>
}
parseVersionPart(versionPart);
type = PluginVersionType.RELEASE;
type = VersionType.RELEASE;
if (qualifierPart != null)
{
@@ -109,13 +108,13 @@ public class PluginVersion implements Comparable<PluginVersion>
*
* @return version object
*/
public static PluginVersion createVersion(String versionString)
public static Version createVersion(String versionString)
{
PluginVersion version = null;
Version version = null;
try
{
version = new PluginVersion(versionString);
version = new Version(versionString);
}
catch (NumberFormatException ex)
{
@@ -132,7 +131,7 @@ public class PluginVersion implements Comparable<PluginVersion>
* {@inheritDoc}
*/
@Override
public int compareTo(PluginVersion o)
public int compareTo(Version o)
{
Preconditions.checkNotNull(o);
@@ -164,7 +163,7 @@ public class PluginVersion implements Comparable<PluginVersion>
return false;
}
final PluginVersion other = (PluginVersion) obj;
final Version other = (Version) obj;
return Objects.equal(major, other.major)
&& Objects.equal(minor, other.minor)
@@ -246,7 +245,7 @@ public class PluginVersion implements Comparable<PluginVersion>
*
* @return version type
*/
public PluginVersionType getType()
public VersionType getType()
{
return type;
}
@@ -280,7 +279,7 @@ public class PluginVersion implements Comparable<PluginVersion>
*
* @return true if newer
*/
public boolean isNewer(PluginVersion o)
public boolean isNewer(Version o)
{
return compareTo(o) < 0;
}
@@ -295,7 +294,7 @@ public class PluginVersion implements Comparable<PluginVersion>
*/
public boolean isNewer(String versionString)
{
PluginVersion o = PluginVersion.createVersion(versionString);
Version o = Version.createVersion(versionString);
return (o != null) && isNewer(o);
}
@@ -308,7 +307,7 @@ public class PluginVersion implements Comparable<PluginVersion>
*
* @return true if older
*/
public boolean isOlder(PluginVersion o)
public boolean isOlder(Version o)
{
return compareTo(o) > 0;
}
@@ -323,7 +322,7 @@ public class PluginVersion implements Comparable<PluginVersion>
*/
public boolean isOlder(String versionString)
{
PluginVersion o = PluginVersion.createVersion(versionString);
Version o = Version.createVersion(versionString);
return (o != null) && isOlder(o);
}
@@ -386,7 +385,7 @@ public class PluginVersion implements Comparable<PluginVersion>
if (qualifier.length() > 0)
{
for (PluginVersionType versionType : PluginVersionType.values())
for (VersionType versionType : VersionType.values())
{
for (String name : versionType.getNames())
{
@@ -492,7 +491,7 @@ public class PluginVersion implements Comparable<PluginVersion>
private boolean snapshot;
/** version type */
private PluginVersionType type;
private VersionType type;
/** type version */
private int typeVersion = 1;

View File

@@ -31,7 +31,7 @@
package sonia.scm.plugin;
package sonia.scm.version;
//~--- JDK imports ------------------------------------------------------------
@@ -44,7 +44,7 @@ import java.util.List;
*
* @author Sebastian Sdorra
*/
public enum PluginVersionType
public enum VersionType
{
EARLY_ACESS("ea", 0, "early", "earlyaccess"), MILESTONE("M", 1, "milestone"),
ALPHA("alpha", 2), BETA("beta", 3),
@@ -56,7 +56,7 @@ public enum PluginVersionType
*
* @param value
*/
private PluginVersionType(int value)
private VersionType(int value)
{
this(null, value);
}
@@ -70,7 +70,7 @@ public enum PluginVersionType
* @param value
* @param aliases
*/
private PluginVersionType(String id, int value, String... aliases)
private VersionType(String id, int value, String... aliases)
{
this.id = id;
this.value = value;

View File

@@ -31,7 +31,7 @@
package sonia.scm.plugin;
package sonia.scm.version;
//~--- non-JDK imports --------------------------------------------------------
@@ -47,7 +47,7 @@ import java.util.Arrays;
*
* @author Sebastian Sdorra
*/
public class PluginVersionTest
public class VersionTest
{
/**
@@ -57,31 +57,31 @@ public class PluginVersionTest
@Test
public void parseSimpleVersion()
{
PluginVersion v = new PluginVersion("1.0");
Version v = new Version("1.0");
assertTrue(v.getMajor() == 1);
assertTrue(v.getMinor() == 0);
assertTrue(v.getMaintenance() == 0);
assertTrue(v.getPatch() == 0);
assertFalse(v.isSnapshot());
assertTrue(v.getType() == PluginVersionType.RELEASE);
assertTrue(v.getType() == VersionType.RELEASE);
assertEquals(v.getParsedVersion(), "1.0.0");
// test with snapshot
v = new PluginVersion("1.1-SNAPSHOT");
v = new Version("1.1-SNAPSHOT");
assertTrue(v.getMajor() == 1);
assertTrue(v.getMinor() == 1);
assertTrue(v.getMaintenance() == 0);
assertTrue(v.getPatch() == 0);
assertTrue(v.isSnapshot());
assertTrue(v.getType() == PluginVersionType.RELEASE);
assertTrue(v.getType() == VersionType.RELEASE);
assertEquals(v.getParsedVersion(), "1.1.0-SNAPSHOT");
// test with maintenance
v = new PluginVersion("2.3.14");
v = new Version("2.3.14");
assertTrue(v.getMajor() == 2);
assertTrue(v.getMinor() == 3);
assertTrue(v.getMaintenance() == 14);
assertTrue(v.getPatch() == 14);
assertFalse(v.isSnapshot());
assertTrue(v.getType() == PluginVersionType.RELEASE);
assertTrue(v.getType() == VersionType.RELEASE);
assertEquals(v.getParsedVersion(), "2.3.14");
}
@@ -92,23 +92,23 @@ public class PluginVersionTest
@Test
public void parseTypeVersions()
{
PluginVersion v = new PluginVersion("1.0-alpha");
Version v = new Version("1.0-alpha");
assertTrue(v.getMajor() == 1);
assertTrue(v.getMinor() == 0);
assertTrue(v.getMaintenance() == 0);
assertTrue(v.getPatch() == 0);
assertFalse(v.isSnapshot());
assertTrue(v.getType() == PluginVersionType.ALPHA);
assertTrue(v.getType() == VersionType.ALPHA);
assertTrue(v.getTypeVersion() == 1);
assertEquals(v.getParsedVersion(), "1.0.0-alpha1");
// Test release candidate
v = new PluginVersion("2.1.2-RC3");
v = new Version("2.1.2-RC3");
assertTrue(v.getMajor() == 2);
assertTrue(v.getMinor() == 1);
assertTrue(v.getMaintenance() == 2);
assertTrue(v.getPatch() == 2);
assertFalse(v.isSnapshot());
assertTrue(v.getType() == PluginVersionType.RELEASE_CANDIDAT);
assertTrue(v.getType() == VersionType.RELEASE_CANDIDAT);
assertTrue(v.getTypeVersion() == 3);
assertEquals(v.getParsedVersion(), "2.1.2-RC3");
}
@@ -120,17 +120,17 @@ public class PluginVersionTest
@Test
public void testCompareTo()
{
PluginVersion[] versions = new PluginVersion[9];
Version[] versions = new Version[9];
versions[0] = PluginVersion.createVersion("2.3.1-SNAPSHOT");
versions[1] = PluginVersion.createVersion("2.3.1-beta1");
versions[2] = PluginVersion.createVersion("2.3.1-beta2");
versions[3] = PluginVersion.createVersion("2.3.1-M1");
versions[4] = PluginVersion.createVersion("2.3.1-alpha2");
versions[5] = PluginVersion.createVersion("2.3.1-RC1");
versions[6] = PluginVersion.createVersion("2.3.1");
versions[7] = PluginVersion.createVersion("2.3");
versions[8] = PluginVersion.createVersion("2.4.6");
versions[0] = Version.createVersion("2.3.1-SNAPSHOT");
versions[1] = Version.createVersion("2.3.1-beta1");
versions[2] = Version.createVersion("2.3.1-beta2");
versions[3] = Version.createVersion("2.3.1-M1");
versions[4] = Version.createVersion("2.3.1-alpha2");
versions[5] = Version.createVersion("2.3.1-RC1");
versions[6] = Version.createVersion("2.3.1");
versions[7] = Version.createVersion("2.3");
versions[8] = Version.createVersion("2.4.6");
Arrays.sort(versions);
assertEquals(versions[0].getParsedVersion(), "2.4.6");
assertEquals(versions[1].getParsedVersion(), "2.3.1");
@@ -150,9 +150,9 @@ public class PluginVersionTest
@Test
public void testIsNewer()
{
assertFalse(PluginVersion.createVersion("1.0").isNewer("1.0.1"));
assertTrue(PluginVersion.createVersion("1.1").isNewer("1.1-alpha1"));
assertTrue(PluginVersion.createVersion("1.1").isNewer("1.1-RC5"));
assertFalse(Version.createVersion("1.0").isNewer("1.0.1"));
assertTrue(Version.createVersion("1.1").isNewer("1.1-alpha1"));
assertTrue(Version.createVersion("1.1").isNewer("1.1-RC5"));
}
/**
@@ -162,8 +162,8 @@ public class PluginVersionTest
@Test
public void testIsOlder()
{
assertFalse(PluginVersion.createVersion("1.0.1").isOlder("1.0"));
assertTrue(PluginVersion.createVersion("1.1-alpha1").isOlder("1.1"));
assertTrue(PluginVersion.createVersion("1.1-RC5").isOlder("1.1"));
assertFalse(Version.createVersion("1.0.1").isOlder("1.0"));
assertTrue(Version.createVersion("1.1-alpha1").isOlder("1.1"));
assertTrue(Version.createVersion("1.1-RC5").isOlder("1.1"));
}
}