From 1ad630b22dd7a5cf1c4ff9555371b7a6fa285ba1 Mon Sep 17 00:00:00 2001 From: Maria Arias de Reyna Date: Thu, 3 Aug 2023 13:30:26 +0200 Subject: [PATCH] fix: Aggregate EIP also contains steps Fixes #808 --- README.md | 2 +- .../resources/camel-component-metadata.zip | Bin 140620 -> 140632 bytes .../backend/api/resource/eip.kamelet.yaml | 4 + .../kaoto/backend/camel/KamelPopulator.java | 6 +- .../deployment/kamelet/step/Aggregate.java | 114 +++++++++++++----- .../kamelet/step/AggregateFlowStep.java | 5 +- .../resources/camel-component-metadata.zip | Bin 140620 -> 140632 bytes .../step/parser/kamelet/eip.kamelet.yaml | 4 + update-resources.sh | 0 9 files changed, 101 insertions(+), 34 deletions(-) mode change 100644 => 100755 update-resources.sh diff --git a/README.md b/README.md index 516a5da47..404a8712a 100644 --- a/README.md +++ b/README.md @@ -57,7 +57,7 @@ For more information and all configuration properties, see [Quarkus HTTP Referen ### Steps catalog resources **Actual versions of resources:** -* Kaoto camel components: **94ef243f574ad42b85dafe59b3d36858c47fcd38** +* Kaoto camel components: **3ee2af43623923a5c5e09df6f3f70657e1ccd09f** * Kaoto view definitions: **94aae37dee4356d51ac34bfb757eb43a85ad2c0a** * Camel-connectors: **3.21.0** * Camel-connectors: **3.21.0** diff --git a/api/src/main/resources/camel-component-metadata.zip b/api/src/main/resources/camel-component-metadata.zip index 4df229dc1a8bfa017d4ea97257f9dabc5346b020..1dc1aaba999081b7eb625c923a076d735e72cc15 100644 GIT binary patch delta 7375 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 b@o@F>RMBu#@=#J$S5bFYR`YWAP*VRt$}$mL diff --git a/api/src/test/resources/io/kaoto/backend/api/resource/eip.kamelet.yaml b/api/src/test/resources/io/kaoto/backend/api/resource/eip.kamelet.yaml index f2fe763a0..a3dec0fb6 100644 --- a/api/src/test/resources/io/kaoto/backend/api/resource/eip.kamelet.yaml +++ b/api/src/test/resources/io/kaoto/backend/api/resource/eip.kamelet.yaml @@ -114,6 +114,10 @@ spec: simple: "${header.StockSymbol}" aggregation-strategy: myAggregatorStrategy completion-size: 2 + steps: + - log: + id: log-2fdd + message: "${body}" - load-balance: weighted: distribution-ratio: "2,1" diff --git a/camel-support/src/main/java/io/kaoto/backend/camel/KamelPopulator.java b/camel-support/src/main/java/io/kaoto/backend/camel/KamelPopulator.java index 1704c40be..057d06c16 100644 --- a/camel-support/src/main/java/io/kaoto/backend/camel/KamelPopulator.java +++ b/camel-support/src/main/java/io/kaoto/backend/camel/KamelPopulator.java @@ -513,9 +513,6 @@ private FlowStep processStep(final Step step, final boolean to) { flowStep = getCamelConnector(step, to); } else if ("EIP".equalsIgnoreCase(step.getKind())) { switch (step.getName()) { - case "aggregate": - flowStep = new AggregateFlowStep(step); - break; case "bean": flowStep = new BeanFlowStep(step); break; @@ -624,6 +621,9 @@ private FlowStep processStep(final Step step, final boolean to) { } } else if ("EIP-BRANCH".equalsIgnoreCase(step.getKind())) { switch (step.getName()) { + case "aggregate": + flowStep = new AggregateFlowStep(step, this); + break; case "circuit-breaker": flowStep = new CircuitBreakerFlowStep(step, this); break; diff --git a/camel-support/src/main/java/io/kaoto/backend/camel/model/deployment/kamelet/step/Aggregate.java b/camel-support/src/main/java/io/kaoto/backend/camel/model/deployment/kamelet/step/Aggregate.java index dd36acdc9..804497d64 100644 --- a/camel-support/src/main/java/io/kaoto/backend/camel/model/deployment/kamelet/step/Aggregate.java +++ b/camel-support/src/main/java/io/kaoto/backend/camel/model/deployment/kamelet/step/Aggregate.java @@ -1,14 +1,20 @@ package io.kaoto.backend.camel.model.deployment.kamelet.step; +import com.fasterxml.jackson.annotation.JsonAlias; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.JsonDeserializer; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import io.kaoto.backend.api.metadata.catalog.StepCatalog; import io.kaoto.backend.camel.KamelHelper; +import io.kaoto.backend.camel.KamelPopulator; +import io.kaoto.backend.camel.model.deployment.kamelet.FlowStep; import io.kaoto.backend.camel.model.deployment.kamelet.expression.Expression; +import io.kaoto.backend.camel.service.step.parser.kamelet.KameletStepParserService; import io.kaoto.backend.model.parameter.Parameter; import io.kaoto.backend.model.step.Step; +import java.util.List; import java.util.Map; @@ -72,97 +78,136 @@ public class Aggregate extends EIPStep { public static final String COMPLETE_ALL_ON_STOP1 = "complete-all-on-stop"; public static final String DESCRIPTION_LABEL = KamelHelper.DESCRIPTION; - @JsonProperty("correlation-expression") + @JsonProperty(CORRELATION_EXPRESSION) + @JsonAlias(CORRELATION_EXPRESSION1) private Expression correlationExpression; - @JsonProperty("completion-predicate") + @JsonProperty(COMPLETION_PREDICATE) + @JsonAlias(COMPLETION_PREDICATE1) private String completionPredicate; - @JsonProperty("completion-timeout-expression") + @JsonProperty(COMPLETION_TIMEOUT_EXPRESSION) + @JsonAlias(COMPLETION_TIMEOUT_EXPRESSION1) private Expression completionTimeoutExpression; - @JsonProperty("completion-size-expression") + @JsonProperty(COMPLETION_SIZE_EXPRESSION) + @JsonAlias(COMPLETION_SIZE_EXPRESSION1) private String completionSizeExpression; - @JsonProperty("optimistic-lock-retry-policy") + @JsonProperty(OPTIMISTIC_LOCK_RETRY_POLICY) + @JsonAlias(OPTIMISTIC_LOCK_RETRY_POLICY1) private String optimisticLockRetryPolicy; - @JsonProperty("parallel-processing") + @JsonProperty(PARALLEL_PROCESSING) + @JsonAlias(PARALLEL_PROCESSING1) private Boolean parallelProcessing; - @JsonProperty("optimistic-locking") + @JsonProperty(OPTIMISTIC_LOCKING) + @JsonAlias(OPTIMISTIC_LOCKING1) private String optimisticLocking; - @JsonProperty("executor-service") + @JsonProperty(EXECUTOR_SERVICE) + @JsonAlias(EXECUTOR_SERVICE1) private String executorService; - @JsonProperty("timeout-checker-executor-service") + @JsonProperty(TIMEOUT_CHECKER_EXECUTOR_SERVICE) + @JsonAlias(TIMEOUT_CHECKER_EXECUTOR_SERVICE1) private String timeoutCheckerExecutorService; - @JsonProperty("aggregate-controller") + @JsonProperty(AGGREGATE_CONTROLLER) + @JsonAlias(AGGREGATE_CONTROLLER1) private String aggregateController; - @JsonProperty("aggregation-repository") + @JsonProperty(AGGREGATION_REPOSITORY) + @JsonAlias(AGGREGATION_REPOSITORY1) private String aggregationRepository; - @JsonProperty("aggregation-strategy") + @JsonProperty(AGGREGATION_STRATEGY) + @JsonAlias(AGGREGATION_STRATEGY1) private String aggregationStrategy; - @JsonProperty("aggregation-strategy-method-name") + @JsonProperty(AGGREGATION_STRATEGY_METHOD_NAME) + @JsonAlias(AGGREGATION_STRATEGY_METHOD_NAME1) private String aggregationStrategyMethodName; - @JsonProperty("aggregation-strategy-method-allow-null") + @JsonProperty(AGGREGATION_STRATEGY_METHOD_ALLOW_NULL) + @JsonAlias(AGGREGATION_STRATEGY_METHOD_ALLOW_NULL1) private Boolean aggregationStrategyMethodAllowNull; - @JsonProperty("completion-size") + @JsonProperty(COMPLETION_SIZE) + @JsonAlias(COMPLETION_SIZE1) private Integer completionSize; - @JsonProperty("completion-interval") + @JsonProperty(COMPLETION_INTERVAL) + @JsonAlias(COMPLETION_INTERVAL1) private String completionInterval; - @JsonProperty("completion-timeout") + @JsonProperty(COMPLETION_TIMEOUT) + @JsonAlias(COMPLETION_TIMEOUT1) private String completionTimeout; - @JsonProperty("completion-timeout-checker-interval") + @JsonProperty(COMPLETION_TIMEOUT_CHECKER_INTERVAL) + @JsonAlias(COMPLETION_TIMEOUT_CHECKER_INTERVAL1) private String completionTimeoutCheckerInterval; - @JsonProperty("completion-from-batch-consumer") + @JsonProperty(COMPLETION_FROM_BATCH_CONSUMER) + @JsonAlias(COMPLETION_FROM_BATCH_CONSUMER1) private Boolean completionFromBatchConsumer; - @JsonProperty("completion-on-new-correlation-group") + @JsonProperty(COMPLETION_ON_NEW_CORRELATION_GROUP) + @JsonAlias(COMPLETION_ON_NEW_CORRELATION_GROUP1) private Boolean completionOnNewCorrelationGroup; - @JsonProperty("eager-check-completion") + @JsonProperty(EAGER_CHECK_COMPLETION) + @JsonAlias(EAGER_CHECK_COMPLETION1) private Boolean eagerCheckCompletion; - @JsonProperty("ignore-invalid-correlation-keys") + @JsonProperty(IGNORE_INVALID_CORRELATION_KEYS) + @JsonAlias(IGNORE_INVALID_CORRELATION_KEYS1) private Boolean ignoreInvalidCorrelationKeys; - @JsonProperty("close-correlation-key-on-completion") + @JsonProperty(CLOSE_CORRELATION_KEY_ON_COMPLETION) + @JsonAlias(CLOSE_CORRELATION_KEY_ON_COMPLETION1) private Integer closeCorrelationKeyOnCompletion; - @JsonProperty("discard-on-completion-timeout") + @JsonProperty(DISCARD_ON_COMPLETION_TIMEOUT) + @JsonAlias(DISCARD_ON_COMPLETION_TIMEOUT1) private Boolean discardOnCompletionTimeout; - @JsonProperty("discard-on-aggregation-failure") + @JsonProperty(DISCARD_ON_AGGREGATION_FAILURE) + @JsonAlias(DISCARD_ON_AGGREGATION_FAILURE1) private Boolean discardOnAggregationFailure; - @JsonProperty("force-completion-on-stop") + @JsonProperty(FORCE_COMPLETION_ON_STOP) + @JsonAlias(FORCE_COMPLETION_ON_STOP1) private Boolean forceCompletionOnStop; - @JsonProperty("complete-all-on-stop") + @JsonProperty(COMPLETE_ALL_ON_STOP) + @JsonAlias(COMPLETE_ALL_ON_STOP1) private Boolean completeAllOnStop; @JsonProperty(KamelHelper.DESCRIPTION) private String description; + @JsonProperty(KamelHelper.STEPS) + private List steps; + public Aggregate() { } - public Aggregate(Step step) { + public Aggregate(Step step, final KamelPopulator kameletPopulator) { super(step); + + if (step.getBranches() != null && !step.getBranches().isEmpty()) { + setSteps(kameletPopulator.processSteps(step.getBranches().get(0))); + } } + @Override + protected void processBranches(final Step step, final StepCatalog catalog, + final KameletStepParserService kameletStepParserService) { + step.setBranches(List.of(createBranch(KamelHelper.STEPS, this.getSteps(), kameletStepParserService))); + } public Map getRepresenterProperties() { Map properties = super.getDefaultRepresenterProperties(); @@ -250,6 +295,9 @@ public Map getRepresenterProperties() { if (this.description != null) { properties.put(DESCRIPTION_LABEL, this.description); } + if (this.getSteps() != null) { + properties.put(KamelHelper.STEPS, this.getSteps()); + } return properties; } @@ -495,6 +543,8 @@ protected void assignProperty(final Parameter parameter) { } } + + public Expression getCorrelationExpression() { return correlationExpression; } @@ -718,4 +768,12 @@ public String getDescription() { public void setDescription(final String description) { this.description = description; } + + public List getSteps() { + return steps; + } + + public void setSteps(List steps) { + this.steps = steps; + } } diff --git a/camel-support/src/main/java/io/kaoto/backend/camel/model/deployment/kamelet/step/AggregateFlowStep.java b/camel-support/src/main/java/io/kaoto/backend/camel/model/deployment/kamelet/step/AggregateFlowStep.java index 33ec2e833..0a3e0a612 100644 --- a/camel-support/src/main/java/io/kaoto/backend/camel/model/deployment/kamelet/step/AggregateFlowStep.java +++ b/camel-support/src/main/java/io/kaoto/backend/camel/model/deployment/kamelet/step/AggregateFlowStep.java @@ -6,6 +6,7 @@ import com.fasterxml.jackson.databind.JsonDeserializer; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import io.kaoto.backend.api.metadata.catalog.StepCatalog; +import io.kaoto.backend.camel.KamelPopulator; import io.kaoto.backend.camel.model.deployment.kamelet.FlowStep; import io.kaoto.backend.camel.service.step.parser.kamelet.KameletStepParserService; import io.kaoto.backend.model.step.Step; @@ -32,8 +33,8 @@ public class AggregateFlowStep implements FlowStep { public AggregateFlowStep() { } - public AggregateFlowStep(Step step) { - setAggregate(new Aggregate(step)); + public AggregateFlowStep(final Step step, final KamelPopulator kameletPopulator) { + setAggregate(new Aggregate(step, kameletPopulator)); } @Override diff --git a/camel-support/src/test/resources/camel-component-metadata.zip b/camel-support/src/test/resources/camel-component-metadata.zip index 4df229dc1a8bfa017d4ea97257f9dabc5346b020..1dc1aaba999081b7eb625c923a076d735e72cc15 100644 GIT binary patch delta 7375 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 b@o@F>RMBu#@=#J$S5bFYR`YWAP*VRt$}$mL diff --git a/camel-support/src/test/resources/io/kaoto/backend/camel/service/step/parser/kamelet/eip.kamelet.yaml b/camel-support/src/test/resources/io/kaoto/backend/camel/service/step/parser/kamelet/eip.kamelet.yaml index 142a222d1..c1c59546d 100644 --- a/camel-support/src/test/resources/io/kaoto/backend/camel/service/step/parser/kamelet/eip.kamelet.yaml +++ b/camel-support/src/test/resources/io/kaoto/backend/camel/service/step/parser/kamelet/eip.kamelet.yaml @@ -193,6 +193,10 @@ spec: simple: "${header.StockSymbol}" aggregation-strategy: myAggregatorStrategy completion-size: 2 + steps: + - log: + id: log-2fdd + message: "${body}" - service-call: name: sc static-service-discovery: diff --git a/update-resources.sh b/update-resources.sh old mode 100644 new mode 100755