This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit b0bcb766795b08d3ba9d1c1a71986d05b3abc72c Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Mon Nov 18 12:26:34 2019 +0100 CAMEL-13691: camel-resilience4j --- .../src/main/docs/eips/aggregate-eip.adoc | 22 ---------------------- .../src/main/docs/eips/claimCheck-eip.adoc | 2 -- .../src/main/docs/eips/delay-eip.adoc | 2 -- .../src/main/docs/eips/filter-eip.adoc | 2 -- .../src/main/docs/eips/hystrix-eip.adoc | 2 -- .../src/main/docs/eips/loadBalance-eip.adoc | 4 ---- .../src/main/docs/eips/log-eip.adoc | 3 --- .../src/main/docs/eips/loop-eip.adoc | 2 -- .../src/main/docs/eips/resequence-eip.adoc | 2 -- .../src/main/docs/eips/resilience4j-eip.adoc | 2 -- .../src/main/docs/eips/rollback-eip.adoc | 1 - .../src/main/docs/eips/routingSlip-eip.adoc | 2 -- .../src/main/docs/eips/saga-eip.adoc | 2 -- .../src/main/docs/eips/sample-eip.adoc | 1 - .../src/main/docs/eips/script-eip.adoc | 1 - .../src/main/docs/eips/serviceCall-eip.adoc | 1 - .../src/main/docs/eips/throttle-eip.adoc | 1 - .../src/main/docs/eips/validate-eip.adoc | 1 - .../src/main/docs/eips/wireTap-eip.adoc | 6 ------ .../camel-headersmap/src/main/docs/headersmap.adoc | 2 -- .../camel-resilience4j-starter/pom.xml | 2 +- .../camel/maven/packaging/EndpointDslMojo.java | 4 ++-- 22 files changed, 3 insertions(+), 64 deletions(-) diff --git a/core/camel-core-engine/src/main/docs/eips/aggregate-eip.adoc b/core/camel-core-engine/src/main/docs/eips/aggregate-eip.adoc index 89887bc..2708b1f 100644 --- a/core/camel-core-engine/src/main/docs/eips/aggregate-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/aggregate-eip.adoc @@ -151,8 +151,6 @@ aggregator. If not provided Camel will thrown an Exception on startup. == Pre-completion mode -*available as of Camel 2.16* - There can be use-cases where you want the incoming xref:exchange.adoc[Exchange] to determine if the correlation group should pre-complete, and then the incoming @@ -198,8 +196,6 @@ xref:components::leveldb.adoc[LevelDB], or xref:components::sql-component.adoc[S == Using TimeoutAwareAggregationStrategy -*Available as of Camel 2.9.2* - If your aggregation strategy implements `TimeoutAwareAggregationStrategy`, then Camel will invoke the `timeout` method when the timeout occurs. Notice that the values for index and @@ -209,8 +205,6 @@ from the `timeout` method. == Using CompletionAwareAggregationStrategy -*Available as of Camel 2.9.3* - If your aggregation strategy implements `CompletionAwareAggregationStrategy`, then Camel will invoke the `onComplete` method when the aggregated Exchange is completed. This @@ -220,8 +214,6 @@ resources, or additional work on the exchange as it's now completed. + == Completing current group decided from the AggregationStrategy -*Available as of Camel 2.15* - The `AggregationStrategy` can now included a property on the returned `Exchange` that contains a boolean to indicate if the current group should be completed. This allows to overrule any existing @@ -253,8 +245,6 @@ the property `Exchange.AGGREGATION_COMPLETE_CURRENT_GROUP` to `true`. == Completing all previous group decided from the AggregationStrategy -*Available as of Camel 2.21* - The `AggregationStrategy` can now included a property on the returned `Exchange` that contains a boolean to indicate if all previous groups should be completed. This allows to overrule any existing @@ -285,28 +275,20 @@ setting the property `Exchange.AGGREGATION_COMPLETE_ALL_GROUPS` to `true`. } ---- - - == Manually Force the Completion of All Aggregated Exchanges Immediately -*Available as of Camel 2.9* - You can manually trigger completion of all current aggregated exchanges by sending a message containing the header `Exchange.AGGREGATION_COMPLETE_ALL_GROUPS` set to `true`. The message is considered a signal message only, the message headers/contents will not be processed otherwise. -*Available as of Camel 2.11* - You can alternatively set the header `Exchange.AGGREGATION_COMPLETE_ALL_GROUPS_INCLUSIVE` to `true` to trigger completion of all groups after processing the current message. == Using a List<V> in AggregationStrategy -*Available as of Camel 2.11* - If you want to aggregate some value from the messages `<V>` into a `List<V>` then we have added a `org.apache.camel.processor.aggregate.AbstractListAggregationStrategy` @@ -319,8 +301,6 @@ shown below, and implement the `getValue` method: == Using AggregateController -*Available as of Camel 2.16* - The `org.apache.camel.processor.aggregate.AggregateController` allows you to control the aggregate at runtime using Java or JMX API. This can be used to force completing groups of exchanges, or query its current @@ -415,8 +395,6 @@ List<Exchange> grouped = exchange.getIn().getBody(List.class); == Using POJOs as AggregationStrategy -*Available as of Camel 2.12* - To use the `AggregationStrategy` you had to implement the `org.apache.camel.AggregationStrategy` interface, which means your logic would be tied to the Camel API. diff --git a/core/camel-core-engine/src/main/docs/eips/claimCheck-eip.adoc b/core/camel-core-engine/src/main/docs/eips/claimCheck-eip.adoc index a726bdf..4bcde20 100644 --- a/core/camel-core-engine/src/main/docs/eips/claimCheck-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/claimCheck-eip.adoc @@ -1,8 +1,6 @@ [[claimCheck-eip]] = Claim Check EIP -*Available as of Camel 2.21* - The http://www.enterpriseintegrationpatterns.com/patterns/messaging/StoreInLibrary.html[Claim Check] from the xref:enterprise-integration-patterns.adoc[EIP patterns] allows you to replace message content with a claim check (a unique key), which can be used to retrieve the message content at a later time. diff --git a/core/camel-core-engine/src/main/docs/eips/delay-eip.adoc b/core/camel-core-engine/src/main/docs/eips/delay-eip.adoc index 0957784..8b0f273 100644 --- a/core/camel-core-engine/src/main/docs/eips/delay-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/delay-eip.adoc @@ -119,8 +119,6 @@ The sample below demonstrates the delay in Spring DSL: == Asynchronous delaying -*Available as of Camel 2.4* - You can let the Delayer use non blocking asynchronous delaying, which means Camel will use a scheduler to schedule a task to be executed in the future. The task will then continue routing. This allows the caller thread to not block and be able to service other messages etc. === From Java DSL diff --git a/core/camel-core-engine/src/main/docs/eips/filter-eip.adoc b/core/camel-core-engine/src/main/docs/eips/filter-eip.adoc index cff780f..f7f9982 100644 --- a/core/camel-core-engine/src/main/docs/eips/filter-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/filter-eip.adoc @@ -85,8 +85,6 @@ the when predicate by using the `.stop()`. == Knowing if Exchange was filtered or not -*Available as of Camel 2.5* - The xref:filter-eip.adoc[Message Filter] EIP will add a property on the xref:exchange.adoc[Exchange] that states if it was filtered or not. diff --git a/core/camel-core-engine/src/main/docs/eips/hystrix-eip.adoc b/core/camel-core-engine/src/main/docs/eips/hystrix-eip.adoc index 2bd2fd5..5d978bb 100644 --- a/core/camel-core-engine/src/main/docs/eips/hystrix-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/hystrix-eip.adoc @@ -1,8 +1,6 @@ [[hystrix-eip]] = Hystrix EIP -*Available as of Camel 2.18* - The Hystrix EIP provides integration with Netflix https://github.com/Netflix/Hystrix[Hystrix] to be used as circuit breaker in the Camel routes. Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distributed systems where failure is inevitable. NOTE: Camel provides the Circuit Breaker EIP in the route model, which allows to plugin different implementations. diff --git a/core/camel-core-engine/src/main/docs/eips/loadBalance-eip.adoc b/core/camel-core-engine/src/main/docs/eips/loadBalance-eip.adoc index d0af24e..0837a249 100644 --- a/core/camel-core-engine/src/main/docs/eips/loadBalance-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/loadBalance-eip.adoc @@ -163,8 +163,6 @@ By also enabling `roundRobin` mode, then it will keep retrying until it success. == Weighted Round-Robin and Random Load Balancing -*Available as of Camel 2.5* - In many enterprise environments where server nodes of unequal processing power & performance characteristics are utilized to host services and processing endpoints, it is frequently necessary to distribute processing load based on their individual server capabilities so that some endpoints are not unfairly burdened with requests. Obviously simple round-robin or random load balancing do not alleviate problems of this nature. A Weighted Round-Robin and/or Weighted Random load balancer can [...] The weighted load balancing policy allows you to specify a processing load distribution ratio for each server with respect to others. You can specify this as a positive processing weight for each server. A larger number indicates that the server can handle a larger load. The weight is utilized to determine the payload distribution ratio to different processing endpoints with respect to others. @@ -180,8 +178,6 @@ The parameters that can be used are == Using Weighted round-robin & random load balancing -*Available as of Camel 2.5* - An example using Java DSL: [source,java] ---- diff --git a/core/camel-core-engine/src/main/docs/eips/log-eip.adoc b/core/camel-core-engine/src/main/docs/eips/log-eip.adoc index 7997451..21012ee 100644 --- a/core/camel-core-engine/src/main/docs/eips/log-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/log-eip.adoc @@ -121,7 +121,6 @@ If no logger name or logger instance is passed to log DSL, If more instances are found, the behavior defaults to creating a new instance of logger. == Configuring log name globally -*Available as of Camel 2.17* By default the log name is the route id. If you want to use a different log name, you would need to configure the logName option. However if you have many logs and you want all of them to use the same log name, then you would need to set that logName option on all of them. @@ -142,7 +141,6 @@ And in XML ---- == Using slf4j Marker -*Available as of Camel 2.9* You can specify a marker name in the DSL [source,xml] @@ -162,7 +160,6 @@ When using log DSL inside OSGi (e.g., in Karaf), the underlying logging mechanis In some scenarios it is required that the bundle associated with logger should be the bundle which contains route definition. This is possible using provided logger instance both for Java DSL and Spring DSL (see the examples above). == Masking sensitive information like password -*Available as of Camel 2.19* You can enable security masking for logging by setting `logMask` flag to `true`. Note that this option also affects xref:components::log-component.adoc[Log] component. diff --git a/core/camel-core-engine/src/main/docs/eips/loop-eip.adoc b/core/camel-core-engine/src/main/docs/eips/loop-eip.adoc index 3dcf3f6..088b8ff 100644 --- a/core/camel-core-engine/src/main/docs/eips/loop-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/loop-eip.adoc @@ -88,7 +88,6 @@ Use expression to determine loop count ---- == Using copy mode -*Available as of Camel 2.8* + Now suppose we send a message to "direct:start" endpoint containing the letter A. + The output of processing this route will be that, each "mock:loop" endpoint will receive "AB" as message. @@ -138,7 +137,6 @@ The equivalent example in XML DSL in copy mode is as follows: ---- == Using while mode -*Available as of Camel 2.17* + The loop can act like a while loop that loops until the expression evaluates to false or null. + For example the route below loops while the length of the message body is 5 or less characters. Notice that the DSL uses *loopDoWhile*. diff --git a/core/camel-core-engine/src/main/docs/eips/resequence-eip.adoc b/core/camel-core-engine/src/main/docs/eips/resequence-eip.adoc index cd86b9d..0c0a887 100644 --- a/core/camel-core-engine/src/main/docs/eips/resequence-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/resequence-eip.adoc @@ -113,7 +113,6 @@ from("jms:queue:foo") Notice this is *only* possible in the `batch` mode of the Resequencer. == Ignore invalid exchanges -*Available as of Camel 2.9* The Resequencer EIP throws a `CamelExchangeException` if the incoming Exchange is not valid for the resequencer - ie. the expression cannot be evaluated, such as a missing header. You can use the option `ignoreInvalidExchanges` to ignore these exceptions which means the Resequencer will then skip the invalid Exchange. @@ -130,7 +129,6 @@ from("direct:start") This option is available for both batch and stream resequencer. == Reject Old Exchanges -*Available as of Camel 2.11* This option can be used to prevent out of order messages from being sent regardless of the event that delivered messages downstream (capacity, timeout, etc). If enabled using `rejectOld()`, the Resequencer will throw a `MessageRejectedException` when an incoming Exchange is "older" (based on the Comparator) than the last delivered message. This provides an extra level of control with regards to delayed message ordering. diff --git a/core/camel-core-engine/src/main/docs/eips/resilience4j-eip.adoc b/core/camel-core-engine/src/main/docs/eips/resilience4j-eip.adoc index 7f23bda..e4bc361 100644 --- a/core/camel-core-engine/src/main/docs/eips/resilience4j-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/resilience4j-eip.adoc @@ -1,8 +1,6 @@ [[resilience4j-eip]] = Resilience4j EIP -*Available as of Camel 3.0* - This component supports the Circuit Breaker EIP with the Resilience4j library. NOTE: Camel provides the Circuit Breaker EIP in the route model, which allows to plugin different implementations. diff --git a/core/camel-core-engine/src/main/docs/eips/rollback-eip.adoc b/core/camel-core-engine/src/main/docs/eips/rollback-eip.adoc index 98d2086..a16a732 100644 --- a/core/camel-core-engine/src/main/docs/eips/rollback-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/rollback-eip.adoc @@ -222,7 +222,6 @@ parts that cause separate threads to avoid this issue. == Using multiple routes with different propagation behaviors -*Available as of Camel 2.2* + Suppose you want to route a message through two routes and by which the 2nd route should run in its own transaction. How do you do that? You use propagation behaviors for that where you configure it as follows: diff --git a/core/camel-core-engine/src/main/docs/eips/routingSlip-eip.adoc b/core/camel-core-engine/src/main/docs/eips/routingSlip-eip.adoc index 540a565..87fdc39 100644 --- a/core/camel-core-engine/src/main/docs/eips/routingSlip-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/routingSlip-eip.adoc @@ -58,7 +58,6 @@ from("direct:c").routingSlip(header("aRoutingSlipHeader"), "#"); --------------------- == Ignore Invalid Endpoints -*Available as of Camel 2.3* The Routing Slip supports ignoreInvalidEndpoints which the Recipient List also supports. You can use it to skip endpoints which are invalid. [source,java] @@ -83,7 +82,6 @@ And in Spring XML its an attribute on the recipient list tag: Then let's say the myHeader contains the following two endpoints direct:foo,xxx:bar. The first endpoint is valid and works. However the second endpoint is invalid and will just be ignored. Camel logs at INFO level, so you can see why the endpoint was invalid. == Expression Support -*Available as of Camel 2.4* The Routing Slip supports to take the expression parameter as the Recipient List does. You can tell Camel the expression that you want to use to get the routing slip. diff --git a/core/camel-core-engine/src/main/docs/eips/saga-eip.adoc b/core/camel-core-engine/src/main/docs/eips/saga-eip.adoc index ba283dd..a867c89 100644 --- a/core/camel-core-engine/src/main/docs/eips/saga-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/saga-eip.adoc @@ -1,8 +1,6 @@ [[saga-eip]] = Saga EIP -*Available as of Camel 2.21* - The Saga EIP provides a way to define a series of related actions in a Camel route that should be either completed successfully (*all of them*) or not-executed/compensated. Sagas implementations are able to coordinate *distributed services communicating using any transport* towards a globally *consistent outcome*. diff --git a/core/camel-core-engine/src/main/docs/eips/sample-eip.adoc b/core/camel-core-engine/src/main/docs/eips/sample-eip.adoc index 3499e46..6b6bbec 100644 --- a/core/camel-core-engine/src/main/docs/eips/sample-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/sample-eip.adoc @@ -1,6 +1,5 @@ [[sample-eip]] = Sample EIP -*Available as of Camel 2.1* A sampling throttler allows you to extract a sample of the exchanges from the traffic through a route. + It is configured with a sampling period during which only a single exchange is allowed to pass through. All other exchanges will be stopped. diff --git a/core/camel-core-engine/src/main/docs/eips/script-eip.adoc b/core/camel-core-engine/src/main/docs/eips/script-eip.adoc index 8c3c94f..a336093 100644 --- a/core/camel-core-engine/src/main/docs/eips/script-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/script-eip.adoc @@ -1,6 +1,5 @@ [[script-eip]] = Script EIP -*Available as of Camel 2.16* Is used to execute a script which does not change the message (by default). This is useful when you need to invoke some logic that are not in Java code such as JavaScript, diff --git a/core/camel-core-engine/src/main/docs/eips/serviceCall-eip.adoc b/core/camel-core-engine/src/main/docs/eips/serviceCall-eip.adoc index 021aa8d..dd5038d 100644 --- a/core/camel-core-engine/src/main/docs/eips/serviceCall-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/serviceCall-eip.adoc @@ -1,6 +1,5 @@ [[serviceCall-eip]] = Service Call EIP -*Available as of Camel 2.18* The Service Call EIP allows to call remote services in a distributed system. The service to call is looked up in a service registry of some sorts such as Kubernetes, Consul, Etcd, Zookeeper, DNS. diff --git a/core/camel-core-engine/src/main/docs/eips/throttle-eip.adoc b/core/camel-core-engine/src/main/docs/eips/throttle-eip.adoc index 8425486..7d6c8d7 100644 --- a/core/camel-core-engine/src/main/docs/eips/throttle-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/throttle-eip.adoc @@ -56,7 +56,6 @@ And an example in XML ---- == Dynamically changing maximum requests per period -*Available as of Camel 2.8* Since we use an Expression you can adjust this value at runtime, for example you can provide a header with the value. At runtime Camel evaluates the expression and converts the result to a `java.lang.Long` type. In the example below we use a header from the message to determine the maximum requests per period. If the header is absent, then the Throttler uses the old value. So that allows you to only provide a header if the value is to be changed: [source,xml] diff --git a/core/camel-core-engine/src/main/docs/eips/validate-eip.adoc b/core/camel-core-engine/src/main/docs/eips/validate-eip.adoc index bfa8a57..7e90776 100644 --- a/core/camel-core-engine/src/main/docs/eips/validate-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/validate-eip.adoc @@ -1,6 +1,5 @@ [[validate-eip]] = Validate EIP -*Available as of Camel 2.3* + Validate uses an expression or predicates to validate the contents of a message. It is useful for ensuring that messages are valid before attempting to process them. diff --git a/core/camel-core-engine/src/main/docs/eips/wireTap-eip.adoc b/core/camel-core-engine/src/main/docs/eips/wireTap-eip.adoc index 0bcdda5..d1fa452 100644 --- a/core/camel-core-engine/src/main/docs/eips/wireTap-eip.adoc +++ b/core/camel-core-engine/src/main/docs/eips/wireTap-eip.adoc @@ -141,8 +141,6 @@ xref:exchange.adoc[Exchange] == Using Dynamic URIs -*Available as of Camel 2.16:* - For example to wire tap to a dynamic URI, then it supports the same dynamic URIs as documented in xref:message-endpoint.adoc[Message Endpoint]. For example to wire tap to a JMS queue where the header ID is @@ -156,8 +154,6 @@ part of the queue name: == Sending a New exchange and Set Headers in DSL -*Available as of Camel 2.8* - If you send a new message using xref:wireTap-eip.adoc[Wire Tap], then you could only set the message body using an xref:expression.adoc[Expression] from the DSL. If you also need to set @@ -204,8 +200,6 @@ The following example sends a new message which has == Using `onPrepare` to Execute Custom Logic when Preparing Messages -*Available as of Camel 2.8* - See details at xref:multicast-eip.adoc[Multicast] xref:using-this-pattern.adoc[Using This Pattern] diff --git a/core/camel-headersmap/src/main/docs/headersmap.adoc b/core/camel-headersmap/src/main/docs/headersmap.adoc index e3277ba..b016fc3 100644 --- a/core/camel-headersmap/src/main/docs/headersmap.adoc +++ b/core/camel-headersmap/src/main/docs/headersmap.adoc @@ -1,7 +1,5 @@ = HeadersMap -*Available as of Camel 2.20* - The camel-headersmap is a faster implementation of a case-insenstive map which can be plugged in and used by Camel at runtime to have slight faster performance in the Camel Message headers. diff --git a/platforms/spring-boot/components-starter/camel-resilience4j-starter/pom.xml b/platforms/spring-boot/components-starter/camel-resilience4j-starter/pom.xml index 0782fb2..8381e69 100644 --- a/platforms/spring-boot/components-starter/camel-resilience4j-starter/pom.xml +++ b/platforms/spring-boot/components-starter/camel-resilience4j-starter/pom.xml @@ -20,7 +20,7 @@ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> - <groupId>org.apache.camel</groupId> + <groupId>org.apache.camel.springboot</groupId> <artifactId>components-starter</artifactId> <version>3.0.0-SNAPSHOT</version> </parent> diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java index 9448ceb..ade4996 100644 --- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java +++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java @@ -445,7 +445,7 @@ public class EndpointDslMojo extends AbstractMojo { desc += "\n" + model.getDescription(); desc += "\n"; desc += "\nCategory: " + model.getLabel(); - desc += "\nAvailable as of version: " + model.getFirstVersionShort(); + desc += "\nSince: " + model.getFirstVersionShort(); desc += "\nMaven coordinates: " + project.getGroupId() + ":" + project.getArtifactId(); method.getJavaDoc().setText(desc); } @@ -486,7 +486,7 @@ public class EndpointDslMojo extends AbstractMojo { desc += "\n" + model.getDescription(); desc += "\n"; desc += "\nCategory: " + model.getLabel(); - desc += "\nAvailable as of version: " + model.getFirstVersionShort(); + desc += "\nSince: " + model.getFirstVersionShort(); desc += "\nMaven coordinates: " + project.getGroupId() + ":" + project.getArtifactId(); // include javadoc for all path parameters and mark which are required