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 Details

    • basic

    • 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.hc.client5.http.cookie.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.hc.client5.http.cookie.CookieStore</code> type. Group: producer (advanced)
      Parameters:
      cookieStore - the value to set
      Returns:
      the dsl builder
    • 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.hc.client5.http.cookie.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

      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

      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

      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.hc.client5.http.impl.classic.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.hc.client5.http.impl.classic.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.hc.client5.http.impl.classic.HttpClientBuilder</code> type. Group: advanced
      Parameters:
      clientBuilder - the value to set
      Returns:
      the dsl builder
    • clientConnectionManager

      default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder clientConnectionManager(org.apache.hc.client5.http.io.HttpClientConnectionManager clientConnectionManager)
      To use a custom HttpClientConnectionManager to manage connections. The option is a: <code>org.apache.hc.client5.http.io.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.hc.client5.http.io.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.hc.client5.http.classic.HttpClient httpClient)
      Sets a custom HttpClient to be used by the producer. The option is a: <code>org.apache.hc.client5.http.classic.HttpClient</code> type. Group: advanced
      Parameters:
      httpClient - the value to set
      Returns:
      the dsl builder
    • httpClient

      Sets a custom HttpClient to be used by the producer. The option will be converted to a <code>org.apache.hc.client5.http.classic.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
    • httpConnectionOptions

      default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpConnectionOptions(String key, Object value)
      To configure the connection and the socket 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 httpConnectionOptions(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
    • httpConnectionOptions

      default HttpEndpointBuilderFactory.AdvancedHttpEndpointBuilder httpConnectionOptions(Map values)
      To configure the connection and the socket 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 httpConnectionOptions(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.hc.core5.http.protocol.HttpContext httpContext)
      To use a custom HttpContext instance. The option is a: <code>org.apache.hc.core5.http.protocol.HttpContext</code> type. Group: advanced
      Parameters:
      httpContext - the value to set
      Returns:
      the dsl builder
    • httpContext

      To use a custom HttpContext instance. The option will be converted to a <code>org.apache.hc.core5.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