-
Feature Request
-
Resolution: Unresolved
-
L3 - Default
-
None
-
None
-
None
User Story (Required on creation):
I can configure a socket timeout at the external task's httpClient, so once the timeout is reached an exception gets thrown and therefore the thread gets freed and the external task client continues operation (while logging the corresponding exception).
Functional Requirements (Required before implementation):
- There is a documented way how to change the socket timeout for all HTTP requests that the external task client makes
Technical Requirements (Required before implementation):
- Create a mechanism that allows to hook into the creation of the underlying Apache HttpClient that the external task client uses internally (i.e. provide access to an instance of org.apache.http.impl.client.HttpClientBuilder)
- This is more flexible. Instead of exposing a single configuration option in ExternalTaskClientBuilder, users will be able to configure anything that the Apache HttpClient offers. Furthermore, Camunda doesn't need to keep track with new configuration options in the future.
Limitations of Scope (Optional):
- The external task client generally doesn't fall into our public API guarantees (https://docs.camunda.org/manual/7.14/introduction/public-api/). Especially, the Apache-specific part of the new feature can be subject to change if we update the Apache HttpClient or in case we ever choose to switch to a different http client library