Extends DSL with more header filtering constructs -------------------------------------------------
Key: CAMEL-3429 URL: https://issues.apache.org/jira/browse/CAMEL-3429 Project: Camel Issue Type: Improvement Components: camel-core Reporter: Richard Kettelerij Fix For: 2.6.0 Attachments: remove-headers-camel-core.patch Currently the DSL offers the following methods: - {{removeHeader(name)}} which removes a single header - {{removeHeaders(pattern)}} remove one or more headers based on a pattern (since 2.3) The attached patch extends the DSL with the following methods: - {{removeHeaders(name...)}} removes the headers in the given a vararg parameter. - {{removeHeadersExcept(pattern)}} removes all headers except for the ones matching the given pattern (opposite of {{removeHeaders(pattern)}}) - {{removeHeadersExcept(name...)}} removes all headers except for the ones in the given vararg parameter (opposite of {{removeHeaders(name)}}) The rationale for the removeHeadersExcept() method is that in many cases you want to take a _defensive_ approach with regard to header propagation. Sometimes you may want to remove _every_ header on the current message, in that case just call removeHeadersExcept() with no arguments. In other cases you want to propagate only the "id" header received through the servlet/jetty component (as a query parameter). In that case call removeHeadersExcept("id") to preserve the "id" header, while preventing other query parameters (and standard HTTP headers) to flow down your route. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.