private static int readReleaseVersionMajor()

in log4j-changelog/src/main/java/org/apache/logging/log4j/changelog/releaser/ChangelogReleaserArgs.java [55:76]


    private static int readReleaseVersionMajor(final String releaseVersion, final Pattern versionPattern) {

        // Match the version string
        final Matcher releaseVersionMatcher = versionPattern.matcher(releaseVersion);
        if (!releaseVersionMatcher.matches()) {
            final String message = String.format(
                    "provided version `%s` does not match the expected pattern `%s`",
                    releaseVersion, versionPattern);
            throw new IllegalArgumentException(message);
        }

        // Extract the version major
        final String releaseVersionMajorString = releaseVersionMatcher.group("major");
        if (releaseVersionMajorString == null) {
            final String message = String.format(
                    "was expecting version pattern `%s` to provide a `major`-named group matching against the given version `%s`",
                    versionPattern, releaseVersion);
            throw new IllegalArgumentException(message);
        }
        return Integer.parseInt(releaseVersionMajorString);

    }