Interface HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder

  • All Superinterfaces:
    org.apache.camel.builder.EndpointProducerBuilder, org.apache.camel.EndpointProducerResolver
    Enclosing interface:
    HttpEndpointBuilderFactory

    public static interface HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder
    extends org.apache.camel.builder.EndpointProducerBuilder
    Advanced builder for endpoint for the HTTP component.
    • Method Detail

      • headerFilterStrategy

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder headerFilterStrategy​(org.apache.camel.spi.HeaderFilterStrategy headerFilterStrategy)
        To use a custom HeaderFilterStrategy to filter header to and from Camel message. The option is a: <code>org.apache.camel.spi.HeaderFilterStrategy</code> type. Group: common (advanced)
        Parameters:
        headerFilterStrategy - the value to set
        Returns:
        the dsl builder
      • headerFilterStrategy

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder headerFilterStrategy​(String headerFilterStrategy)
        To use a custom HeaderFilterStrategy to filter header to and from Camel message. The option will be converted to a <code>org.apache.camel.spi.HeaderFilterStrategy</code> type. Group: common (advanced)
        Parameters:
        headerFilterStrategy - the value to set
        Returns:
        the dsl builder
      • clearExpiredCookies

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder clearExpiredCookies​(boolean clearExpiredCookies)
        Whether to clear expired cookies before sending the HTTP request. This ensures the cookies store does not keep growing by adding new cookies which is newer removed when they are expired. If the component has disabled cookie management then this option is disabled too. The option is a: <code>boolean</code> type. Default: true Group: producer (advanced)
        Parameters:
        clearExpiredCookies - the value to set
        Returns:
        the dsl builder
      • clearExpiredCookies

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder clearExpiredCookies​(String clearExpiredCookies)
        Whether to clear expired cookies before sending the HTTP request. This ensures the cookies store does not keep growing by adding new cookies which is newer removed when they are expired. If the component has disabled cookie management then this option is disabled too. The option will be converted to a <code>boolean</code> type. Default: true Group: producer (advanced)
        Parameters:
        clearExpiredCookies - the value to set
        Returns:
        the dsl builder
      • cookieHandler

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder cookieHandler​(org.apache.camel.http.base.cookie.CookieHandler cookieHandler)
        Configure a cookie handler to maintain a HTTP session. The option is a: <code>org.apache.camel.http.base.cookie.CookieHandler</code> type. Group: producer (advanced)
        Parameters:
        cookieHandler - the value to set
        Returns:
        the dsl builder
      • cookieHandler

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder cookieHandler​(String cookieHandler)
        Configure a cookie handler to maintain a HTTP session. The option will be converted to a <code>org.apache.camel.http.base.cookie.CookieHandler</code> type. Group: producer (advanced)
        Parameters:
        cookieHandler - the value to set
        Returns:
        the dsl builder
      • cookieStore

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder cookieStore​(org.apache.http.client.CookieStore cookieStore)
        To use a custom CookieStore. By default the BasicCookieStore is used which is an in-memory only cookie store. Notice if bridgeEndpoint=true then the cookie store is forced to be a noop cookie store as cookie shouldn't be stored as we are just bridging (eg acting as a proxy). If a cookieHandler is set then the cookie store is also forced to be a noop cookie store as cookie handling is then performed by the cookieHandler. The option is a: <code>org.apache.http.client.CookieStore</code> type. Group: producer (advanced)
        Parameters:
        cookieStore - the value to set
        Returns:
        the dsl builder
      • cookieStore

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder cookieStore​(String cookieStore)
        To use a custom CookieStore. By default the BasicCookieStore is used which is an in-memory only cookie store. Notice if bridgeEndpoint=true then the cookie store is forced to be a noop cookie store as cookie shouldn't be stored as we are just bridging (eg acting as a proxy). If a cookieHandler is set then the cookie store is also forced to be a noop cookie store as cookie handling is then performed by the cookieHandler. The option will be converted to a <code>org.apache.http.client.CookieStore</code> type. Group: producer (advanced)
        Parameters:
        cookieStore - the value to set
        Returns:
        the dsl builder
      • copyHeaders

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder copyHeaders​(boolean copyHeaders)
        If this option is true then IN exchange headers will be copied to OUT exchange headers according to copy strategy. Setting this to false, allows to only include the headers from the HTTP response (not propagating IN headers). The option is a: <code>boolean</code> type. Default: true Group: producer (advanced)
        Parameters:
        copyHeaders - the value to set
        Returns:
        the dsl builder
      • copyHeaders

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder copyHeaders​(String copyHeaders)
        If this option is true then IN exchange headers will be copied to OUT exchange headers according to copy strategy. Setting this to false, allows to only include the headers from the HTTP response (not propagating IN headers). The option will be converted to a <code>boolean</code> type. Default: true Group: producer (advanced)
        Parameters:
        copyHeaders - the value to set
        Returns:
        the dsl builder
      • customHostHeader

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder customHostHeader​(String customHostHeader)
        To use custom host header for producer. When not set in query will be ignored. When set will override host header derived from url. The option is a: <code>java.lang.String</code> type. Group: producer (advanced)
        Parameters:
        customHostHeader - the value to set
        Returns:
        the dsl builder
      • deleteWithBody

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder deleteWithBody​(boolean deleteWithBody)
        Whether the HTTP DELETE should include the message body or not. By default HTTP DELETE do not include any HTTP body. However in some rare cases users may need to be able to include the message body. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        deleteWithBody - the value to set
        Returns:
        the dsl builder
      • deleteWithBody

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder deleteWithBody​(String deleteWithBody)
        Whether the HTTP DELETE should include the message body or not. By default HTTP DELETE do not include any HTTP body. However in some rare cases users may need to be able to include the message body. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        deleteWithBody - the value to set
        Returns:
        the dsl builder
      • getWithBody

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder getWithBody​(boolean getWithBody)
        Whether the HTTP GET should include the message body or not. By default HTTP GET do not include any HTTP body. However in some rare cases users may need to be able to include the message body. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        getWithBody - the value to set
        Returns:
        the dsl builder
      • getWithBody

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder getWithBody​(String getWithBody)
        Whether the HTTP GET should include the message body or not. By default HTTP GET do not include any HTTP body. However in some rare cases users may need to be able to include the message body. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        getWithBody - the value to set
        Returns:
        the dsl builder
      • ignoreResponseBody

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder ignoreResponseBody​(boolean ignoreResponseBody)
        If this option is true, The http producer won't read response body and cache the input stream. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        ignoreResponseBody - the value to set
        Returns:
        the dsl builder
      • ignoreResponseBody

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder ignoreResponseBody​(String ignoreResponseBody)
        If this option is true, The http producer won't read response body and cache the input stream. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        ignoreResponseBody - the value to set
        Returns:
        the dsl builder
      • lazyStartProducer

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder lazyStartProducer​(boolean lazyStartProducer)
        Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        lazyStartProducer - the value to set
        Returns:
        the dsl builder
      • lazyStartProducer

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder lazyStartProducer​(String lazyStartProducer)
        Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        lazyStartProducer - the value to set
        Returns:
        the dsl builder
      • okStatusCodeRange

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder okStatusCodeRange​(String okStatusCodeRange)
        The status codes which are considered a success response. The values are inclusive. Multiple ranges can be defined, separated by comma, e.g. 200-204,209,301-304. Each range must be a single number or from-to with the dash included. The option is a: <code>java.lang.String</code> type. Default: 200-299 Group: producer (advanced)
        Parameters:
        okStatusCodeRange - the value to set
        Returns:
        the dsl builder
      • preserveHostHeader

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder preserveHostHeader​(boolean preserveHostHeader)
        If the option is true, HttpProducer will set the Host header to the value contained in the current exchange Host header, useful in reverse proxy applications where you want the Host header received by the downstream server to reflect the URL called by the upstream client, this allows applications which use the Host header to generate accurate URL's for a proxied service. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        preserveHostHeader - the value to set
        Returns:
        the dsl builder
      • preserveHostHeader

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder preserveHostHeader​(String preserveHostHeader)
        If the option is true, HttpProducer will set the Host header to the value contained in the current exchange Host header, useful in reverse proxy applications where you want the Host header received by the downstream server to reflect the URL called by the upstream client, this allows applications which use the Host header to generate accurate URL's for a proxied service. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        preserveHostHeader - the value to set
        Returns:
        the dsl builder
      • skipRequestHeaders

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder skipRequestHeaders​(boolean skipRequestHeaders)
        Whether to skip mapping all the Camel headers as HTTP request headers. If there are no data from Camel headers needed to be included in the HTTP request then this can avoid parsing overhead with many object allocations for the JVM garbage collector. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        skipRequestHeaders - the value to set
        Returns:
        the dsl builder
      • skipRequestHeaders

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder skipRequestHeaders​(String skipRequestHeaders)
        Whether to skip mapping all the Camel headers as HTTP request headers. If there are no data from Camel headers needed to be included in the HTTP request then this can avoid parsing overhead with many object allocations for the JVM garbage collector. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        skipRequestHeaders - the value to set
        Returns:
        the dsl builder
      • skipResponseHeaders

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder skipResponseHeaders​(boolean skipResponseHeaders)
        Whether to skip mapping all the HTTP response headers to Camel headers. If there are no data needed from HTTP headers then this can avoid parsing overhead with many object allocations for the JVM garbage collector. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        skipResponseHeaders - the value to set
        Returns:
        the dsl builder
      • skipResponseHeaders

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder skipResponseHeaders​(String skipResponseHeaders)
        Whether to skip mapping all the HTTP response headers to Camel headers. If there are no data needed from HTTP headers then this can avoid parsing overhead with many object allocations for the JVM garbage collector. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
        Parameters:
        skipResponseHeaders - the value to set
        Returns:
        the dsl builder
      • userAgent

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder userAgent​(String userAgent)
        To set a custom HTTP User-Agent request header. The option is a: <code>java.lang.String</code> type. Group: producer (advanced)
        Parameters:
        userAgent - the value to set
        Returns:
        the dsl builder
      • clientBuilder

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder clientBuilder​(org.apache.http.impl.client.HttpClientBuilder clientBuilder)
        Provide access to the http client request parameters used on new RequestConfig instances used by producers or consumers of this endpoint. The option is a: <code>org.apache.http.impl.client.HttpClientBuilder</code> type. Group: advanced
        Parameters:
        clientBuilder - the value to set
        Returns:
        the dsl builder
      • clientBuilder

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder clientBuilder​(String clientBuilder)
        Provide access to the http client request parameters used on new RequestConfig instances used by producers or consumers of this endpoint. The option will be converted to a <code>org.apache.http.impl.client.HttpClientBuilder</code> type. Group: advanced
        Parameters:
        clientBuilder - the value to set
        Returns:
        the dsl builder
      • clientConnectionManager

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder clientConnectionManager​(org.apache.http.conn.HttpClientConnectionManager clientConnectionManager)
        To use a custom HttpClientConnectionManager to manage connections. The option is a: <code>org.apache.http.conn.HttpClientConnectionManager</code> type. Group: advanced
        Parameters:
        clientConnectionManager - the value to set
        Returns:
        the dsl builder
      • clientConnectionManager

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder clientConnectionManager​(String clientConnectionManager)
        To use a custom HttpClientConnectionManager to manage connections. The option will be converted to a <code>org.apache.http.conn.HttpClientConnectionManager</code> type. Group: advanced
        Parameters:
        clientConnectionManager - the value to set
        Returns:
        the dsl builder
      • connectionsPerRoute

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder connectionsPerRoute​(int connectionsPerRoute)
        The maximum number of connections per route. The option is a: <code>int</code> type. Default: 20 Group: advanced
        Parameters:
        connectionsPerRoute - the value to set
        Returns:
        the dsl builder
      • connectionsPerRoute

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder connectionsPerRoute​(String connectionsPerRoute)
        The maximum number of connections per route. The option will be converted to a <code>int</code> type. Default: 20 Group: advanced
        Parameters:
        connectionsPerRoute - the value to set
        Returns:
        the dsl builder
      • httpClient

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpClient​(org.apache.http.client.HttpClient httpClient)
        Sets a custom HttpClient to be used by the producer. The option is a: <code>org.apache.http.client.HttpClient</code> type. Group: advanced
        Parameters:
        httpClient - the value to set
        Returns:
        the dsl builder
      • httpClient

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpClient​(String httpClient)
        Sets a custom HttpClient to be used by the producer. The option will be converted to a <code>org.apache.http.client.HttpClient</code> type. Group: advanced
        Parameters:
        httpClient - the value to set
        Returns:
        the dsl builder
      • httpClientConfigurer

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpClientConfigurer​(org.apache.camel.component.http.HttpClientConfigurer httpClientConfigurer)
        Register a custom configuration strategy for new HttpClient instances created by producers or consumers such as to configure authentication mechanisms etc. The option is a: <code>org.apache.camel.component.http.HttpClientConfigurer</code> type. Group: advanced
        Parameters:
        httpClientConfigurer - the value to set
        Returns:
        the dsl builder
      • httpClientConfigurer

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpClientConfigurer​(String httpClientConfigurer)
        Register a custom configuration strategy for new HttpClient instances created by producers or consumers such as to configure authentication mechanisms etc. The option will be converted to a <code>org.apache.camel.component.http.HttpClientConfigurer</code> type. Group: advanced
        Parameters:
        httpClientConfigurer - the value to set
        Returns:
        the dsl builder
      • httpClientOptions

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpClientOptions​(String key,
                                                                                         Object value)
        To configure the HttpClient using the key/values from the Map. The option is a: <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code> type. The option is multivalued, and you can use the httpClientOptions(String, Object) method to add a value (call the method multiple times to set more values). Group: advanced
        Parameters:
        key - the option key
        value - the option value
        Returns:
        the dsl builder
      • httpClientOptions

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpClientOptions​(Map values)
        To configure the HttpClient using the key/values from the Map. The option is a: <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code> type. The option is multivalued, and you can use the httpClientOptions(String, Object) method to add a value (call the method multiple times to set more values). Group: advanced
        Parameters:
        values - the values
        Returns:
        the dsl builder
      • httpContext

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpContext​(org.apache.http.protocol.HttpContext httpContext)
        To use a custom HttpContext instance. The option is a: <code>org.apache.http.protocol.HttpContext</code> type. Group: advanced
        Parameters:
        httpContext - the value to set
        Returns:
        the dsl builder
      • httpContext

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpContext​(String httpContext)
        To use a custom HttpContext instance. The option will be converted to a <code>org.apache.http.protocol.HttpContext</code> type. Group: advanced
        Parameters:
        httpContext - the value to set
        Returns:
        the dsl builder
      • maxTotalConnections

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder maxTotalConnections​(int maxTotalConnections)
        The maximum number of connections. The option is a: <code>int</code> type. Default: 200 Group: advanced
        Parameters:
        maxTotalConnections - the value to set
        Returns:
        the dsl builder
      • maxTotalConnections

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder maxTotalConnections​(String maxTotalConnections)
        The maximum number of connections. The option will be converted to a <code>int</code> type. Default: 200 Group: advanced
        Parameters:
        maxTotalConnections - the value to set
        Returns:
        the dsl builder
      • useSystemProperties

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder useSystemProperties​(boolean useSystemProperties)
        To use System Properties as fallback for configuration. The option is a: <code>boolean</code> type. Default: false Group: advanced
        Parameters:
        useSystemProperties - the value to set
        Returns:
        the dsl builder
      • useSystemProperties

        default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder useSystemProperties​(String useSystemProperties)
        To use System Properties as fallback for configuration. The option will be converted to a <code>boolean</code> type. Default: false Group: advanced
        Parameters:
        useSystemProperties - the value to set
        Returns:
        the dsl builder