This is an automated email from the ASF dual-hosted git repository.

marat pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-karavan.git

commit dec5a31660e55df8cc048f5a0f1e52cc0cfb56d4
Author: Marat Gubaidullin <[email protected]>
AuthorDate: Wed Feb 21 12:08:28 2024 -0500

    Generator for #1105
---
 karavan-core/src/core/api/CamelDefinitionApi.ts    | 271 +-------------
 .../src/core/api/CamelDefinitionYamlStep.ts        | 390 +--------------------
 karavan-core/src/core/model/CamelDefinition.ts     | 286 +--------------
 karavan-core/src/core/model/CamelMetadata.ts       |  73 +---
 .../camel/karavan/generator/AbstractGenerator.java |  56 ++-
 .../generator/CamelDefinitionApiGenerator.java     |   7 +-
 .../generator/CamelDefinitionGenerator.java        |   8 +-
 .../CamelDefinitionYamlStepGenerator.java          |   4 +-
 .../karavan/generator/CamelMetadataGenerator.java  |  30 +-
 9 files changed, 99 insertions(+), 1026 deletions(-)

diff --git a/karavan-core/src/core/api/CamelDefinitionApi.ts 
b/karavan-core/src/core/api/CamelDefinitionApi.ts
index babc5553..7e0a487c 100644
--- a/karavan-core/src/core/api/CamelDefinitionApi.ts
+++ b/karavan-core/src/core/api/CamelDefinitionApi.ts
@@ -131,26 +131,6 @@ import {
     BeanPropertyDefinition,
     ComponentScanDefinition,
     RegistryBeanDefinition,
-    BlacklistServiceCallServiceFilterConfiguration,
-    CachingServiceCallServiceDiscoveryConfiguration,
-    CombinedServiceCallServiceDiscoveryConfiguration,
-    CombinedServiceCallServiceFilterConfiguration,
-    ConsulServiceCallServiceDiscoveryConfiguration,
-    CustomServiceCallServiceFilterConfiguration,
-    DefaultServiceCallServiceLoadBalancerConfiguration,
-    DnsServiceCallServiceDiscoveryConfiguration,
-    HealthyServiceCallServiceFilterConfiguration,
-    KubernetesServiceCallServiceDiscoveryConfiguration,
-    PassThroughServiceCallServiceFilterConfiguration,
-    ServiceCallConfigurationDefinition,
-    ServiceCallDefinition,
-    ServiceCallExpressionConfiguration,
-    ServiceCallServiceChooserConfiguration,
-    ServiceCallServiceDiscoveryConfiguration,
-    ServiceCallServiceFilterConfiguration,
-    ServiceCallServiceLoadBalancerConfiguration,
-    StaticServiceCallServiceDiscoveryConfiguration,
-    ZooKeeperServiceCallServiceDiscoveryConfiguration,
     BatchResequencerConfig,
     StreamResequencerConfig,
     ASN1DataFormat,
@@ -213,7 +193,6 @@ import {
     Hl7TerserExpression,
     JavaExpression,
     JavaScriptExpression,
-    JoorExpression,
     JqExpression,
     JsonPathExpression,
     LanguageExpression,
@@ -462,9 +441,6 @@ export class CamelDefinitionApi {
         if (element?.wireTap !== undefined) { 
             def.wireTap = 
CamelDefinitionApi.createWireTapDefinition(element.wireTap); 
         }
-        if (element?.serviceCall !== undefined) { 
-            def.serviceCall = 
CamelDefinitionApi.createServiceCallDefinition(element.serviceCall); 
-        }
         return def;
     }
 
@@ -680,9 +656,6 @@ export class CamelDefinitionApi {
         if (element?.java !== undefined) { 
             def.java = CamelDefinitionApi.createJavaExpression(element.java); 
         }
-        if (element?.joor !== undefined) { 
-            def.joor = CamelDefinitionApi.createJoorExpression(element.joor); 
-        }
         if (element?.jq !== undefined) { 
             def.jq = CamelDefinitionApi.createJqExpression(element.jq); 
         }
@@ -1195,6 +1168,12 @@ export class CamelDefinitionApi {
         def.uuid = element?.uuid ? element.uuid : def.uuid; 
         def.expression = 
CamelDefinitionApi.createExpressionDefinition(element.expression); 
 
+        if (element?.batchConfig !== undefined) { 
+            def.batchConfig = 
CamelDefinitionApi.createBatchResequencerConfig(element.batchConfig); 
+        }
+        if (element?.streamConfig !== undefined) { 
+            def.streamConfig = 
CamelDefinitionApi.createStreamResequencerConfig(element.streamConfig); 
+        }
         def.steps = CamelDefinitionApi.createSteps(element?.steps);
         return def;
     }
@@ -1725,210 +1704,6 @@ export class CamelDefinitionApi {
         return def;
     }
 
-    static createBlacklistServiceCallServiceFilterConfiguration = (element: 
any): BlacklistServiceCallServiceFilterConfiguration => { 
-        const def = element ? new 
BlacklistServiceCallServiceFilterConfiguration({...element}) : new 
BlacklistServiceCallServiceFilterConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createCachingServiceCallServiceDiscoveryConfiguration = (element: 
any): CachingServiceCallServiceDiscoveryConfiguration => { 
-        const def = element ? new 
CachingServiceCallServiceDiscoveryConfiguration({...element}) : new 
CachingServiceCallServiceDiscoveryConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        if (element?.combinedServiceDiscovery !== undefined) { 
-            def.combinedServiceDiscovery = 
CamelDefinitionApi.createCombinedServiceCallServiceDiscoveryConfiguration(element.combinedServiceDiscovery);
 
-        }
-        if (element?.consulServiceDiscovery !== undefined) { 
-            def.consulServiceDiscovery = 
CamelDefinitionApi.createConsulServiceCallServiceDiscoveryConfiguration(element.consulServiceDiscovery);
 
-        }
-        if (element?.dnsServiceDiscovery !== undefined) { 
-            def.dnsServiceDiscovery = 
CamelDefinitionApi.createDnsServiceCallServiceDiscoveryConfiguration(element.dnsServiceDiscovery);
 
-        }
-        if (element?.kubernetesServiceDiscovery !== undefined) { 
-            def.kubernetesServiceDiscovery = 
CamelDefinitionApi.createKubernetesServiceCallServiceDiscoveryConfiguration(element.kubernetesServiceDiscovery);
 
-        }
-        if (element?.staticServiceDiscovery !== undefined) { 
-            def.staticServiceDiscovery = 
CamelDefinitionApi.createStaticServiceCallServiceDiscoveryConfiguration(element.staticServiceDiscovery);
 
-        }
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createCombinedServiceCallServiceDiscoveryConfiguration = (element: 
any): CombinedServiceCallServiceDiscoveryConfiguration => { 
-        const def = element ? new 
CombinedServiceCallServiceDiscoveryConfiguration({...element}) : new 
CombinedServiceCallServiceDiscoveryConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        if (element?.cachingServiceDiscovery !== undefined) { 
-            def.cachingServiceDiscovery = 
CamelDefinitionApi.createCachingServiceCallServiceDiscoveryConfiguration(element.cachingServiceDiscovery);
 
-        }
-        if (element?.consulServiceDiscovery !== undefined) { 
-            def.consulServiceDiscovery = 
CamelDefinitionApi.createConsulServiceCallServiceDiscoveryConfiguration(element.consulServiceDiscovery);
 
-        }
-        if (element?.dnsServiceDiscovery !== undefined) { 
-            def.dnsServiceDiscovery = 
CamelDefinitionApi.createDnsServiceCallServiceDiscoveryConfiguration(element.dnsServiceDiscovery);
 
-        }
-        if (element?.kubernetesServiceDiscovery !== undefined) { 
-            def.kubernetesServiceDiscovery = 
CamelDefinitionApi.createKubernetesServiceCallServiceDiscoveryConfiguration(element.kubernetesServiceDiscovery);
 
-        }
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        if (element?.staticServiceDiscovery !== undefined) { 
-            def.staticServiceDiscovery = 
CamelDefinitionApi.createStaticServiceCallServiceDiscoveryConfiguration(element.staticServiceDiscovery);
 
-        }
-        return def;
-    }
-
-    static createCombinedServiceCallServiceFilterConfiguration = (element: 
any): CombinedServiceCallServiceFilterConfiguration => { 
-        const def = element ? new 
CombinedServiceCallServiceFilterConfiguration({...element}) : new 
CombinedServiceCallServiceFilterConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        if (element?.blacklistServiceFilter !== undefined) { 
-            def.blacklistServiceFilter = 
CamelDefinitionApi.createBlacklistServiceCallServiceFilterConfiguration(element.blacklistServiceFilter);
 
-        }
-        if (element?.customServiceFilter !== undefined) { 
-            def.customServiceFilter = 
CamelDefinitionApi.createCustomServiceCallServiceFilterConfiguration(element.customServiceFilter);
 
-        }
-        if (element?.healthyServiceFilter !== undefined) { 
-            def.healthyServiceFilter = 
CamelDefinitionApi.createHealthyServiceCallServiceFilterConfiguration(element.healthyServiceFilter);
 
-        }
-        if (element?.passThroughServiceFilter !== undefined) { 
-            def.passThroughServiceFilter = 
CamelDefinitionApi.createPassThroughServiceCallServiceFilterConfiguration(element.passThroughServiceFilter);
 
-        }
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createConsulServiceCallServiceDiscoveryConfiguration = (element: 
any): ConsulServiceCallServiceDiscoveryConfiguration => { 
-        const def = element ? new 
ConsulServiceCallServiceDiscoveryConfiguration({...element}) : new 
ConsulServiceCallServiceDiscoveryConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createCustomServiceCallServiceFilterConfiguration = (element: any): 
CustomServiceCallServiceFilterConfiguration => { 
-        const def = element ? new 
CustomServiceCallServiceFilterConfiguration({...element}) : new 
CustomServiceCallServiceFilterConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createDefaultServiceCallServiceLoadBalancerConfiguration = 
(element: any): DefaultServiceCallServiceLoadBalancerConfiguration => { 
-        const def = element ? new 
DefaultServiceCallServiceLoadBalancerConfiguration({...element}) : new 
DefaultServiceCallServiceLoadBalancerConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createDnsServiceCallServiceDiscoveryConfiguration = (element: any): 
DnsServiceCallServiceDiscoveryConfiguration => { 
-        const def = element ? new 
DnsServiceCallServiceDiscoveryConfiguration({...element}) : new 
DnsServiceCallServiceDiscoveryConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createHealthyServiceCallServiceFilterConfiguration = (element: 
any): HealthyServiceCallServiceFilterConfiguration => { 
-        const def = element ? new 
HealthyServiceCallServiceFilterConfiguration({...element}) : new 
HealthyServiceCallServiceFilterConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createKubernetesServiceCallServiceDiscoveryConfiguration = 
(element: any): KubernetesServiceCallServiceDiscoveryConfiguration => { 
-        const def = element ? new 
KubernetesServiceCallServiceDiscoveryConfiguration({...element}) : new 
KubernetesServiceCallServiceDiscoveryConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createPassThroughServiceCallServiceFilterConfiguration = (element: 
any): PassThroughServiceCallServiceFilterConfiguration => { 
-        const def = element ? new 
PassThroughServiceCallServiceFilterConfiguration({...element}) : new 
PassThroughServiceCallServiceFilterConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createServiceCallConfigurationDefinition = (element: any): 
ServiceCallConfigurationDefinition => { 
-        const def = element ? new 
ServiceCallConfigurationDefinition({...element}) : new 
ServiceCallConfigurationDefinition();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.expression = 
CamelDefinitionApi.createExpressionDefinition(element.expression); 
-
-        if (element?.blacklistServiceFilter !== undefined) { 
-            def.blacklistServiceFilter = 
CamelDefinitionApi.createBlacklistServiceCallServiceFilterConfiguration(element.blacklistServiceFilter);
 
-        }
-        if (element?.combinedServiceFilter !== undefined) { 
-            def.combinedServiceFilter = 
CamelDefinitionApi.createCombinedServiceCallServiceFilterConfiguration(element.combinedServiceFilter);
 
-        }
-        if (element?.customServiceFilter !== undefined) { 
-            def.customServiceFilter = 
CamelDefinitionApi.createCustomServiceCallServiceFilterConfiguration(element.customServiceFilter);
 
-        }
-        if (element?.healthyServiceFilter !== undefined) { 
-            def.healthyServiceFilter = 
CamelDefinitionApi.createHealthyServiceCallServiceFilterConfiguration(element.healthyServiceFilter);
 
-        }
-        if (element?.passThroughServiceFilter !== undefined) { 
-            def.passThroughServiceFilter = 
CamelDefinitionApi.createPassThroughServiceCallServiceFilterConfiguration(element.passThroughServiceFilter);
 
-        }
-        return def;
-    }
-
-    static createServiceCallDefinition = (element: any): ServiceCallDefinition 
=> { 
-        if (element && typeof element === 'string') {
-            element = {name: element};
-        }
-        const def = element ? new ServiceCallDefinition({...element}) : new 
ServiceCallDefinition();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.expression = 
CamelDefinitionApi.createExpressionDefinition(element.expression); 
-
-        return def;
-    }
-
-    static createServiceCallExpressionConfiguration = (element: any): 
ServiceCallExpressionConfiguration => { 
-        const def = element ? new 
ServiceCallExpressionConfiguration({...element}) : new 
ServiceCallExpressionConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.expressionType = 
CamelDefinitionApi.createExpressionDefinition(element.expressionType); 
-
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createServiceCallServiceChooserConfiguration = (element: any): 
ServiceCallServiceChooserConfiguration => { 
-        const def = element ? new 
ServiceCallServiceChooserConfiguration({...element}) : new 
ServiceCallServiceChooserConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createServiceCallServiceDiscoveryConfiguration = (element: any): 
ServiceCallServiceDiscoveryConfiguration => { 
-        const def = element ? new 
ServiceCallServiceDiscoveryConfiguration({...element}) : new 
ServiceCallServiceDiscoveryConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createServiceCallServiceFilterConfiguration = (element: any): 
ServiceCallServiceFilterConfiguration => { 
-        const def = element ? new 
ServiceCallServiceFilterConfiguration({...element}) : new 
ServiceCallServiceFilterConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createServiceCallServiceLoadBalancerConfiguration = (element: any): 
ServiceCallServiceLoadBalancerConfiguration => { 
-        const def = element ? new 
ServiceCallServiceLoadBalancerConfiguration({...element}) : new 
ServiceCallServiceLoadBalancerConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createStaticServiceCallServiceDiscoveryConfiguration = (element: 
any): StaticServiceCallServiceDiscoveryConfiguration => { 
-        const def = element ? new 
StaticServiceCallServiceDiscoveryConfiguration({...element}) : new 
StaticServiceCallServiceDiscoveryConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
-    static createZooKeeperServiceCallServiceDiscoveryConfiguration = (element: 
any): ZooKeeperServiceCallServiceDiscoveryConfiguration => { 
-        const def = element ? new 
ZooKeeperServiceCallServiceDiscoveryConfiguration({...element}) : new 
ZooKeeperServiceCallServiceDiscoveryConfiguration();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionApi.createPropertyDefinition(x)) :[];
-        return def;
-    }
-
     static createBatchResequencerConfig = (element: any): 
BatchResequencerConfig => { 
         const def = element ? new BatchResequencerConfig({...element}) : new 
BatchResequencerConfig();
         def.uuid = element?.uuid ? element.uuid : def.uuid; 
@@ -2453,9 +2228,6 @@ export class CamelDefinitionApi {
         if (element?.java !== undefined) { 
             def.java = CamelDefinitionApi.createJavaExpression(element.java); 
         }
-        if (element?.joor !== undefined) { 
-            def.joor = CamelDefinitionApi.createJoorExpression(element.joor); 
-        }
         if (element?.jq !== undefined) { 
             def.jq = CamelDefinitionApi.createJqExpression(element.jq); 
         }
@@ -2555,15 +2327,6 @@ export class CamelDefinitionApi {
         return def;
     }
 
-    static createJoorExpression = (element: any): JoorExpression => { 
-        if (element && typeof element === 'string') {
-            element = {expression: element};
-        }
-        const def = element ? new JoorExpression({...element}) : new 
JoorExpression();
-        def.uuid = element?.uuid ? element.uuid : def.uuid; 
-        return def;
-    }
-
     static createJqExpression = (element: any): JqExpression => { 
         if (element && typeof element === 'string') {
             element = {expression: element};
@@ -3258,26 +3021,6 @@ export class CamelDefinitionApi {
             case 'BeanPropertyDefinition': return 
CamelDefinitionApi.createBeanPropertyDefinition(newBody);
             case 'ComponentScanDefinition': return 
CamelDefinitionApi.createComponentScanDefinition(newBody);
             case 'RegistryBeanDefinition': return 
CamelDefinitionApi.createRegistryBeanDefinition(newBody);
-            case 'BlacklistServiceCallServiceFilterConfiguration': return 
CamelDefinitionApi.createBlacklistServiceCallServiceFilterConfiguration(newBody);
-            case 'CachingServiceCallServiceDiscoveryConfiguration': return 
CamelDefinitionApi.createCachingServiceCallServiceDiscoveryConfiguration(newBody);
-            case 'CombinedServiceCallServiceDiscoveryConfiguration': return 
CamelDefinitionApi.createCombinedServiceCallServiceDiscoveryConfiguration(newBody);
-            case 'CombinedServiceCallServiceFilterConfiguration': return 
CamelDefinitionApi.createCombinedServiceCallServiceFilterConfiguration(newBody);
-            case 'ConsulServiceCallServiceDiscoveryConfiguration': return 
CamelDefinitionApi.createConsulServiceCallServiceDiscoveryConfiguration(newBody);
-            case 'CustomServiceCallServiceFilterConfiguration': return 
CamelDefinitionApi.createCustomServiceCallServiceFilterConfiguration(newBody);
-            case 'DefaultServiceCallServiceLoadBalancerConfiguration': return 
CamelDefinitionApi.createDefaultServiceCallServiceLoadBalancerConfiguration(newBody);
-            case 'DnsServiceCallServiceDiscoveryConfiguration': return 
CamelDefinitionApi.createDnsServiceCallServiceDiscoveryConfiguration(newBody);
-            case 'HealthyServiceCallServiceFilterConfiguration': return 
CamelDefinitionApi.createHealthyServiceCallServiceFilterConfiguration(newBody);
-            case 'KubernetesServiceCallServiceDiscoveryConfiguration': return 
CamelDefinitionApi.createKubernetesServiceCallServiceDiscoveryConfiguration(newBody);
-            case 'PassThroughServiceCallServiceFilterConfiguration': return 
CamelDefinitionApi.createPassThroughServiceCallServiceFilterConfiguration(newBody);
-            case 'ServiceCallConfigurationDefinition': return 
CamelDefinitionApi.createServiceCallConfigurationDefinition(newBody);
-            case 'ServiceCallDefinition': return 
CamelDefinitionApi.createServiceCallDefinition(newBody);
-            case 'ServiceCallExpressionConfiguration': return 
CamelDefinitionApi.createServiceCallExpressionConfiguration(newBody);
-            case 'ServiceCallServiceChooserConfiguration': return 
CamelDefinitionApi.createServiceCallServiceChooserConfiguration(newBody);
-            case 'ServiceCallServiceDiscoveryConfiguration': return 
CamelDefinitionApi.createServiceCallServiceDiscoveryConfiguration(newBody);
-            case 'ServiceCallServiceFilterConfiguration': return 
CamelDefinitionApi.createServiceCallServiceFilterConfiguration(newBody);
-            case 'ServiceCallServiceLoadBalancerConfiguration': return 
CamelDefinitionApi.createServiceCallServiceLoadBalancerConfiguration(newBody);
-            case 'StaticServiceCallServiceDiscoveryConfiguration': return 
CamelDefinitionApi.createStaticServiceCallServiceDiscoveryConfiguration(newBody);
-            case 'ZooKeeperServiceCallServiceDiscoveryConfiguration': return 
CamelDefinitionApi.createZooKeeperServiceCallServiceDiscoveryConfiguration(newBody);
             case 'BatchResequencerConfig': return 
CamelDefinitionApi.createBatchResequencerConfig(newBody);
             case 'StreamResequencerConfig': return 
CamelDefinitionApi.createStreamResequencerConfig(newBody);
             case 'ASN1DataFormat': return 
CamelDefinitionApi.createASN1DataFormat(newBody);
@@ -3340,7 +3083,6 @@ export class CamelDefinitionApi {
             case 'Hl7TerserExpression': return 
CamelDefinitionApi.createHl7TerserExpression(newBody);
             case 'JavaExpression': return 
CamelDefinitionApi.createJavaExpression(newBody);
             case 'JavaScriptExpression': return 
CamelDefinitionApi.createJavaScriptExpression(newBody);
-            case 'JoorExpression': return 
CamelDefinitionApi.createJoorExpression(newBody);
             case 'JqExpression': return 
CamelDefinitionApi.createJqExpression(newBody);
             case 'JsonPathExpression': return 
CamelDefinitionApi.createJsonPathExpression(newBody);
             case 'LanguageExpression': return 
CamelDefinitionApi.createLanguageExpression(newBody);
@@ -3412,7 +3154,6 @@ export class CamelDefinitionApi {
             case 'HeaderExpression': return 
CamelDefinitionApi.createHeaderExpression(newBody);
             case 'Hl7TerserExpression': return 
CamelDefinitionApi.createHl7TerserExpression(newBody);
             case 'JavaExpression': return 
CamelDefinitionApi.createJavaExpression(newBody);
-            case 'JoorExpression': return 
CamelDefinitionApi.createJoorExpression(newBody);
             case 'JqExpression': return 
CamelDefinitionApi.createJqExpression(newBody);
             case 'JavaScriptExpression': return 
CamelDefinitionApi.createJavaScriptExpression(newBody);
             case 'JsonPathExpression': return 
CamelDefinitionApi.createJsonPathExpression(newBody);
diff --git a/karavan-core/src/core/api/CamelDefinitionYamlStep.ts 
b/karavan-core/src/core/api/CamelDefinitionYamlStep.ts
index 75e1a121..2a9df8fc 100644
--- a/karavan-core/src/core/api/CamelDefinitionYamlStep.ts
+++ b/karavan-core/src/core/api/CamelDefinitionYamlStep.ts
@@ -132,26 +132,6 @@ import {
     BeanPropertyDefinition,
     ComponentScanDefinition,
     RegistryBeanDefinition,
-    BlacklistServiceCallServiceFilterConfiguration,
-    CachingServiceCallServiceDiscoveryConfiguration,
-    CombinedServiceCallServiceDiscoveryConfiguration,
-    CombinedServiceCallServiceFilterConfiguration,
-    ConsulServiceCallServiceDiscoveryConfiguration,
-    CustomServiceCallServiceFilterConfiguration,
-    DefaultServiceCallServiceLoadBalancerConfiguration,
-    DnsServiceCallServiceDiscoveryConfiguration,
-    HealthyServiceCallServiceFilterConfiguration,
-    KubernetesServiceCallServiceDiscoveryConfiguration,
-    PassThroughServiceCallServiceFilterConfiguration,
-    ServiceCallConfigurationDefinition,
-    ServiceCallDefinition,
-    ServiceCallExpressionConfiguration,
-    ServiceCallServiceChooserConfiguration,
-    ServiceCallServiceDiscoveryConfiguration,
-    ServiceCallServiceFilterConfiguration,
-    ServiceCallServiceLoadBalancerConfiguration,
-    StaticServiceCallServiceDiscoveryConfiguration,
-    ZooKeeperServiceCallServiceDiscoveryConfiguration,
     BatchResequencerConfig,
     StreamResequencerConfig,
     ASN1DataFormat,
@@ -214,7 +194,6 @@ import {
     Hl7TerserExpression,
     JavaExpression,
     JavaScriptExpression,
-    JoorExpression,
     JqExpression,
     JsonPathExpression,
     LanguageExpression,
@@ -447,13 +426,6 @@ export class CamelDefinitionYamlStep {
                def.stop = 
CamelDefinitionYamlStep.readStopDefinition(element.stop); 
             } 
         } 
-        if (element?.serviceCall !== undefined) { 
-            if (Array.isArray(element.serviceCall)) { 
-               def.serviceCall = 
CamelDefinitionYamlStep.readServiceCallDefinition(element.serviceCall[0]); 
-            } else { 
-               def.serviceCall = 
CamelDefinitionYamlStep.readServiceCallDefinition(element.serviceCall); 
-            } 
-        } 
         if (element?.whenSkipSendToEndpoint !== undefined) { 
             if (Array.isArray(element.whenSkipSendToEndpoint)) { 
                def.whenSkipSendToEndpoint = 
CamelDefinitionYamlStep.readWhenSkipSendToEndpointDefinition(element.whenSkipSendToEndpoint[0]);
 
@@ -1130,13 +1102,6 @@ export class CamelDefinitionYamlStep {
                def.jsonpath = 
CamelDefinitionYamlStep.readJsonPathExpression(element.jsonpath); 
             } 
         } 
-        if (element?.joor !== undefined) { 
-            if (Array.isArray(element.joor)) { 
-               def.joor = 
CamelDefinitionYamlStep.readJoorExpression(element.joor[0]); 
-            } else { 
-               def.joor = 
CamelDefinitionYamlStep.readJoorExpression(element.joor); 
-            } 
-        } 
         if (element?.ognl !== undefined) { 
             if (Array.isArray(element.ognl)) { 
                def.ognl = 
CamelDefinitionYamlStep.readOgnlExpression(element.ognl[0]); 
@@ -1966,6 +1931,13 @@ export class CamelDefinitionYamlStep {
     static readResequenceDefinition = (element: any): ResequenceDefinition => {
         
         let def = element ? new ResequenceDefinition({...element}) : new 
ResequenceDefinition();
+        if (element?.streamConfig !== undefined) { 
+            if (Array.isArray(element.streamConfig)) { 
+               def.streamConfig = 
CamelDefinitionYamlStep.readStreamResequencerConfig(element.streamConfig[0]); 
+            } else { 
+               def.streamConfig = 
CamelDefinitionYamlStep.readStreamResequencerConfig(element.streamConfig); 
+            } 
+        } 
         if (element?.expression !== undefined) { 
             def.expression = 
CamelDefinitionYamlStep.readExpressionDefinition(element.expression); 
         } else {
@@ -1978,6 +1950,13 @@ export class CamelDefinitionYamlStep {
             }
         }
         def.steps = CamelDefinitionYamlStep.readSteps(element?.steps);
+        if (element?.batchConfig !== undefined) { 
+            if (Array.isArray(element.batchConfig)) { 
+               def.batchConfig = 
CamelDefinitionYamlStep.readBatchResequencerConfig(element.batchConfig[0]); 
+            } else { 
+               def.batchConfig = 
CamelDefinitionYamlStep.readBatchResequencerConfig(element.batchConfig); 
+            } 
+        } 
 
         return def;
     }
@@ -2859,332 +2838,6 @@ export class CamelDefinitionYamlStep {
         return def;
     }
 
-    static readBlacklistServiceCallServiceFilterConfiguration = (element: 
any): BlacklistServiceCallServiceFilterConfiguration => {
-        
-        let def = element ? new 
BlacklistServiceCallServiceFilterConfiguration({...element}) : new 
BlacklistServiceCallServiceFilterConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readCachingServiceCallServiceDiscoveryConfiguration = (element: 
any): CachingServiceCallServiceDiscoveryConfiguration => {
-        
-        let def = element ? new 
CachingServiceCallServiceDiscoveryConfiguration({...element}) : new 
CachingServiceCallServiceDiscoveryConfiguration();
-        if (element?.dnsServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.dnsServiceDiscovery)) { 
-               def.dnsServiceDiscovery = 
CamelDefinitionYamlStep.readDnsServiceCallServiceDiscoveryConfiguration(element.dnsServiceDiscovery[0]);
 
-            } else { 
-               def.dnsServiceDiscovery = 
CamelDefinitionYamlStep.readDnsServiceCallServiceDiscoveryConfiguration(element.dnsServiceDiscovery);
 
-            } 
-        } 
-        if (element?.kubernetesServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.kubernetesServiceDiscovery)) { 
-               def.kubernetesServiceDiscovery = 
CamelDefinitionYamlStep.readKubernetesServiceCallServiceDiscoveryConfiguration(element.kubernetesServiceDiscovery[0]);
 
-            } else { 
-               def.kubernetesServiceDiscovery = 
CamelDefinitionYamlStep.readKubernetesServiceCallServiceDiscoveryConfiguration(element.kubernetesServiceDiscovery);
 
-            } 
-        } 
-        if (element?.consulServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.consulServiceDiscovery)) { 
-               def.consulServiceDiscovery = 
CamelDefinitionYamlStep.readConsulServiceCallServiceDiscoveryConfiguration(element.consulServiceDiscovery[0]);
 
-            } else { 
-               def.consulServiceDiscovery = 
CamelDefinitionYamlStep.readConsulServiceCallServiceDiscoveryConfiguration(element.consulServiceDiscovery);
 
-            } 
-        } 
-        if (element?.staticServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.staticServiceDiscovery)) { 
-               def.staticServiceDiscovery = 
CamelDefinitionYamlStep.readStaticServiceCallServiceDiscoveryConfiguration(element.staticServiceDiscovery[0]);
 
-            } else { 
-               def.staticServiceDiscovery = 
CamelDefinitionYamlStep.readStaticServiceCallServiceDiscoveryConfiguration(element.staticServiceDiscovery);
 
-            } 
-        } 
-        if (element?.combinedServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.combinedServiceDiscovery)) { 
-               def.combinedServiceDiscovery = 
CamelDefinitionYamlStep.readCombinedServiceCallServiceDiscoveryConfiguration(element.combinedServiceDiscovery[0]);
 
-            } else { 
-               def.combinedServiceDiscovery = 
CamelDefinitionYamlStep.readCombinedServiceCallServiceDiscoveryConfiguration(element.combinedServiceDiscovery);
 
-            } 
-        } 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readCombinedServiceCallServiceDiscoveryConfiguration = (element: 
any): CombinedServiceCallServiceDiscoveryConfiguration => {
-        
-        let def = element ? new 
CombinedServiceCallServiceDiscoveryConfiguration({...element}) : new 
CombinedServiceCallServiceDiscoveryConfiguration();
-        if (element?.cachingServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.cachingServiceDiscovery)) { 
-               def.cachingServiceDiscovery = 
CamelDefinitionYamlStep.readCachingServiceCallServiceDiscoveryConfiguration(element.cachingServiceDiscovery[0]);
 
-            } else { 
-               def.cachingServiceDiscovery = 
CamelDefinitionYamlStep.readCachingServiceCallServiceDiscoveryConfiguration(element.cachingServiceDiscovery);
 
-            } 
-        } 
-        if (element?.dnsServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.dnsServiceDiscovery)) { 
-               def.dnsServiceDiscovery = 
CamelDefinitionYamlStep.readDnsServiceCallServiceDiscoveryConfiguration(element.dnsServiceDiscovery[0]);
 
-            } else { 
-               def.dnsServiceDiscovery = 
CamelDefinitionYamlStep.readDnsServiceCallServiceDiscoveryConfiguration(element.dnsServiceDiscovery);
 
-            } 
-        } 
-        if (element?.kubernetesServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.kubernetesServiceDiscovery)) { 
-               def.kubernetesServiceDiscovery = 
CamelDefinitionYamlStep.readKubernetesServiceCallServiceDiscoveryConfiguration(element.kubernetesServiceDiscovery[0]);
 
-            } else { 
-               def.kubernetesServiceDiscovery = 
CamelDefinitionYamlStep.readKubernetesServiceCallServiceDiscoveryConfiguration(element.kubernetesServiceDiscovery);
 
-            } 
-        } 
-        if (element?.consulServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.consulServiceDiscovery)) { 
-               def.consulServiceDiscovery = 
CamelDefinitionYamlStep.readConsulServiceCallServiceDiscoveryConfiguration(element.consulServiceDiscovery[0]);
 
-            } else { 
-               def.consulServiceDiscovery = 
CamelDefinitionYamlStep.readConsulServiceCallServiceDiscoveryConfiguration(element.consulServiceDiscovery);
 
-            } 
-        } 
-        if (element?.staticServiceDiscovery !== undefined) { 
-            if (Array.isArray(element.staticServiceDiscovery)) { 
-               def.staticServiceDiscovery = 
CamelDefinitionYamlStep.readStaticServiceCallServiceDiscoveryConfiguration(element.staticServiceDiscovery[0]);
 
-            } else { 
-               def.staticServiceDiscovery = 
CamelDefinitionYamlStep.readStaticServiceCallServiceDiscoveryConfiguration(element.staticServiceDiscovery);
 
-            } 
-        } 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readCombinedServiceCallServiceFilterConfiguration = (element: any): 
CombinedServiceCallServiceFilterConfiguration => {
-        
-        let def = element ? new 
CombinedServiceCallServiceFilterConfiguration({...element}) : new 
CombinedServiceCallServiceFilterConfiguration();
-        if (element?.blacklistServiceFilter !== undefined) { 
-            if (Array.isArray(element.blacklistServiceFilter)) { 
-               def.blacklistServiceFilter = 
CamelDefinitionYamlStep.readBlacklistServiceCallServiceFilterConfiguration(element.blacklistServiceFilter[0]);
 
-            } else { 
-               def.blacklistServiceFilter = 
CamelDefinitionYamlStep.readBlacklistServiceCallServiceFilterConfiguration(element.blacklistServiceFilter);
 
-            } 
-        } 
-        if (element?.passThroughServiceFilter !== undefined) { 
-            if (Array.isArray(element.passThroughServiceFilter)) { 
-               def.passThroughServiceFilter = 
CamelDefinitionYamlStep.readPassThroughServiceCallServiceFilterConfiguration(element.passThroughServiceFilter[0]);
 
-            } else { 
-               def.passThroughServiceFilter = 
CamelDefinitionYamlStep.readPassThroughServiceCallServiceFilterConfiguration(element.passThroughServiceFilter);
 
-            } 
-        } 
-        if (element?.healthyServiceFilter !== undefined) { 
-            if (Array.isArray(element.healthyServiceFilter)) { 
-               def.healthyServiceFilter = 
CamelDefinitionYamlStep.readHealthyServiceCallServiceFilterConfiguration(element.healthyServiceFilter[0]);
 
-            } else { 
-               def.healthyServiceFilter = 
CamelDefinitionYamlStep.readHealthyServiceCallServiceFilterConfiguration(element.healthyServiceFilter);
 
-            } 
-        } 
-        if (element?.customServiceFilter !== undefined) { 
-            if (Array.isArray(element.customServiceFilter)) { 
-               def.customServiceFilter = 
CamelDefinitionYamlStep.readCustomServiceCallServiceFilterConfiguration(element.customServiceFilter[0]);
 
-            } else { 
-               def.customServiceFilter = 
CamelDefinitionYamlStep.readCustomServiceCallServiceFilterConfiguration(element.customServiceFilter);
 
-            } 
-        } 
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readConsulServiceCallServiceDiscoveryConfiguration = (element: 
any): ConsulServiceCallServiceDiscoveryConfiguration => {
-        
-        let def = element ? new 
ConsulServiceCallServiceDiscoveryConfiguration({...element}) : new 
ConsulServiceCallServiceDiscoveryConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readCustomServiceCallServiceFilterConfiguration = (element: any): 
CustomServiceCallServiceFilterConfiguration => {
-        
-        let def = element ? new 
CustomServiceCallServiceFilterConfiguration({...element}) : new 
CustomServiceCallServiceFilterConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readDefaultServiceCallServiceLoadBalancerConfiguration = (element: 
any): DefaultServiceCallServiceLoadBalancerConfiguration => {
-        
-        let def = element ? new 
DefaultServiceCallServiceLoadBalancerConfiguration({...element}) : new 
DefaultServiceCallServiceLoadBalancerConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readDnsServiceCallServiceDiscoveryConfiguration = (element: any): 
DnsServiceCallServiceDiscoveryConfiguration => {
-        
-        let def = element ? new 
DnsServiceCallServiceDiscoveryConfiguration({...element}) : new 
DnsServiceCallServiceDiscoveryConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readHealthyServiceCallServiceFilterConfiguration = (element: any): 
HealthyServiceCallServiceFilterConfiguration => {
-        
-        let def = element ? new 
HealthyServiceCallServiceFilterConfiguration({...element}) : new 
HealthyServiceCallServiceFilterConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readKubernetesServiceCallServiceDiscoveryConfiguration = (element: 
any): KubernetesServiceCallServiceDiscoveryConfiguration => {
-        
-        let def = element ? new 
KubernetesServiceCallServiceDiscoveryConfiguration({...element}) : new 
KubernetesServiceCallServiceDiscoveryConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readPassThroughServiceCallServiceFilterConfiguration = (element: 
any): PassThroughServiceCallServiceFilterConfiguration => {
-        
-        let def = element ? new 
PassThroughServiceCallServiceFilterConfiguration({...element}) : new 
PassThroughServiceCallServiceFilterConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readServiceCallConfigurationDefinition = (element: any): 
ServiceCallConfigurationDefinition => {
-        
-        let def = element ? new 
ServiceCallConfigurationDefinition({...element}) : new 
ServiceCallConfigurationDefinition();
-        def = ComponentApi.parseElementUri(def);
-        if (element?.blacklistServiceFilter !== undefined) { 
-            if (Array.isArray(element.blacklistServiceFilter)) { 
-               def.blacklistServiceFilter = 
CamelDefinitionYamlStep.readBlacklistServiceCallServiceFilterConfiguration(element.blacklistServiceFilter[0]);
 
-            } else { 
-               def.blacklistServiceFilter = 
CamelDefinitionYamlStep.readBlacklistServiceCallServiceFilterConfiguration(element.blacklistServiceFilter);
 
-            } 
-        } 
-        if (element?.expression !== undefined) { 
-            def.expression = 
CamelDefinitionYamlStep.readExpressionDefinition(element.expression); 
-        } else {
-            const languageName: string | undefined = 
Object.keys(element).filter(key => CamelMetadataApi.hasLanguage(key))[0] || 
undefined;
-            if (languageName){
-                const exp:any = {};
-                exp[languageName] = element[languageName]
-                def.expression = 
CamelDefinitionYamlStep.readExpressionDefinition(exp);
-                delete (def as any)[languageName];
-            }
-        }
-        if (element?.passThroughServiceFilter !== undefined) { 
-            if (Array.isArray(element.passThroughServiceFilter)) { 
-               def.passThroughServiceFilter = 
CamelDefinitionYamlStep.readPassThroughServiceCallServiceFilterConfiguration(element.passThroughServiceFilter[0]);
 
-            } else { 
-               def.passThroughServiceFilter = 
CamelDefinitionYamlStep.readPassThroughServiceCallServiceFilterConfiguration(element.passThroughServiceFilter);
 
-            } 
-        } 
-        if (element?.healthyServiceFilter !== undefined) { 
-            if (Array.isArray(element.healthyServiceFilter)) { 
-               def.healthyServiceFilter = 
CamelDefinitionYamlStep.readHealthyServiceCallServiceFilterConfiguration(element.healthyServiceFilter[0]);
 
-            } else { 
-               def.healthyServiceFilter = 
CamelDefinitionYamlStep.readHealthyServiceCallServiceFilterConfiguration(element.healthyServiceFilter);
 
-            } 
-        } 
-        if (element?.combinedServiceFilter !== undefined) { 
-            if (Array.isArray(element.combinedServiceFilter)) { 
-               def.combinedServiceFilter = 
CamelDefinitionYamlStep.readCombinedServiceCallServiceFilterConfiguration(element.combinedServiceFilter[0]);
 
-            } else { 
-               def.combinedServiceFilter = 
CamelDefinitionYamlStep.readCombinedServiceCallServiceFilterConfiguration(element.combinedServiceFilter);
 
-            } 
-        } 
-        if (element?.customServiceFilter !== undefined) { 
-            if (Array.isArray(element.customServiceFilter)) { 
-               def.customServiceFilter = 
CamelDefinitionYamlStep.readCustomServiceCallServiceFilterConfiguration(element.customServiceFilter[0]);
 
-            } else { 
-               def.customServiceFilter = 
CamelDefinitionYamlStep.readCustomServiceCallServiceFilterConfiguration(element.customServiceFilter);
 
-            } 
-        } 
-
-        return def;
-    }
-
-    static readServiceCallDefinition = (element: any): ServiceCallDefinition 
=> {
-        if (element && typeof element === 'string') element = {name: element};
-        let def = element ? new ServiceCallDefinition({...element}) : new 
ServiceCallDefinition();
-        def = ComponentApi.parseElementUri(def);
-        if (element?.expression !== undefined) { 
-            def.expression = 
CamelDefinitionYamlStep.readExpressionDefinition(element.expression); 
-        } else {
-            const languageName: string | undefined = 
Object.keys(element).filter(key => CamelMetadataApi.hasLanguage(key))[0] || 
undefined;
-            if (languageName){
-                const exp:any = {};
-                exp[languageName] = element[languageName]
-                def.expression = 
CamelDefinitionYamlStep.readExpressionDefinition(exp);
-                delete (def as any)[languageName];
-            }
-        }
-
-        return def;
-    }
-
-    static readServiceCallExpressionConfiguration = (element: any): 
ServiceCallExpressionConfiguration => {
-        
-        let def = element ? new 
ServiceCallExpressionConfiguration({...element}) : new 
ServiceCallExpressionConfiguration();
-        if (element?.expressionType !== undefined) { 
-            def.expressionType = 
CamelDefinitionYamlStep.readExpressionDefinition(element.expressionType); 
-        } else {
-            const languageName: string | undefined = 
Object.keys(element).filter(key => CamelMetadataApi.hasLanguage(key))[0] || 
undefined;
-            if (languageName){
-                const exp:any = {};
-                exp[languageName] = element[languageName]
-                def.expressionType = 
CamelDefinitionYamlStep.readExpressionDefinition(exp);
-                delete (def as any)[languageName];
-            }
-        }
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readServiceCallServiceChooserConfiguration = (element: any): 
ServiceCallServiceChooserConfiguration => {
-        
-        let def = element ? new 
ServiceCallServiceChooserConfiguration({...element}) : new 
ServiceCallServiceChooserConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readServiceCallServiceDiscoveryConfiguration = (element: any): 
ServiceCallServiceDiscoveryConfiguration => {
-        
-        let def = element ? new 
ServiceCallServiceDiscoveryConfiguration({...element}) : new 
ServiceCallServiceDiscoveryConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readServiceCallServiceFilterConfiguration = (element: any): 
ServiceCallServiceFilterConfiguration => {
-        
-        let def = element ? new 
ServiceCallServiceFilterConfiguration({...element}) : new 
ServiceCallServiceFilterConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readServiceCallServiceLoadBalancerConfiguration = (element: any): 
ServiceCallServiceLoadBalancerConfiguration => {
-        
-        let def = element ? new 
ServiceCallServiceLoadBalancerConfiguration({...element}) : new 
ServiceCallServiceLoadBalancerConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readStaticServiceCallServiceDiscoveryConfiguration = (element: 
any): StaticServiceCallServiceDiscoveryConfiguration => {
-        
-        let def = element ? new 
StaticServiceCallServiceDiscoveryConfiguration({...element}) : new 
StaticServiceCallServiceDiscoveryConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
-    static readZooKeeperServiceCallServiceDiscoveryConfiguration = (element: 
any): ZooKeeperServiceCallServiceDiscoveryConfiguration => {
-        
-        let def = element ? new 
ZooKeeperServiceCallServiceDiscoveryConfiguration({...element}) : new 
ZooKeeperServiceCallServiceDiscoveryConfiguration();
-        def.properties = element && element?.properties ? 
element?.properties.map((x:any) => 
CamelDefinitionYamlStep.readPropertyDefinition(x)) :[]; 
-
-        return def;
-    }
-
     static readBatchResequencerConfig = (element: any): BatchResequencerConfig 
=> {
         
         let def = element ? new BatchResequencerConfig({...element}) : new 
BatchResequencerConfig();
@@ -3990,13 +3643,6 @@ export class CamelDefinitionYamlStep {
                def.jsonpath = 
CamelDefinitionYamlStep.readJsonPathExpression(element.jsonpath); 
             } 
         } 
-        if (element?.joor !== undefined) { 
-            if (Array.isArray(element.joor)) { 
-               def.joor = 
CamelDefinitionYamlStep.readJoorExpression(element.joor[0]); 
-            } else { 
-               def.joor = 
CamelDefinitionYamlStep.readJoorExpression(element.joor); 
-            } 
-        } 
         if (element?.ognl !== undefined) { 
             if (Array.isArray(element.ognl)) { 
                def.ognl = 
CamelDefinitionYamlStep.readOgnlExpression(element.ognl[0]); 
@@ -4120,13 +3766,6 @@ export class CamelDefinitionYamlStep {
         return def;
     }
 
-    static readJoorExpression = (element: any): JoorExpression => {
-        if (element && typeof element === 'string') element = {expression: 
element};
-        let def = element ? new JoorExpression({...element}) : new 
JoorExpression();
-
-        return def;
-    }
-
     static readJqExpression = (element: any): JqExpression => {
         if (element && typeof element === 'string') element = {expression: 
element};
         let def = element ? new JqExpression({...element}) : new 
JqExpression();
@@ -5019,7 +4658,6 @@ export class CamelDefinitionYamlStep {
             case 'when': return 
CamelDefinitionYamlStep.readWhenDefinition(newBody);
             case 'whenSkipSendToEndpoint': return 
CamelDefinitionYamlStep.readWhenSkipSendToEndpointDefinition(newBody);
             case 'wireTap': return 
CamelDefinitionYamlStep.readWireTapDefinition(newBody);
-            case 'serviceCall': return 
CamelDefinitionYamlStep.readServiceCallDefinition(newBody);
             default: return new CamelElement('');
         }
     }
diff --git a/karavan-core/src/core/model/CamelDefinition.ts 
b/karavan-core/src/core/model/CamelDefinition.ts
index 699b1363..552e070a 100644
--- a/karavan-core/src/core/model/CamelDefinition.ts
+++ b/karavan-core/src/core/model/CamelDefinition.ts
@@ -86,7 +86,6 @@ export class ProcessorDefinition extends CamelElement {
     when?: WhenDefinition;
     whenSkipSendToEndpoint?: WhenSkipSendToEndpointDefinition;
     wireTap?: WireTapDefinition;
-    serviceCall?: ServiceCallDefinition | string;
     public constructor(init?: Partial<ProcessorDefinition>) {
         super('ProcessorDefinition');
         Object.assign(this, init);
@@ -385,7 +384,6 @@ export class ExpressionSubElementDefinition extends 
CamelElement {
     header?: HeaderExpression | string;
     hl7terser?: Hl7TerserExpression | string;
     java?: JavaExpression | string;
-    joor?: JoorExpression | string;
     jq?: JqExpression | string;
     js?: JavaScriptExpression | string;
     jsonpath?: JsonPathExpression | string;
@@ -1034,6 +1032,8 @@ export class ResequenceDefinition extends CamelElement {
     description?: string;
     disabled?: boolean;
     expression?: ExpressionDefinition;
+    batchConfig?: BatchResequencerConfig;
+    streamConfig?: StreamResequencerConfig;
     steps?: CamelElement[] = [];
     public constructor(init?: Partial<ResequenceDefinition>) {
         super('ResequenceDefinition');
@@ -1806,273 +1806,6 @@ export class RegistryBeanDefinition extends 
CamelElement {
     }
 }
 
-export class BlacklistServiceCallServiceFilterConfiguration extends 
CamelElement {
-    id?: string = 'blacklistServiceCallServiceFilterConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    servers?: string[] = [];
-    public constructor(init?: 
Partial<BlacklistServiceCallServiceFilterConfiguration>) {
-        super('BlacklistServiceCallServiceFilterConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class CachingServiceCallServiceDiscoveryConfiguration extends 
CamelElement {
-    combinedServiceDiscovery?: 
CombinedServiceCallServiceDiscoveryConfiguration;
-    consulServiceDiscovery?: ConsulServiceCallServiceDiscoveryConfiguration;
-    dnsServiceDiscovery?: DnsServiceCallServiceDiscoveryConfiguration;
-    kubernetesServiceDiscovery?: 
KubernetesServiceCallServiceDiscoveryConfiguration;
-    staticServiceDiscovery?: StaticServiceCallServiceDiscoveryConfiguration;
-    id?: string = 'cachingServiceCallServiceDiscoveryConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    timeout?: number;
-    units?: string;
-    public constructor(init?: 
Partial<CachingServiceCallServiceDiscoveryConfiguration>) {
-        super('CachingServiceCallServiceDiscoveryConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class CombinedServiceCallServiceDiscoveryConfiguration extends 
CamelElement {
-    cachingServiceDiscovery?: CachingServiceCallServiceDiscoveryConfiguration;
-    consulServiceDiscovery?: ConsulServiceCallServiceDiscoveryConfiguration;
-    dnsServiceDiscovery?: DnsServiceCallServiceDiscoveryConfiguration;
-    id?: string = 'combinedServiceCallServiceDiscoveryConfiguration-' + 
uuidv4().substring(0,4);
-    kubernetesServiceDiscovery?: 
KubernetesServiceCallServiceDiscoveryConfiguration;
-    properties?: PropertyDefinition[] = [];
-    staticServiceDiscovery?: StaticServiceCallServiceDiscoveryConfiguration;
-    public constructor(init?: 
Partial<CombinedServiceCallServiceDiscoveryConfiguration>) {
-        super('CombinedServiceCallServiceDiscoveryConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class CombinedServiceCallServiceFilterConfiguration extends 
CamelElement {
-    blacklistServiceFilter?: BlacklistServiceCallServiceFilterConfiguration;
-    customServiceFilter?: CustomServiceCallServiceFilterConfiguration;
-    healthyServiceFilter?: HealthyServiceCallServiceFilterConfiguration;
-    id?: string = 'combinedServiceCallServiceFilterConfiguration-' + 
uuidv4().substring(0,4);
-    passThroughServiceFilter?: 
PassThroughServiceCallServiceFilterConfiguration;
-    properties?: PropertyDefinition[] = [];
-    public constructor(init?: 
Partial<CombinedServiceCallServiceFilterConfiguration>) {
-        super('CombinedServiceCallServiceFilterConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class ConsulServiceCallServiceDiscoveryConfiguration extends 
CamelElement {
-    aclToken?: string;
-    blockSeconds?: number;
-    connectTimeoutMillis?: number;
-    datacenter?: string;
-    id?: string = 'consulServiceCallServiceDiscoveryConfiguration-' + 
uuidv4().substring(0,4);
-    password?: string;
-    properties?: PropertyDefinition[] = [];
-    readTimeoutMillis?: number;
-    url?: string;
-    userName?: string;
-    writeTimeoutMillis?: number;
-    public constructor(init?: 
Partial<ConsulServiceCallServiceDiscoveryConfiguration>) {
-        super('ConsulServiceCallServiceDiscoveryConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class CustomServiceCallServiceFilterConfiguration extends CamelElement {
-    id?: string = 'customServiceCallServiceFilterConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    ref?: string;
-    public constructor(init?: 
Partial<CustomServiceCallServiceFilterConfiguration>) {
-        super('CustomServiceCallServiceFilterConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class DefaultServiceCallServiceLoadBalancerConfiguration extends 
CamelElement {
-    id?: string = 'defaultServiceCallServiceLoadBalancerConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    public constructor(init?: 
Partial<DefaultServiceCallServiceLoadBalancerConfiguration>) {
-        super('DefaultServiceCallServiceLoadBalancerConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class DnsServiceCallServiceDiscoveryConfiguration extends CamelElement {
-    domain?: string;
-    id?: string = 'dnsServiceCallServiceDiscoveryConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    proto?: string;
-    public constructor(init?: 
Partial<DnsServiceCallServiceDiscoveryConfiguration>) {
-        super('DnsServiceCallServiceDiscoveryConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class HealthyServiceCallServiceFilterConfiguration extends CamelElement 
{
-    id?: string = 'healthyServiceCallServiceFilterConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    public constructor(init?: 
Partial<HealthyServiceCallServiceFilterConfiguration>) {
-        super('HealthyServiceCallServiceFilterConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class KubernetesServiceCallServiceDiscoveryConfiguration extends 
CamelElement {
-    apiVersion?: string;
-    caCertData?: string;
-    caCertFile?: string;
-    clientCertData?: string;
-    clientCertFile?: string;
-    clientKeyAlgo?: string;
-    clientKeyData?: string;
-    clientKeyFile?: string;
-    clientKeyPassphrase?: string;
-    dnsDomain?: string;
-    id?: string = 'kubernetesServiceCallServiceDiscoveryConfiguration-' + 
uuidv4().substring(0,4);
-    lookup?: string;
-    masterUrl?: string;
-    namespace?: string;
-    oauthToken?: string;
-    password?: string;
-    portName?: string;
-    portProtocol?: string;
-    properties?: PropertyDefinition[] = [];
-    trustCerts?: boolean;
-    username?: string;
-    public constructor(init?: 
Partial<KubernetesServiceCallServiceDiscoveryConfiguration>) {
-        super('KubernetesServiceCallServiceDiscoveryConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class PassThroughServiceCallServiceFilterConfiguration extends 
CamelElement {
-    id?: string = 'passThroughServiceCallServiceFilterConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    public constructor(init?: 
Partial<PassThroughServiceCallServiceFilterConfiguration>) {
-        super('PassThroughServiceCallServiceFilterConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class ServiceCallConfigurationDefinition extends CamelElement {
-    stepName?: string = 'serviceCallConfiguration';
-    id?: string = 'serviceCallConfiguration-' + uuidv4().substring(0,4);
-    expression?: ExpressionDefinition;
-    uri?: string;
-    component?: string;
-    pattern?: string;
-    serviceDiscoveryRef?: string;
-    serviceFilterRef?: string;
-    serviceChooserRef?: string;
-    loadBalancerRef?: string;
-    expressionRef?: string;
-    blacklistServiceFilter?: BlacklistServiceCallServiceFilterConfiguration;
-    combinedServiceFilter?: CombinedServiceCallServiceFilterConfiguration;
-    customServiceFilter?: CustomServiceCallServiceFilterConfiguration;
-    healthyServiceFilter?: HealthyServiceCallServiceFilterConfiguration;
-    passThroughServiceFilter?: 
PassThroughServiceCallServiceFilterConfiguration;
-    public constructor(init?: Partial<ServiceCallConfigurationDefinition>) {
-        super('ServiceCallConfigurationDefinition');
-        Object.assign(this, init);
-    }
-}
-
-export class ServiceCallDefinition extends CamelElement {
-    stepName?: string = 'serviceCall';
-    id?: string = 'serviceCall-' + uuidv4().substring(0,4);
-    description?: string;
-    disabled?: boolean;
-    name: string = '';
-    expression?: ExpressionDefinition;
-    uri?: string;
-    component?: string;
-    pattern?: string;
-    configurationRef?: string;
-    serviceDiscoveryRef?: string;
-    serviceFilterRef?: string;
-    serviceChooserRef?: string;
-    loadBalancerRef?: string;
-    expressionRef?: string;
-    public constructor(init?: Partial<ServiceCallDefinition>) {
-        super('ServiceCallDefinition');
-        Object.assign(this, init);
-    }
-}
-
-export class ServiceCallExpressionConfiguration extends CamelElement {
-    expressionType?: ExpressionDefinition;
-    hostHeader?: string;
-    id?: string = 'serviceCallExpressionConfiguration-' + 
uuidv4().substring(0,4);
-    portHeader?: string;
-    properties?: PropertyDefinition[] = [];
-    public constructor(init?: Partial<ServiceCallExpressionConfiguration>) {
-        super('ServiceCallExpressionConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class ServiceCallServiceChooserConfiguration extends CamelElement {
-    id?: string = 'serviceCallServiceChooserConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    public constructor(init?: Partial<ServiceCallServiceChooserConfiguration>) 
{
-        super('ServiceCallServiceChooserConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class ServiceCallServiceDiscoveryConfiguration extends CamelElement {
-    id?: string = 'serviceCallServiceDiscoveryConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    public constructor(init?: 
Partial<ServiceCallServiceDiscoveryConfiguration>) {
-        super('ServiceCallServiceDiscoveryConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class ServiceCallServiceFilterConfiguration extends CamelElement {
-    id?: string = 'serviceCallServiceFilterConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    public constructor(init?: Partial<ServiceCallServiceFilterConfiguration>) {
-        super('ServiceCallServiceFilterConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class ServiceCallServiceLoadBalancerConfiguration extends CamelElement {
-    id?: string = 'serviceCallServiceLoadBalancerConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    public constructor(init?: 
Partial<ServiceCallServiceLoadBalancerConfiguration>) {
-        super('ServiceCallServiceLoadBalancerConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class StaticServiceCallServiceDiscoveryConfiguration extends 
CamelElement {
-    id?: string = 'staticServiceCallServiceDiscoveryConfiguration-' + 
uuidv4().substring(0,4);
-    properties?: PropertyDefinition[] = [];
-    servers?: string[] = [];
-    public constructor(init?: 
Partial<StaticServiceCallServiceDiscoveryConfiguration>) {
-        super('StaticServiceCallServiceDiscoveryConfiguration');
-        Object.assign(this, init);
-    }
-}
-
-export class ZooKeeperServiceCallServiceDiscoveryConfiguration extends 
CamelElement {
-    basePath: string = '';
-    connectionTimeout?: string;
-    id?: string = 'zooKeeperServiceCallServiceDiscoveryConfiguration-' + 
uuidv4().substring(0,4);
-    namespace?: string;
-    nodes: string = '';
-    properties?: PropertyDefinition[] = [];
-    reconnectBaseSleepTime?: string;
-    reconnectMaxRetries?: string;
-    reconnectMaxSleepTime?: string;
-    sessionTimeout?: string;
-    public constructor(init?: 
Partial<ZooKeeperServiceCallServiceDiscoveryConfiguration>) {
-        super('ZooKeeperServiceCallServiceDiscoveryConfiguration');
-        Object.assign(this, init);
-    }
-}
-
 export class BatchResequencerConfig extends CamelElement {
     allowDuplicates?: boolean;
     batchSize?: number;
@@ -3048,7 +2781,6 @@ export class ExpressionDefinition extends CamelElement {
     header?: HeaderExpression | string;
     hl7terser?: Hl7TerserExpression | string;
     java?: JavaExpression | string;
-    joor?: JoorExpression | string;
     jq?: JqExpression | string;
     js?: JavaScriptExpression | string;
     jsonpath?: JsonPathExpression | string;
@@ -3134,20 +2866,6 @@ export class JavaScriptExpression extends CamelElement {
     }
 }
 
-export class JoorExpression extends CamelElement {
-    expressionName?: string = 'joor';
-    id?: string = 'joor-' + uuidv4().substring(0,4);
-    expression: string = '';
-    preCompile?: boolean;
-    singleQuotes?: boolean;
-    resultType?: string;
-    trim?: boolean;
-    public constructor(init?: Partial<JoorExpression>) {
-        super('JoorExpression');
-        Object.assign(this, init);
-    }
-}
-
 export class JqExpression extends CamelElement {
     expressionName?: string = 'jq';
     id?: string = 'jq-' + uuidv4().substring(0,4);
diff --git a/karavan-core/src/core/model/CamelMetadata.ts 
b/karavan-core/src/core/model/CamelMetadata.ts
index 710a9ab2..32ffd126 100644
--- a/karavan-core/src/core/model/CamelMetadata.ts
+++ b/karavan-core/src/core/model/CamelMetadata.ts
@@ -670,7 +670,6 @@ export const Languages: [string, string, string][] = [
     ['header','Header',"Gets a header from the Exchange."],
     ['hl7terser','HL7 Terser',"Get the value of a HL7 message field specified 
by terse location specification syntax."],
     ['java','Java',"Evaluates a Java (Java compiled once at runtime) 
expression."],
-    ['joor','jOOR',"Evaluates a jOOR (Java compiled once at runtime) 
expression."],
     ['jq','JQ',"Evaluates a JQ expression against a JSON message body."],
     ['js','JavaScript',"Evaluates a JavaScript expression."],
     ['jsonpath','JSONPath',"Evaluates a JSONPath expression against a JSON 
message body."],
@@ -717,34 +716,6 @@ export const CamelLanguageMetadata: ElementMeta[] = [
         new PropertyMeta('expression', 'Expression', "The expression value in 
your chosen language syntax", 'string', '', '', true, false, false, false, '', 
''),
         new PropertyMeta('trim', 'Trim', "Whether to trim the value to remove 
leading and trailing whitespaces and line breaks", 'boolean', '', 'true', 
false, false, false, false, 'advanced', ''),
     ]),
-    new ElementMeta('expression', 'ExpressionDefinition', 'Expression', "A 
useful base class for an expression", 'language', [
-        new PropertyMeta('constant', 'constant', "constant", 'null', '', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('csimple', 'csimple', "csimple", 'null', '', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('datasonnet', 'datasonnet', "datasonnet", 'null', '', 
'', false, false, false, false, '', ''),
-        new PropertyMeta('exchangeProperty', 'exchangeProperty', 
"exchangeProperty", 'null', '', '', false, false, false, false, '', ''),
-        new PropertyMeta('groovy', 'groovy', "groovy", 'null', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('header', 'header', "header", 'null', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('hl7terser', 'hl7terser', "hl7terser", 'null', '', 
'', false, false, false, false, '', ''),
-        new PropertyMeta('java', 'java', "java", 'null', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('joor', 'joor', "joor", 'null', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('jq', 'jq', "jq", 'null', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('js', 'js', "js", 'null', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('jsonpath', 'jsonpath', "jsonpath", 'null', '', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('language', 'language', "language", 'null', '', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('method', 'method', "method", 'null', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('mvel', 'mvel', "mvel", 'null', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('ognl', 'ognl', "ognl", 'null', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('python', 'python', "python", 'null', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('ref', 'ref', "ref", 'null', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('simple', 'simple', "simple", 'null', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('spel', 'spel', "spel", 'null', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('tokenize', 'tokenize', "tokenize", 'null', '', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('variable', 'variable', "variable", 'null', '', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('wasm', 'wasm', "wasm", 'null', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('xpath', 'xpath', "xpath", 'null', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('xquery', 'xquery', "xquery", 'null', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('xtokenize', 'xtokenize', "xtokenize", 'null', '', 
'', false, false, false, false, '', ''),
-    ]),
     new ElementMeta('groovy', 'GroovyExpression', 'Groovy', "Evaluates a 
Groovy script.", 'language,script', [
         new PropertyMeta('id', 'Id', "Sets the id of this node", 'string', '', 
'', false, false, false, false, '', ''),
         new PropertyMeta('expression', 'Expression', "The expression value in 
your chosen language syntax", 'string', '', '', true, false, false, false, '', 
''),
@@ -777,14 +748,6 @@ export const CamelLanguageMetadata: ElementMeta[] = [
         new PropertyMeta('resultType', 'Result Type', "Sets the class of the 
result type (type from output)", 'string', '', '', false, false, false, false, 
'', ''),
         new PropertyMeta('trim', 'Trim', "Whether to trim the value to remove 
leading and trailing whitespaces and line breaks", 'boolean', '', 'true', 
false, false, false, false, 'advanced', ''),
     ]),
-    new ElementMeta('joor', 'JoorExpression', 'jOOR', "Evaluates a jOOR (Java 
compiled once at runtime) expression.", 'language', [
-        new PropertyMeta('id', 'Id', "Sets the id of this node", 'string', '', 
'', false, false, false, false, '', ''),
-        new PropertyMeta('expression', 'Expression', "The expression value in 
your chosen language syntax", 'string', '', '', true, false, false, false, '', 
''),
-        new PropertyMeta('preCompile', 'Pre Compile', "Whether the expression 
should be pre compiled once during initialization phase. If this is turned off, 
then the expression is reloaded and compiled on each evaluation.", 'boolean', 
'', 'true', false, false, false, false, 'advanced', ''),
-        new PropertyMeta('singleQuotes', 'Single Quotes', "Whether single 
quotes can be used as replacement for double quotes. This is convenient when 
you need to work with strings inside strings.", 'boolean', '', 'true', false, 
false, false, false, 'advanced', ''),
-        new PropertyMeta('resultType', 'Result Type', "Sets the class of the 
result type (type from output)", 'string', '', '', false, false, false, false, 
'', ''),
-        new PropertyMeta('trim', 'Trim', "Whether to trim the value to remove 
leading and trailing whitespaces and line breaks", 'boolean', '', 'true', 
false, false, false, false, 'advanced', ''),
-    ]),
     new ElementMeta('jq', 'JqExpression', 'JQ', "Evaluates a JQ expression 
against a JSON message body.", 'language,json', [
         new PropertyMeta('id', 'Id', "Sets the id of this node", 'string', '', 
'', false, false, false, false, '', ''),
         new PropertyMeta('expression', 'Expression', "The expression value in 
your chosen language syntax", 'string', '', '', true, false, false, false, '', 
''),
@@ -1306,6 +1269,8 @@ export const CamelModelMetadata: ElementMeta[] = [
         new PropertyMeta('description', 'Description', "Sets the description 
of this node", 'string', '', '', false, false, false, false, '', ''),
         new PropertyMeta('disabled', 'Disabled', "Whether to disable this EIP 
from the route during build time. Once an EIP has been disabled then it cannot 
be enabled later at runtime.", 'boolean', '', 'false', false, false, false, 
false, 'advanced', ''),
         new PropertyMeta('expression', 'Expression', "Expression to use for 
re-ordering the messages, such as a header with a sequence number", 
'ExpressionDefinition', '', '', true, false, false, true, '', ''),
+        new PropertyMeta('batchConfig', 'batchConfig', "batchConfig", 
'BatchResequencerConfig', '', '', false, false, false, true, '', ''),
+        new PropertyMeta('streamConfig', 'streamConfig', "streamConfig", 
'StreamResequencerConfig', '', '', false, false, false, true, '', ''),
         new PropertyMeta('steps', 'steps', "steps", 'CamelElement', '', '', 
false, false, true, true, '', ''),
     ]),
     new ElementMeta('resumable', 'ResumableDefinition', 'Resumable', "Resume 
EIP to support resuming processing from last known offset.", 'eip,routing', [
@@ -1607,22 +1572,6 @@ export const CamelModelMetadata: ElementMeta[] = [
         new PropertyMeta('autoStartComponents', 'Auto Start Components', 
"Whether to auto startup components when toD is starting up.", 'boolean', '', 
'true', false, false, false, false, 'advanced', ''),
         new PropertyMeta('parameters', 'parameters', "parameters", 'object', 
'', '', false, false, false, false, '', ''),
     ]),
-    new ElementMeta('serviceCall', 'ServiceCallDefinition', 'Service Call', 
"To call remote services", 'eip,routing', [
-        new PropertyMeta('id', 'Id', "Sets the id of this node", 'string', '', 
'', false, false, false, false, '', ''),
-        new PropertyMeta('description', 'Description', "Sets the description 
of this node", 'string', '', '', false, false, false, false, '', ''),
-        new PropertyMeta('disabled', 'Disabled', "Whether to disable this EIP 
from the route during build time. Once an EIP has been disabled then it cannot 
be enabled later at runtime.", 'boolean', '', 'false', false, false, false, 
false, 'advanced', ''),
-        new PropertyMeta('name', 'Name', "Sets the name of the service to 
use", 'string', '', '', true, false, false, false, '', ''),
-        new PropertyMeta('expression', 'Expression', "Configures the 
Expression using the given configuration.", 'ExpressionDefinition', '', '', 
false, false, false, true, '', ''),
-        new PropertyMeta('uri', 'Uri', "The uri of the endpoint to send to. 
The uri can be dynamic computed using the 
org.apache.camel.language.simple.SimpleLanguage expression.", 'string', '', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('component', 'Component', "The component to use.", 
'string', '', 'http', false, false, false, false, '', ''),
-        new PropertyMeta('pattern', 'Pattern', "Sets the optional 
ExchangePattern used to invoke this endpoint", 'string', 'InOnly, InOut', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('configurationRef', 'Configuration Ref', "Refers to a 
ServiceCall configuration to use", 'string', '', '', false, false, false, 
false, '', ''),
-        new PropertyMeta('serviceDiscoveryRef', 'Service Discovery Ref', "Sets 
a reference to a custom ServiceDiscovery to use.", 'string', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('serviceFilterRef', 'Service Filter Ref', "Sets a 
reference to a custom ServiceFilter to use.", 'string', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('serviceChooserRef', 'Service Chooser Ref', "Sets a 
reference to a custom ServiceChooser to use.", 'string', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('loadBalancerRef', 'Load Balancer Ref', "Sets a 
reference to a custom ServiceLoadBalancer to use.", 'string', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('expressionRef', 'Expression Ref', "Set a reference 
to a custom Expression to use.", 'string', '', '', false, false, false, false, 
'', ''),
-    ]),
     new ElementMeta('intercept', 'InterceptDefinition', 'Intercept', 
"Intercepts a message at each step in the route", 'configuration', [
         new PropertyMeta('id', 'Id', "Sets the id of this node", 'string', '', 
'', false, false, false, false, '', ''),
         new PropertyMeta('description', 'Description', "Sets the description 
of this node", 'string', '', '', false, false, false, false, '', ''),
@@ -1954,23 +1903,6 @@ export const CamelModelMetadata: ElementMeta[] = [
         new PropertyMeta('properties', 'Properties', "Optional properties to 
set on the created bean.", 'object', '', '', false, false, false, false, '', 
''),
         new PropertyMeta('script', 'Script', "The script to execute that 
creates the bean when using scripting languages. If the script use the prefix 
resource: such as resource:classpath:com/foo/myscript.groovy, 
resource:file:/var/myscript.groovy, then its loaded from the external 
resource.", 'string', '', '', false, false, false, false, 'advanced', ''),
     ]),
-    new ElementMeta('serviceCallConfiguration', 
'ServiceCallConfigurationDefinition', 'Service Call Configuration', "Remote 
service call configuration", 'routing,cloud', [
-        new PropertyMeta('id', 'Id', "The id of this node", 'string', '', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('expression', 'Expression', "Configures the 
Expression using the given configuration.", 'ExpressionDefinition', '', '', 
false, false, false, true, '', ''),
-        new PropertyMeta('uri', 'Uri', "The uri of the endpoint to send to. 
The uri can be dynamic computed using the simple language expression.", 
'string', '', '', false, false, false, false, '', ''),
-        new PropertyMeta('component', 'Component', "The component to use.", 
'string', '', 'http', false, false, false, false, '', ''),
-        new PropertyMeta('pattern', 'Pattern', "Sets the optional 
ExchangePattern used to invoke this endpoint", 'string', 'InOnly, InOut', '', 
false, false, false, false, '', ''),
-        new PropertyMeta('serviceDiscoveryRef', 'Service Discovery Ref', "Sets 
a reference to a custom ServiceDiscovery to use.", 'string', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('serviceFilterRef', 'Service Filter Ref', "Sets a 
reference to a custom ServiceFilter to use.", 'string', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('serviceChooserRef', 'Service Chooser Ref', "Sets a 
reference to a custom ServiceChooser to use.", 'string', '', '', false, false, 
false, false, '', ''),
-        new PropertyMeta('loadBalancerRef', 'Load Balancer Ref', "Sets a 
reference to a custom ServiceLoadBalancer to use.", 'string', '', '', false, 
false, false, false, '', ''),
-        new PropertyMeta('expressionRef', 'Expression Ref', "Set a reference 
to a custom Expression to use.", 'string', '', '', false, false, false, false, 
'', ''),
-        new PropertyMeta('blacklistServiceFilter', 'blacklistServiceFilter', 
"blacklistServiceFilter", 'BlacklistServiceCallServiceFilterConfiguration', '', 
'', false, false, false, true, '', ''),
-        new PropertyMeta('combinedServiceFilter', 'combinedServiceFilter', 
"combinedServiceFilter", 'CombinedServiceCallServiceFilterConfiguration', '', 
'', false, false, false, true, '', ''),
-        new PropertyMeta('customServiceFilter', 'customServiceFilter', 
"customServiceFilter", 'CustomServiceCallServiceFilterConfiguration', '', '', 
false, false, false, true, '', ''),
-        new PropertyMeta('healthyServiceFilter', 'healthyServiceFilter', 
"healthyServiceFilter", 'HealthyServiceCallServiceFilterConfiguration', '', '', 
false, false, false, true, '', ''),
-        new PropertyMeta('passThroughServiceFilter', 
'passThroughServiceFilter', "passThroughServiceFilter", 
'PassThroughServiceCallServiceFilterConfiguration', '', '', false, false, 
false, true, '', ''),
-    ]),
     new ElementMeta('dataFormats', 'DataFormatsDefinition', 'Data formats', 
"Configure data formats.", 'dataformat,transformation', [
         new PropertyMeta('asn1', 'asn1', "asn1", 'ASN1DataFormat', '', '', 
false, false, false, true, '', ''),
         new PropertyMeta('avro', 'avro', "avro", 'AvroDataFormat', '', '', 
false, false, false, true, '', ''),
@@ -2096,7 +2028,6 @@ export const CamelModelMetadata: ElementMeta[] = [
         new PropertyMeta('header', 'header', "header", 'HeaderExpression', '', 
'', false, false, false, true, '', ''),
         new PropertyMeta('hl7terser', 'hl7terser', "hl7terser", 
'Hl7TerserExpression', '', '', false, false, false, true, '', ''),
         new PropertyMeta('java', 'java', "java", 'JavaExpression', '', '', 
false, false, false, true, '', ''),
-        new PropertyMeta('joor', 'joor', "joor", 'JoorExpression', '', '', 
false, false, false, true, '', ''),
         new PropertyMeta('jq', 'jq', "jq", 'JqExpression', '', '', false, 
false, false, true, '', ''),
         new PropertyMeta('js', 'js', "js", 'JavaScriptExpression', '', '', 
false, false, false, true, '', ''),
         new PropertyMeta('jsonpath', 'jsonpath', "jsonpath", 
'JsonPathExpression', '', '', false, false, false, true, '', ''),
diff --git 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/AbstractGenerator.java
 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/AbstractGenerator.java
index 64cbd16a..1be03c13 100644
--- 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/AbstractGenerator.java
+++ 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/AbstractGenerator.java
@@ -40,6 +40,8 @@ import java.util.stream.Collectors;
 
 public class AbstractGenerator {
 
+    public static final List<String> deprecatedClasses = new ArrayList<>();
+
     Logger LOGGER = Logger.getLogger(AbstractGenerator.class.getName());
     protected static boolean print = false;
 
@@ -140,14 +142,18 @@ public class AbstractGenerator {
                 JsonObject val = obj.getJsonObject("properties");
                 properties.putAll(getJsonObjectProperties(val));
             } else if (key.equals("anyOf")) {
-                JsonArray vals = 
obj.getJsonArray("anyOf").getJsonObject(0).getJsonArray("oneOf");
-                for (int i = 0; i < vals.size(); i++) {
-                    JsonObject data = vals.getJsonObject(i);
-                    if (!data.containsKey("not") && data.containsKey("type")) {
-                        JsonObject val = data.getJsonObject("properties");
-                        properties.putAll(getJsonObjectProperties(val));
+                JsonArray anyOfs = obj.getJsonArray("anyOf");
+                anyOfs.forEach(o -> {
+                    JsonObject ob = (JsonObject) o;
+                    JsonArray vals = ob.getJsonArray("oneOf");
+                    for (int i = 0; i < vals.size(); i++) {
+                        JsonObject data = vals.getJsonObject(i);
+                        if (!data.containsKey("not") && 
data.containsKey("type")) {
+                            JsonObject val = data.getJsonObject("properties");
+                            properties.putAll(getJsonObjectProperties(val));
+                        }
                     }
-                }
+                });
             }
         });
         return properties;
@@ -282,6 +288,8 @@ public class AbstractGenerator {
     protected boolean excludeProperty(String stepName, String name, String 
attributeType) {
         var hasModelInCatalog = hasModelInCatalog(stepName);
         var hasInCatalog = hasPropertyInCatalogIgnoreCase(stepName, name);
+        var clazz = attributeType.contains("|") ? 
attributeType.split("\\|")[0].trim() : "";
+
         if (hasModelInCatalog
                 && !hasInCatalog
                 && !attributeType.contains("[]")
@@ -289,8 +297,12 @@ public class AbstractGenerator {
                 && !attributeType.contains("Definition")
                 && !attributeType.contains("DataFormat")
                 && !attributeType.contains("FilterConfiguration")
+                && !attributeType.contains("BatchResequencerConfig")
+                && !attributeType.contains("StreamResequencerConfig")
                 && !attributeType.contains("Expression")) {
             return true;
+        } else if (getDeprecatedClasses().contains(clazz)) {
+            return true;
         }
         return false;
     }
@@ -416,7 +428,9 @@ public class AbstractGenerator {
         List<String> result = new ArrayList<>();
         definitions.getMap().forEach((s, o) -> {
             if (s.startsWith(filter) && 
!s.equals("org.apache.camel.dsl.yaml.deserializers.RouteFromDefinitionDeserializer"))
 {
-                result.add(s);
+                if (!getDeprecatedClasses().contains(classSimple(s))) {
+                    result.add(s);
+                }
             }
         });
         return result;
@@ -436,7 +450,9 @@ public class AbstractGenerator {
             } else if (object instanceof String && k.equals("$ref") && 
!object.toString().contains(".deserializers.")) {
                 String ref = jsonObject.getString(k);
                 String className = classSimple(ref);
-                result.put(className, key);
+                if (!getDeprecatedClasses().contains(className)) {
+                    result.put(className, key);
+                }
             }
         });
         return result;
@@ -475,7 +491,9 @@ public class AbstractGenerator {
         properties.getMap().forEach((key, o) -> {
             String ref = ((Map) o).get("$ref").toString();
             String className = classSimple(ref);
-            result.put(className, key);
+            if (!getDeprecatedClasses().contains(className)) {
+                result.put(className, key);
+            }
         });
         return result;
     }
@@ -487,4 +505,22 @@ public class AbstractGenerator {
     protected boolean isAttributeRefArray(JsonObject attribute) {
         return attribute.containsKey("type") && 
attribute.getString("type").equals("array");
     }
+
+    protected List<String> getDeprecatedClasses() {
+        if (deprecatedClasses.isEmpty()) {
+            String camelYamlDSL = getCamelYamlDSL();
+            JsonObject definitions = new 
JsonObject(camelYamlDSL).getJsonObject("items").getJsonObject("definitions");
+
+            definitions.getMap().forEach((s, o) -> {
+                if (s.startsWith("org.apache.camel") && 
!s.equals("org.apache.camel.dsl.yaml.deserializers.RouteFromDefinitionDeserializer"))
 {
+                    JsonObject classObject = definitions.getJsonObject(s);
+                    if (classObject.containsKey("deprecated") && 
classObject.getBoolean("deprecated")) {
+                        String className = classSimple(s);
+                        deprecatedClasses.add(className);
+                    }
+                }
+            });
+        }
+        return deprecatedClasses;
+    }
 }
diff --git 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionApiGenerator.java
 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionApiGenerator.java
index eba2bb46..2b58013d 100644
--- 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionApiGenerator.java
+++ 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionApiGenerator.java
@@ -48,7 +48,8 @@ public final class CamelDefinitionApiGenerator extends 
AbstractGenerator {
         String camelYamlDSL = getCamelYamlDSL();
         JsonObject definitions = new 
JsonObject(camelYamlDSL).getJsonObject("items").getJsonObject("definitions");
 
-        List<String> modelList = getClasses(definitions, "org.apache.camel");
+        List<String> modelList = getClasses(definitions, 
"org.apache.camel").stream()
+                .filter(s -> 
!getDeprecatedClasses().contains(classSimple(s))).collect(toList()); // filter 
deprecated
         modelList.forEach(classFullName -> {
             String className = classSimple(classFullName);
             camelModel.append("    ").append(className).append(",\n");
@@ -72,8 +73,7 @@ public final class CamelDefinitionApiGenerator extends 
AbstractGenerator {
                 "       const newBody = CamelUtil.camelizeBody(name, body, 
clone);\n" +
                 "       switch (name) { \n"
         );
-        getClasses(definitions, "org.apache.camel")
-                .forEach(className -> {
+        modelList.forEach(className -> {
                     String code = String.format("            case '%1$s': 
return CamelDefinitionApi.create%1$s(newBody);\n", classSimple(className));
                     cs.append(code);
                 });
@@ -158,6 +158,7 @@ public final class CamelDefinitionApiGenerator extends 
AbstractGenerator {
                     && 
!getAttributeClass(aValue).equals("SagaActionUriDefinition") // 
SagaActionUriDefinition is exception
                     && !getAttributeClass(aValue).equals("ToDefinition") // 
exception for ToDefinition (in REST Methods)
                     && 
!getAttributeClass(aValue).equals("ToDynamicDefinition") // exception for 
ToDynamicDefinition (in REST Methods)
+                    && 
!getDeprecatedClasses().contains(getAttributeClass(aValue)) // exception for 
deprecated classes
             ) {
                 String attributeClass = getAttributeClass(aValue);
                 String template = attributeClass.equals("ExpressionDefinition")
diff --git 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionGenerator.java
 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionGenerator.java
index 08951974..12595001 100644
--- 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionGenerator.java
+++ 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionGenerator.java
@@ -46,15 +46,11 @@ public final class CamelDefinitionGenerator extends 
AbstractGenerator {
 
         JsonObject definitions = new 
JsonObject(camelYamlDSL).getJsonObject("items").getJsonObject("definitions");
 
-        // Prepare stepNames map
-        Map<String, String> stepNames = getProcessorStepNameMap();
-
         List<String> modelList = getClasses(definitions, "org.apache.camel");
-        modelList.forEach(className -> {
-            String model = generateModel(className, 
definitions.getJsonObject(className), definitions, getDslMetadata());
+        modelList.forEach(classFullName -> {
+            String model = generateModel(classFullName, 
definitions.getJsonObject(classFullName), definitions, getDslMetadata());
             camelModel.append(model).append(System.lineSeparator());
         });
-
         writeFileText(targetModel, camelModel.toString());
     }
 
diff --git 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionYamlStepGenerator.java
 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionYamlStepGenerator.java
index 12dad4e4..af1ede3c 100644
--- 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionYamlStepGenerator.java
+++ 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionYamlStepGenerator.java
@@ -107,9 +107,10 @@ public final class CamelDefinitionYamlStepGenerator 
extends AbstractGenerator {
             JsonObject aValue = properties.get(aName);
             boolean attributeIsArray = isAttributeRefArray(aValue);
             String attributeArrayClass = getAttributeArrayClass(aName, aValue);
+
             if (attributeIsArray && aName.equals("steps") && ! 
className.equals("ChoiceDefinition") && ! className.equals("SwitchDefinition") 
&& ! className.equals("KameletDefinition")) {
                 attrs.put(aName, "        def.steps = 
CamelDefinitionYamlStep.readSteps(element?.steps);\n");
-            } else if (attributeIsArray && !aName.equals("steps") && 
!attributeArrayClass.equals("string")) {
+            } else if (attributeIsArray && !aName.equals("steps") && 
!attributeArrayClass.equals("string") && 
!getDeprecatedClasses().contains(attributeArrayClass)) {
                 String format = Arrays.asList("intercept", "interceptFrom", 
"interceptSendToEndpoint", "onCompletion", "onException").contains(aName)
                         ? "        def.%1$s = element && element?.%1$s ? 
element?.%1$s.map((x:any) => CamelDefinitionYamlStep.read%2$s(x.%1$s)) :[]; \n"
                         : "        def.%1$s = element && element?.%1$s ? 
element?.%1$s.map((x:any) => CamelDefinitionYamlStep.read%2$s(x)) :[]; \n";
@@ -135,6 +136,7 @@ public final class CamelDefinitionYamlStepGenerator extends 
AbstractGenerator {
                     && 
!getAttributeClass(aValue).equals("SagaActionUriDefinition") // 
SagaActionUriDefinition is exception
                     && !getAttributeClass(aValue).equals("ToDefinition") // 
exception for ToDefinition (in REST Methods)
                     && 
!getAttributeClass(aValue).equals("ToDynamicDefinition") // exception for 
ToDynamicDefinition (in REST Methods)
+                    && 
!getDeprecatedClasses().contains(getAttributeClass(aValue)) // exception for 
deprecated classes
             ) {
                 String code = String.format(
                         "        if (element?.%1$s !== undefined) { \n" +
diff --git 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelMetadataGenerator.java
 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelMetadataGenerator.java
index 257dafd4..5226f972 100644
--- 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelMetadataGenerator.java
+++ 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelMetadataGenerator.java
@@ -81,14 +81,16 @@ public final class CamelMetadataGenerator extends 
AbstractGenerator {
             JsonObject model = new JsonObject(json).getJsonObject("model");
             String title = model.getString("title");
             String description = model.getString("description");
-            camelModel.append(String.format("    ['%s','%s',\"%s\"],\n", name, 
title, description));
+            if (!name.equalsIgnoreCase("joor")) { // exception for deprecated
+                camelModel.append(String.format("    ['%s','%s',\"%s\"],\n", 
name, title, description));
+            }
         });
         camelModel.append("]\n\n");
 
         // Generate LanguageMetadata
         classProps.clear();
         definitions.getMap().forEach((s, o) -> {
-            if (s.startsWith("org.apache.camel.model.language")) {
+            if (s.startsWith("org.apache.camel.model.language") && 
!s.endsWith("ExpressionDefinition")) {
                 String name = classSimple(s);
                 JsonObject obj = getDefinition(definitions, s);
                 JsonObject props = obj.containsKey("oneOf") ? 
obj.getJsonArray("oneOf").getJsonObject(1).getJsonObject("properties") : 
obj.getJsonObject("properties");
@@ -107,9 +109,11 @@ public final class CamelMetadataGenerator extends 
AbstractGenerator {
         defsMap.forEach((s, o) -> {
             String ref = ((Map<?, ?>) o).get("$ref").toString();
             String name = classSimple(ref);
-            JsonObject obj = getDefinition(definitions, ref);
-            JsonObject props = obj.containsKey("oneOf") ? 
obj.getJsonArray("oneOf").getJsonObject(1).getJsonObject("properties") : 
obj.getJsonObject("properties");
-            classProps.put(name, props);
+            if (!getDeprecatedClasses().contains(name)) {
+                JsonObject obj = getDefinition(definitions, ref);
+                JsonObject props = obj.containsKey("oneOf") ? 
obj.getJsonArray("oneOf").getJsonObject(1).getJsonObject("properties") : 
obj.getJsonObject("properties");
+                classProps.put(name, props);
+            }
         });
 
 
@@ -150,7 +154,9 @@ public final class CamelMetadataGenerator extends 
AbstractGenerator {
         StringBuilder code = new StringBuilder();
         code.append(String.format("export const %s: ElementMeta[] = [\n", 
className));
         classProps.entrySet().stream().filter(entry -> {
-            if (entry.getValue() == null) {
+            if (getDeprecatedClasses().contains(entry.getKey())) {
+                return false;
+            } else if (entry.getValue() == null) {
                 return false;
             } else {
                 return true;
@@ -203,10 +209,14 @@ public final class CamelMetadataGenerator extends 
AbstractGenerator {
                         defaultValue = defaultValue.length() == 1 && 
defaultValue.toCharArray()[0] == '\\' ? "\\\\" : defaultValue;
                         String labels = p != null && p.containsKey("label") ? 
p.getString("label") : "";
                         String javaType = getJavaType(name, p);
-                        if (name.equals("ProcessDefinition") && 
pname.equals("ref")) javaType = "org.apache.camel.Processor"; // exception for 
processor
-                        code.append(String.format(
-                                "        new PropertyMeta('%s', '%s', \"%s\", 
'%s', '%s', '%s', %b, %b, %b, %b, '%s', '%s'),\n",
-                                pname, displayName, desc, pm.type, en, 
defaultValue, required, secret, pm.isArray, (pm.isArray ? pm.type : 
pm.isObject), labels, javaType));
+                        if (name.equals("ProcessDefinition") && 
pname.equals("ref")) {
+                            javaType = "org.apache.camel.Processor";
+                        } // exception for processor
+                        if (!getDeprecatedClasses().contains(pm.type)) {
+                            code.append(String.format(
+                                    "        new PropertyMeta('%s', '%s', 
\"%s\", '%s', '%s', '%s', %b, %b, %b, %b, '%s', '%s'),\n",
+                                    pname, displayName, desc, pm.type, en, 
defaultValue, required, secret, pm.isArray, (pm.isArray ? pm.type : 
pm.isObject), labels, javaType));
+                        }
                     }
                 });
                 code.append("    ]),\n");

Reply via email to