@Nullable
    private ChannelAcquisitionFuture getPendingAcquisition(SessionProtocol desiredProtocol, PoolKey key) {
        assert !desiredProtocol.isExplicitHttp1() : "desiredProtocol: " + desiredProtocol;
        final ChannelAcquisitionFuture future = pendingAcquisitions[desiredProtocol.ordinal()].get(key);
        if (future == null) {
            // Try to find a pending acquisition from the explicit protocols.
            switch (desiredProtocol) {
                case HTTP:
                    return pendingAcquisitions[SessionProtocol.H2C.ordinal()].get(key);
                case HTTPS:
                    return pendingAcquisitions[SessionProtocol.H2.ordinal()].get(key);
            }
        }
        return future;
    }
Returns an array whose index signifies {@link SessionProtocol#ordinal()}. Similar to {@link EnumMap}.
core/src/main/java/com/linecorp/armeria/client/HttpChannelPool.java