All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.gravitee.apim.common.mapper.HttpClientOptionsMapperImpl Maven / Gradle / Ivy

There is a newer version: 4.6.0
Show newest version
package io.gravitee.apim.common.mapper;

import io.gravitee.definition.model.v4.http.HttpClientOptions;
import io.gravitee.definition.model.v4.http.ProtocolVersion;
import io.gravitee.node.vertx.client.http.VertxHttpClientOptions;
import io.gravitee.node.vertx.client.http.VertxHttpProtocolVersion;
import javax.annotation.processing.Generated;

@Generated(
    value = "org.mapstruct.ap.MappingProcessor",
    date = "2024-10-24T18:11:40+0000",
    comments = "version: 1.6.0.Beta2, compiler: javac, environment: Java 17.0.8 (Eclipse Adoptium)"
)
public class HttpClientOptionsMapperImpl implements HttpClientOptionsMapper {

    @Override
    public VertxHttpClientOptions map(HttpClientOptions httpClientOptions) {
        if ( httpClientOptions == null ) {
            return null;
        }

        VertxHttpClientOptions.VertxHttpClientOptionsBuilder vertxHttpClientOptions = VertxHttpClientOptions.builder();

        vertxHttpClientOptions.http2MultiplexingLimit( httpClientOptions.getHttp2MultiplexingLimit() );
        vertxHttpClientOptions.idleTimeout( httpClientOptions.getIdleTimeout() );
        vertxHttpClientOptions.keepAliveTimeout( httpClientOptions.getKeepAliveTimeout() );
        vertxHttpClientOptions.connectTimeout( httpClientOptions.getConnectTimeout() );
        vertxHttpClientOptions.keepAlive( httpClientOptions.isKeepAlive() );
        vertxHttpClientOptions.readTimeout( httpClientOptions.getReadTimeout() );
        vertxHttpClientOptions.pipelining( httpClientOptions.isPipelining() );
        vertxHttpClientOptions.maxConcurrentConnections( httpClientOptions.getMaxConcurrentConnections() );
        vertxHttpClientOptions.useCompression( httpClientOptions.isUseCompression() );
        vertxHttpClientOptions.clearTextUpgrade( httpClientOptions.isClearTextUpgrade() );
        vertxHttpClientOptions.version( protocolVersionToVertxHttpProtocolVersion( httpClientOptions.getVersion() ) );

        return vertxHttpClientOptions.build();
    }

    protected VertxHttpProtocolVersion protocolVersionToVertxHttpProtocolVersion(ProtocolVersion protocolVersion) {
        if ( protocolVersion == null ) {
            return null;
        }

        VertxHttpProtocolVersion vertxHttpProtocolVersion;

        switch ( protocolVersion ) {
            case HTTP_1_1: vertxHttpProtocolVersion = VertxHttpProtocolVersion.HTTP_1_1;
            break;
            case HTTP_2: vertxHttpProtocolVersion = VertxHttpProtocolVersion.HTTP_2;
            break;
            default: throw new IllegalArgumentException( "Unexpected enum constant: " + protocolVersion );
        }

        return vertxHttpProtocolVersion;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy