private static int parseMonth()

in sdk/core/azure-core/src/main/java/com/azure/android/core/util/DateTimeRfc1123.java [120:155]


    private static int parseMonth(final CharSequence date, final int beginIndex) {
        switch (date.charAt(beginIndex)) {
            case 'J':
                // Jan, Jun, Jul
                switch (date.charAt(beginIndex + 1)) {
                    case 'a': return 1; // Jan
                    case 'u':
                        switch (date.charAt(beginIndex + 2)) {
                            case 'n': return 6; // Jun
                            case 'l': return 7; // Jul
                            default: throw new IllegalArgumentException("Unknown month " + date);
                        }
                    default: throw LOGGER.logExceptionAsError(new IllegalArgumentException("Unknown month " + date));
                }
            case 'F': return 2; // Feb
            case 'M':
                // Mar, May
                switch (date.charAt(beginIndex + 2)) {
                    case 'r': return 3; // Mar
                    case 'y': return 5; // May
                    default: throw LOGGER.logExceptionAsError(new IllegalArgumentException("Unknown month " + date));
                }
            case 'A':
                // Apr, Aug
                switch (date.charAt(beginIndex + 2)) {
                    case 'r': return 4; // Apr
                    case 'g': return 8; // Aug
                    default: throw LOGGER.logExceptionAsError(new IllegalArgumentException("Unknown month " + date));
                }
            case 'S': return 9; //Sep
            case 'O': return 10; // Oct
            case 'N': return 11; // Nov
            case 'D': return 12; // Dec
            default: throw LOGGER.logExceptionAsError(new IllegalArgumentException("Unknown month " + date));
        }
    }