This is an automated email from the ASF dual-hosted git repository. cdeppisch pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
from ae4213b73dd Add .sdkmanrc to select the recommended Maven and Java versions if the user uses SDKMAN new 55191eca46a CAMEL-18698 Add support for multiple input/output data types on components new 2d8812eefe9 CAMEL-18698 Enhance YAML DSL loader to support input/output data types new bc1d1c10632 CAMEL-18698 Enhance transform EIP and transformer documentation The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../org/apache/camel/catalog/models/transform.json | 8 +- .../apache/camel/catalog/models/transformers.json | 2 +- .../apache/camel/catalog/schemas/camel-spring.xsd | 29 +++ components/camel-aws/camel-aws2-s3/pom.xml | 8 + .../AWS2S3CloudEventDataTypeTransformer.java | 54 ++++++ .../transformer/aws2-s3-application-cloudevents | 18 ++ .../AWS2S3CloudEventDataTypeTransformerTest.java | 69 +++++++ .../transform/AWS2S3TransformCloudEventsTest.java | 82 +++++++++ components/camel-cloudevents/pom.xml | 7 + .../camel/component/cloudevents/CloudEvent.java | 16 ++ .../CloudEventHttpDataTypeTransformer.java | 69 +++++++ .../CloudEventJsonDataTypeTransformer.java | 88 +++++++++ .../transformer/application-cloudevents-json | 18 ++ .../transformer/http-application-cloudevents | 18 ++ .../CloudEventHttpDataTypeTransformerTest.java | 110 ++++++++++++ .../CloudEventJsonDataTypeTransformerTest.java | 103 +++++++++++ .../transformer/SpringTransformerRouteTest.xml | 18 +- .../main/java/org/apache/camel/CamelContext.java | 14 +- .../main/java/org/apache/camel/spi/DataType.java | 57 ++++-- .../org/apache/camel/spi/DataTypeTransformer.java | 60 +++++++ .../java/org/apache/camel/spi/Transformer.java | 62 ++++++- .../org/apache/camel/spi/TransformerLoader.java} | 20 ++- .../org/apache/camel/spi/TransformerResolver.java | 54 ++++++ .../camel/impl/engine/AbstractCamelContext.java | 4 +- .../impl/engine/DefaultTransformerRegistry.java | 121 +++++++++++-- .../impl/engine/DefaultTransformerResolver.java | 65 +++++++ .../impl/engine/DefaultValidatorRegistry.java | 2 +- .../apache/camel/impl/engine/TransformerKey.java | 46 +++-- .../docs/modules/eips/pages/transform-eip.adoc | 43 +++++ .../org/apache/camel/impl/DefaultCamelContext.java | 12 +- .../org/apache/camel/model/transform.json | 8 +- .../org/apache/camel/model/transformer/jaxb.index | 1 + .../camel/model/transformer/transformers.json | 2 +- .../apache/camel/builder/TransformerBuilder.java | 55 +++++- .../apache/camel/model/ProcessorDefinition.java | 28 +++ .../apache/camel/model/TransformDefinition.java | 50 ++++++ .../transformer/LoadTransformerDefinition.java | 64 +++++++ .../model/transformer/TransformerDefinition.java | 31 +++- .../model/transformer/TransformersDefinition.java | 1 + .../org/apache/camel/processor/ContractAdvice.java | 45 +++-- .../transformer/AnnotationTransformerLoader.java | 198 +++++++++++++++++++++ .../transformer/ByteArrayDataTypeTransformer.java} | 31 ++-- .../transformer/DataFormatTransformer.java | 16 +- .../processor/transformer/DataTypeProcessor.java | 120 +++++++++++++ .../transformer/DefaultTransformerLoader.java | 48 +++++ .../transformer/ProcessorTransformer.java | 7 +- .../transformer/StringDataTypeTransformer.java | 46 +++++ .../transformer/TypeConverterTransformer.java | 80 +++++++++ .../datatype/transformer/application-octet-stream | 18 ++ .../apache/camel/datatype/transformer/plain-text | 18 ++ .../org/apache/camel/reifier/TransformReifier.java | 10 ++ .../transformer/CustomTransformerReifier.java | 5 +- .../transformer/DataFormatTransformerReifier.java | 3 +- .../transformer/EndpointTransformerReifier.java | 2 +- ...merReifier.java => LoadTransformerReifier.java} | 25 +-- .../reifier/transformer/TransformerReifier.java | 3 + .../core/xml/AbstractCamelContextFactoryBean.java | 12 +- .../camel/builder/TransformerBuilderTest.java | 2 +- .../engine/DefaultTransformerRegistryTest.java | 47 +++++ .../engine/DefaultTransformerResolverTest.java | 75 ++++++++ .../impl/engine/LowercaseDataTypeTransformer.java} | 19 +- .../impl/engine/UppercaseDataTypeTransformer.java} | 19 +- .../processor/TransformDataTypeProcessorTest.java | 45 +++++ .../ByteArrayDataTypeTransformerTest.java | 101 +++++++++++ .../transformer/DataTypeProcessorTest.java | 79 ++++++++ .../transformer/StringDataTypeTransformerTest.java | 89 +++++++++ .../transformer/TransformerRouteTest.java | 19 +- .../custom/CustomDataTypeTransformer.java} | 19 +- .../org/apache/camel/datatype/transformer/foo-json | 18 ++ .../apache/camel/datatype/transformer/lowercase | 18 ++ .../apache/camel/datatype/transformer/uppercase | 18 ++ .../api/management/mbean/CamelOpenMBeanTypes.java | 6 +- .../management/mbean/ManagedTransformMBean.java | 6 + .../DefaultManagementObjectStrategy.java | 5 +- .../camel/management/mbean/ManagedTransformer.java | 16 +- .../mbean/ManagedTransformerRegistry.java | 10 +- .../management/ManagedTransformerRegistryTest.java | 16 +- .../java/org/apache/camel/xml/in/ModelParser.java | 22 ++- .../java/org/apache/camel/xml/out/ModelWriter.java | 14 ++ .../org/apache/camel/yaml/out/ModelWriter.java | 14 ++ .../modules/ROOT/pages/transformer.adoc | 184 +++++++++++++++---- .../dsl/yaml/deserializers/ModelDeserializers.java | 110 +++++++++++- .../deserializers/ModelDeserializersResolver.java | 1 + .../deserializers/RouteDefinitionDeserializer.java | 12 ++ .../generated/resources/schema/camel-yaml-dsl.json | 47 +++++ .../generated/resources/schema/camelYamlDsl.json | 47 +++++ .../camel/dsl/yaml/YamlRoutesBuilderLoader.java | 26 +++ .../camel/dsl/yaml/KameletBindingLoaderTest.groovy | 97 ++++++++++ .../org/apache/camel/dsl/yaml/RoutesTest.groovy | 27 +++ .../org/apache/camel/dsl/yaml/TransformTest.groovy | 51 ++++++ 90 files changed, 3240 insertions(+), 243 deletions(-) create mode 100644 components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/transform/AWS2S3CloudEventDataTypeTransformer.java create mode 100644 components/camel-aws/camel-aws2-s3/src/main/resources/META-INF/services/org/apache/camel/datatype/transformer/aws2-s3-application-cloudevents create mode 100644 components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/transform/AWS2S3CloudEventDataTypeTransformerTest.java create mode 100644 components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/transform/AWS2S3TransformCloudEventsTest.java create mode 100644 components/camel-cloudevents/src/main/java/org/apache/camel/component/cloudevents/transformer/CloudEventHttpDataTypeTransformer.java create mode 100644 components/camel-cloudevents/src/main/java/org/apache/camel/component/cloudevents/transformer/CloudEventJsonDataTypeTransformer.java create mode 100644 components/camel-cloudevents/src/main/resources/META-INF/services/org/apache/camel/datatype/transformer/application-cloudevents-json create mode 100644 components/camel-cloudevents/src/main/resources/META-INF/services/org/apache/camel/datatype/transformer/http-application-cloudevents create mode 100644 components/camel-cloudevents/src/test/java/org/apache/camel/component/cloudevents/transformer/CloudEventHttpDataTypeTransformerTest.java create mode 100644 components/camel-cloudevents/src/test/java/org/apache/camel/component/cloudevents/transformer/CloudEventJsonDataTypeTransformerTest.java create mode 100644 core/camel-api/src/main/java/org/apache/camel/spi/DataTypeTransformer.java copy core/{camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedTransformMBean.java => camel-api/src/main/java/org/apache/camel/spi/TransformerLoader.java} (65%) create mode 100644 core/camel-api/src/main/java/org/apache/camel/spi/TransformerResolver.java create mode 100644 core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultTransformerResolver.java create mode 100644 core/camel-core-model/src/main/java/org/apache/camel/model/transformer/LoadTransformerDefinition.java create mode 100644 core/camel-core-processor/src/main/java/org/apache/camel/processor/transformer/AnnotationTransformerLoader.java copy core/{camel-core-reifier/src/main/java/org/apache/camel/reifier/TransformReifier.java => camel-core-processor/src/main/java/org/apache/camel/processor/transformer/ByteArrayDataTypeTransformer.java} (50%) create mode 100644 core/camel-core-processor/src/main/java/org/apache/camel/processor/transformer/DataTypeProcessor.java create mode 100644 core/camel-core-processor/src/main/java/org/apache/camel/processor/transformer/DefaultTransformerLoader.java create mode 100644 core/camel-core-processor/src/main/java/org/apache/camel/processor/transformer/StringDataTypeTransformer.java create mode 100644 core/camel-core-processor/src/main/java/org/apache/camel/processor/transformer/TypeConverterTransformer.java create mode 100644 core/camel-core-processor/src/main/resources/META-INF/services/org/apache/camel/datatype/transformer/application-octet-stream create mode 100644 core/camel-core-processor/src/main/resources/META-INF/services/org/apache/camel/datatype/transformer/plain-text copy core/camel-core-reifier/src/main/java/org/apache/camel/reifier/transformer/{DataFormatTransformerReifier.java => LoadTransformerReifier.java} (53%) create mode 100644 core/camel-core/src/test/java/org/apache/camel/impl/engine/DefaultTransformerRegistryTest.java create mode 100644 core/camel-core/src/test/java/org/apache/camel/impl/engine/DefaultTransformerResolverTest.java copy core/{camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedTransformMBean.java => camel-core/src/test/java/org/apache/camel/impl/engine/LowercaseDataTypeTransformer.java} (63%) copy core/{camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedTransformMBean.java => camel-core/src/test/java/org/apache/camel/impl/engine/UppercaseDataTypeTransformer.java} (63%) create mode 100644 core/camel-core/src/test/java/org/apache/camel/processor/TransformDataTypeProcessorTest.java create mode 100644 core/camel-core/src/test/java/org/apache/camel/processor/transformer/ByteArrayDataTypeTransformerTest.java create mode 100644 core/camel-core/src/test/java/org/apache/camel/processor/transformer/DataTypeProcessorTest.java create mode 100644 core/camel-core/src/test/java/org/apache/camel/processor/transformer/StringDataTypeTransformerTest.java copy core/{camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedTransformMBean.java => camel-core/src/test/java/org/apache/camel/processor/transformer/custom/CustomDataTypeTransformer.java} (63%) create mode 100644 core/camel-core/src/test/resources/META-INF/services/org/apache/camel/datatype/transformer/foo-json create mode 100644 core/camel-core/src/test/resources/META-INF/services/org/apache/camel/datatype/transformer/lowercase create mode 100644 core/camel-core/src/test/resources/META-INF/services/org/apache/camel/datatype/transformer/uppercase create mode 100644 dsl/camel-yaml-dsl/camel-yaml-dsl/src/test/groovy/org/apache/camel/dsl/yaml/TransformTest.groovy