@ValueMapping strips spaces from source

Expected behavior

It seems like @ValueMapping strips spaces from the source. A single spaces is honored while multiple spaces seem to reduced to a single entry.

Given:

    @ValueMapping(source = "  PR", target = "PR")
    @ValueMapping(source = "EP  ", target = "EP")
    @ValueMapping(source = "  WE  ", target = "WE")
    @ValueMapping(source = MappingConstants.ANY_REMAINING, target = MappingConstants.THROW_EXCEPTION)
    OrderStatus fromOrderSelectionOutput(String orderStatus);

I expected the following mapping to be created:

    @Override
    public OrderStatus fromOrderSelectionOutput(String orderStatus) {
        if ( orderStatus == null ) {
            return null;
        }

        OrderStatus orderStatus1;

        switch ( orderStatus ) {
            case "  PR": orderStatus1 = OrderStatus.PR;
            break;
            case "EP  ": orderStatus1 = OrderStatus.EP;
            break;
            case "  WE  ": orderStatus1 = OrderStatus.WE;
            break;
            case "ABGE": orderStatus1 = OrderStatus.ABGE;
            break;
            case "AUFG": orderStatus1 = OrderStatus.AUFG;
            break;
            case "BZEP": orderStatus1 = OrderStatus.BZEP;
            break;
            case "EP": orderStatus1 = OrderStatus.EP;
            break;
            case "FEST": orderStatus1 = OrderStatus.FEST;
            break;
            case "GEBU": orderStatus1 = OrderStatus.GEBU;
            break;
            case "PR": orderStatus1 = OrderStatus.PR;
            break;
            case "WE": orderStatus1 = OrderStatus.WE;
            break;
            default: throw new IllegalArgumentException( "Unexpected enum constant: " + orderStatus );
        }

        return orderStatus1;
    }

Notice the double spaces. (" PR", "ER ", " WE ").

Actual behavior

But the following mapping is created which reduces the double spaces to single spaces.

    @Override
    public OrderStatus fromOrderSelectionOutput(String orderStatus) {
        if ( orderStatus == null ) {
            return null;
        }

        OrderStatus orderStatus1;

        switch ( orderStatus ) {
            case " PR": orderStatus1 = OrderStatus.PR;
            break;
            case "EP ": orderStatus1 = OrderStatus.EP;
            break;
            case " WE ": orderStatus1 = OrderStatus.WE;
            break;
            case "ABGE": orderStatus1 = OrderStatus.ABGE;
            break;
            case "AUFG": orderStatus1 = OrderStatus.AUFG;
            break;
            case "BZEP": orderStatus1 = OrderStatus.BZEP;
            break;
            case "EP": orderStatus1 = OrderStatus.EP;
            break;
            case "FEST": orderStatus1 = OrderStatus.FEST;
            break;
            case "GEBU": orderStatus1 = OrderStatus.GEBU;
            break;
            case "PR": orderStatus1 = OrderStatus.PR;
            break;
            case "WE": orderStatus1 = OrderStatus.WE;
            break;
            default: throw new IllegalArgumentException( "Unexpected enum constant: " + orderStatus );
        }

        return orderStatus1;
    }

Steps to reproduce the problem

See above.

MapStruct Version

1.5.3.Final