Switched to new semver mustache template.

This commit is contained in:
Erik C. Thauvin 2017-04-22 10:03:12 -07:00
parent 492bf96e02
commit 8a8de137d1
4 changed files with 160 additions and 283 deletions

View file

@ -13,45 +13,20 @@ import java.time.*;
* Annotation Processor</a>
*/
public final class ReleaseInfo {
private final static String buildmeta = "018";
private final static LocalDateTime date =
LocalDateTime.ofInstant(Instant.ofEpochMilli(1491238266337L), ZoneId.systemDefault());
private final static int major = 0;
private final static int minor = 7;
private final static int patch = 0;
private final static String prerelease = "beta";
private final static String project = "mobibot";
private final static String DEFAULT_PRERELEASE_PREFIX = "-";
private final static String DEFAULT_BUILDMETA_PREFIX = "+";
public final static String project = "mobibot";
public final static LocalDateTime buildDate =
LocalDateTime.ofInstant(Instant.ofEpochMilli(1492880264977L), ZoneId.systemDefault());
public final static int major = 0;
public final static int minor = 7;
public final static int patch = 1;
public final static String preRelease = "beta";
public final static String buildMeta = "018";
/**
* Disables the default constructor.
*
* @throws UnsupportedOperationException If the constructor is called.
*/
private ReleaseInfo()
throws UnsupportedOperationException {
throw new UnsupportedOperationException("Illegal constructor call.");
}
/**
* Returns the build date.
*
* @return The build date.
*/
public static LocalDateTime getBuildDate() {
return date;
}
/**
* Returns the project name.
*
* @return The project name, if any.
*/
public static String getProject() {
return project;
}
/**
* Returns the full version string.
* The full version string.
* <p>
* Formatted as:
* <blockquote>
@ -65,94 +40,65 @@ public final class ReleaseInfo {
* <li><code>1.0.0+20160124144700</code></li>
* <li><code>1.0.0-alpha+001</code></li>
* </ul>
*
* @return The version string.
*/
public static String getVersion() {
return Integer.toString(getMajor()) + '.'
+ Integer.toString(getMinor()) + '.'
+ Integer.toString(getPatch())
+ getPreRelease(true) + getBuildMetadata(true);
public final static String version = Integer.toString(major) + '.'
+ Integer.toString(minor) + '.'
+ Integer.toString(patch)
+ preReleaseWithPrefix() + buildMetaWithPrefix();
/**
* Disables the default constructor.
*
* @throws UnsupportedOperationException If the constructor is called.
*/
private ReleaseInfo()
throws UnsupportedOperationException {
throw new UnsupportedOperationException("Illegal constructor call.");
}
/**
* Returns the major version.
* Returns the build metadata with default prefix.
*
* @return The major version.
* @return The build metadata, if any.
*/
public static int getMajor() {
return major;
}
/**
* Returns the minor version.
*
* @return The minor version.
*/
public static int getMinor() {
return minor;
}
/**
* Returns the patch version.
*
* @return The patch version.
*/
public static int getPatch() {
return patch;
}
/**
* Returns the pre-release version.
*
* @param isHyphen Prepend a hyphen, if <code>true</code>.
* @return The pre-release version, if any.
*/
public static String getPreRelease(final boolean isHyphen) {
if (prerelease.length() > 0) {
if (isHyphen) {
return '-' + prerelease;
} else {
return prerelease;
}
}
return "";
}
/**
* Returns the pre-release version.
*
* @return The pre-release version, if any.
*/
public static String getPreRelease() {
return getPreRelease(false);
public static String buildMetaWithPrefix() {
return buildMetaWithPrefix(DEFAULT_PRERELEASE_PREFIX);
}
/**
* Returns the build metadata.
*
* @param isPlus Prepend a plus sign, if <code>true</code>.
* @param prefix Prefix to prepend.
* @return The build metadata, if any.
*/
public static String getBuildMetadata(final boolean isPlus) {
if (buildmeta.length() > 0) {
if (isPlus) {
return '+' + buildmeta;
} else {
return buildmeta;
}
public static String buildMetaWithPrefix(final String prefix) {
if (buildMeta.length() > 0 && prefix.length() > 0) {
return prefix + buildMeta;
} else {
return buildMeta;
}
return "";
}
/**
* Returns the build metadata.
* Returns the pre-release version with default prefix.
*
* @return The build metadata, if any.
* @return The pre-release version, if any.
*/
public static String getBuildMetadata() {
return getBuildMetadata(false);
public static String preReleaseWithPrefix() {
return preReleaseWithPrefix(DEFAULT_PRERELEASE_PREFIX);
}
/**
* Returns the pre-release version.
*
* @param prefix The prefix to prepend.
* @return The pre-release version, if any.
*/
public static String preReleaseWithPrefix(final String prefix) {
if (preRelease.length() > 0 && prefix.length() > 0) {
return prefix + preRelease;
} else {
return preRelease;
}
}
}

View file

@ -69,7 +69,7 @@ public class Mobibot extends PircBot {
// The info strings.
private static final String[] INFO_STRS = {
ReleaseInfo.getProject() + " v" + ReleaseInfo.getVersion() + " by Erik C. Thauvin (erik@thauvin.net)",
ReleaseInfo.project + " v" + ReleaseInfo.version + " by Erik C. Thauvin (erik@thauvin.net)",
"http://www.mobitopia.org/mobibot/"
};
@ -100,9 +100,9 @@ public class Mobibot extends PircBot {
// The version strings.
private static final String[] VERSION_STRS = {
"Version: "
+ ReleaseInfo.getVersion()
+ ReleaseInfo.version
+ " ("
+ Utils.isoLocalDate(ReleaseInfo.getBuildDate()) + ')',
+ Utils.isoLocalDate(ReleaseInfo.buildDate) + ')',
"Platform: "
+ System.getProperty("os.name")
+ " ("