Package com.fetherbrik.gradle.afb.domain
Class VersionInfo
- java.lang.Object
-
- com.fetherbrik.gradle.afb.domain.VersionInfo
-
public final class VersionInfo extends java.lang.ObjectA version according to https://github.com/npm/node-semver#functions, but specific to enabling NPM-like `version {target}` functionality.For example: v1.2.3-RC.4 v1.2.3+103 v1.2.3+20210130T0830 v1.2.3-DEV+20210130T0830
While Semver allows for an arbitrary list of dot-separated pre-release values, `npm version prerelease` just adds a counter at the end of the pre-release chain.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVersionInfo.Builder
-
Field Summary
Fields Modifier and Type Field Description java.lang.Stringfullintmajorjava.lang.Stringmavenjava.util.Optional<java.lang.String>metaintminorintpatchstatic java.util.regex.PatternPRE_RELEASE_OR_META_PATTERNstatic java.lang.StringPRE_RELEASE_OR_META_REGEXjava.util.Optional<java.lang.String>prefixjava.util.Optional<java.lang.String>preRelease
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VersionInfo.Buildercopy()VersionInfonextMajor()VersionInfonextMinor()VersionInfonextPatch()VersionInfo.BuildernextPreRelease()VersionInfo.BuildernextPreRelease(java.lang.String preId)VersionInfo.BuildernextPreRelease(java.lang.String releaseText, int currentCount)
-
-
-
Field Detail
-
PRE_RELEASE_OR_META_REGEX
public static final java.lang.String PRE_RELEASE_OR_META_REGEX
- See Also:
- Constant Field Values
-
PRE_RELEASE_OR_META_PATTERN
public static final java.util.regex.Pattern PRE_RELEASE_OR_META_PATTERN
-
full
public final java.lang.String full
-
maven
public final java.lang.String maven
-
prefix
public final java.util.Optional<java.lang.String> prefix
-
major
public final int major
-
minor
public final int minor
-
patch
public final int patch
-
preRelease
public final java.util.Optional<java.lang.String> preRelease
-
meta
public final java.util.Optional<java.lang.String> meta
-
-
Method Detail
-
copy
public VersionInfo.Builder copy()
-
nextPatch
public VersionInfo nextPatch()
-
nextMinor
public VersionInfo nextMinor()
-
nextMajor
public VersionInfo nextMajor()
-
nextPreRelease
public VersionInfo.Builder nextPreRelease(java.lang.String preId)
-
nextPreRelease
public VersionInfo.Builder nextPreRelease(java.lang.String releaseText, int currentCount)
-
nextPreRelease
public VersionInfo.Builder nextPreRelease()
-
-