You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2021/02/06 12:05:03 UTC

[camel] 10/18: CAMEL-16102: Source code generate @InvokeOnHeader for reflection free

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

davsclaus pushed a commit to branch on-header
in repository https://gitbox.apache.org/repos/asf/camel.git

commit f3ed964b107c8eb25460fc5b45e3f66f11eecc4a
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Feb 4 19:45:37 2021 +0100

    CAMEL-16102: Source code generate @InvokeOnHeader for reflection free
---
 ...CaffeineCacheProducerInvokeOnHeaderFactory.java |  16 +-
 ...eineLoadCacheProducerInvokeOnHeaderFactory.java |  16 +-
 .../ConsulAgentProducerInvokeOnHeaderFactory.java  |   4 +-
 ...ConsulCatalogProducerInvokeOnHeaderFactory.java |  12 +-
 ...ulCoordinatesProducerInvokeOnHeaderFactory.java |   4 +-
 .../ConsulHealthProducerInvokeOnHeaderFactory.java |   8 +-
 ...onsulKeyValueProducerInvokeOnHeaderFactory.java |  20 +-
 ...PreparedQueryProducerInvokeOnHeaderFactory.java |   4 +-
 ...ConsulSessionProducerInvokeOnHeaderFactory.java |  12 +-
 .../corda/CordaProducerInvokeOnHeaderFactory.java  | 116 +++++------
 .../EhcacheProducerInvokeOnHeaderFactory.java      |  12 +-
 ....apache.camel.component.ehcache.EhcacheProducer |   2 +-
 ....infinispan.embedded.InfinispanEmbeddedProducer |   2 +-
 ...nent.infinispan.remote.InfinispanRemoteProducer |   2 +-
 ...ujiServiceNowProducerInvokeOnHeaderFactory.java |  27 +++
 ...nkiServiceNowProducerInvokeOnHeaderFactory.java |  34 +++
 ...servicenow.releases.fuji.FujiServiceNowProducer |   2 +
 ...ow.releases.helsinki.HelsinkiServiceNowProducer |   2 +
 .../releases/fuji/FujiServiceNowProducer.java      |  27 ++-
 .../helsinki/HelsinkiServiceNowProducer.java       |  85 +++++++-
 .../web3j/Web3jProducerInvokeOnHeaderFactory.java  | 228 ++++++++++-----------
 .../packaging/GenerateInvokeOnHeaderMojo.java      |  11 +-
 22 files changed, 395 insertions(+), 251 deletions(-)

diff --git a/components/camel-caffeine/src/generated/java/org/apache/camel/component/caffeine/cache/CaffeineCacheProducerInvokeOnHeaderFactory.java b/components/camel-caffeine/src/generated/java/org/apache/camel/component/caffeine/cache/CaffeineCacheProducerInvokeOnHeaderFactory.java
index 3503a5e..969d830 100644
--- a/components/camel-caffeine/src/generated/java/org/apache/camel/component/caffeine/cache/CaffeineCacheProducerInvokeOnHeaderFactory.java
+++ b/components/camel-caffeine/src/generated/java/org/apache/camel/component/caffeine/cache/CaffeineCacheProducerInvokeOnHeaderFactory.java
@@ -16,20 +16,20 @@ public class CaffeineCacheProducerInvokeOnHeaderFactory implements InvokeOnHeade
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.caffeine.cache.CaffeineCacheProducer target = (org.apache.camel.component.caffeine.cache.CaffeineCacheProducer) obj;
         switch (key) {
-        case "invalidate":
-        case "INVALIDATE": target.onInvalidate(exchange.getMessage()); return null;
-        case "get_all":
-        case "GET_ALL": target.onGetAll(exchange.getMessage()); return null;
         case "cleanup":
         case "CLEANUP": target.onCleanUp(exchange.getMessage()); return null;
-        case "put":
-        case "PUT": target.onPut(exchange.getMessage()); return null;
-        case "put_all":
-        case "PUT_ALL": target.onPutAll(exchange.getMessage()); return null;
         case "get":
         case "GET": target.onGet(exchange.getMessage()); return null;
+        case "get_all":
+        case "GET_ALL": target.onGetAll(exchange.getMessage()); return null;
+        case "invalidate":
+        case "INVALIDATE": target.onInvalidate(exchange.getMessage()); return null;
         case "invalidate_all":
         case "INVALIDATE_ALL": target.onInvalidateAll(exchange.getMessage()); return null;
+        case "put":
+        case "PUT": target.onPut(exchange.getMessage()); return null;
+        case "put_all":
+        case "PUT_ALL": target.onPutAll(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/components/camel-caffeine/src/generated/java/org/apache/camel/component/caffeine/load/CaffeineLoadCacheProducerInvokeOnHeaderFactory.java b/components/camel-caffeine/src/generated/java/org/apache/camel/component/caffeine/load/CaffeineLoadCacheProducerInvokeOnHeaderFactory.java
index 1bac041..e5d840c 100644
--- a/components/camel-caffeine/src/generated/java/org/apache/camel/component/caffeine/load/CaffeineLoadCacheProducerInvokeOnHeaderFactory.java
+++ b/components/camel-caffeine/src/generated/java/org/apache/camel/component/caffeine/load/CaffeineLoadCacheProducerInvokeOnHeaderFactory.java
@@ -16,20 +16,20 @@ public class CaffeineLoadCacheProducerInvokeOnHeaderFactory implements InvokeOnH
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.caffeine.load.CaffeineLoadCacheProducer target = (org.apache.camel.component.caffeine.load.CaffeineLoadCacheProducer) obj;
         switch (key) {
-        case "get_all":
-        case "GET_ALL": target.onGetAll(exchange.getMessage()); return null;
+        case "cleanup":
+        case "CLEANUP": target.onCleanUp(exchange.getMessage()); return null;
         case "get":
         case "GET": target.onGet(exchange.getMessage()); return null;
+        case "get_all":
+        case "GET_ALL": target.onGetAll(exchange.getMessage()); return null;
+        case "invalidate":
+        case "INVALIDATE": target.onInvalidate(exchange.getMessage()); return null;
+        case "invalidate_all":
+        case "INVALIDATE_ALL": target.onInvalidateAll(exchange.getMessage()); return null;
         case "put":
         case "PUT": target.onPut(exchange.getMessage()); return null;
         case "put_all":
         case "PUT_ALL": target.onPutAll(exchange.getMessage()); return null;
-        case "cleanup":
-        case "CLEANUP": target.onCleanUp(exchange.getMessage()); return null;
-        case "invalidate_all":
-        case "INVALIDATE_ALL": target.onInvalidateAll(exchange.getMessage()); return null;
-        case "invalidate":
-        case "INVALIDATE": target.onInvalidate(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulAgentProducerInvokeOnHeaderFactory.java b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulAgentProducerInvokeOnHeaderFactory.java
index 51699b1..ac38091 100644
--- a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulAgentProducerInvokeOnHeaderFactory.java
+++ b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulAgentProducerInvokeOnHeaderFactory.java
@@ -18,12 +18,12 @@ public class ConsulAgentProducerInvokeOnHeaderFactory implements InvokeOnHeaderS
         switch (key) {
         case "agent":
         case "AGENT": return target.invokeAgent(exchange.getMessage());
-        case "services":
-        case "SERVICES": return target.invokeServices(exchange.getMessage());
         case "checks":
         case "CHECKS": return target.invokeChecks(exchange.getMessage());
         case "members":
         case "MEMBERS": return target.invokeMembers(exchange.getMessage());
+        case "services":
+        case "SERVICES": return target.invokeServices(exchange.getMessage());
         default: return null;
         }
     }
diff --git a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulCatalogProducerInvokeOnHeaderFactory.java b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulCatalogProducerInvokeOnHeaderFactory.java
index dada91a..6f29a57 100644
--- a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulCatalogProducerInvokeOnHeaderFactory.java
+++ b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulCatalogProducerInvokeOnHeaderFactory.java
@@ -18,18 +18,18 @@ public class ConsulCatalogProducerInvokeOnHeaderFactory implements InvokeOnHeade
         switch (key) {
         case "deregister":
         case "DEREGISTER": target.deregister(exchange.getMessage()); return null;
+        case "get_node":
+        case "GET_NODE": target.getNode(exchange.getMessage()); return null;
         case "get_service":
         case "GET_SERVICE": target.getService(exchange.getMessage()); return null;
-        case "register":
-        case "REGISTER": target.register(exchange.getMessage()); return null;
+        case "list_datacenters":
+        case "LIST_DATACENTERS": target.listDatacenters(exchange.getMessage()); return null;
         case "list_nodes":
         case "LIST_NODES": target.listNodes(exchange.getMessage()); return null;
-        case "get_node":
-        case "GET_NODE": target.getNode(exchange.getMessage()); return null;
         case "list_services":
         case "LIST_SERVICES": target.listServices(exchange.getMessage()); return null;
-        case "list_datacenters":
-        case "LIST_DATACENTERS": target.listDatacenters(exchange.getMessage()); return null;
+        case "register":
+        case "REGISTER": target.register(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulCoordinatesProducerInvokeOnHeaderFactory.java b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulCoordinatesProducerInvokeOnHeaderFactory.java
index 4bac375..b853a79 100644
--- a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulCoordinatesProducerInvokeOnHeaderFactory.java
+++ b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulCoordinatesProducerInvokeOnHeaderFactory.java
@@ -16,10 +16,10 @@ public class ConsulCoordinatesProducerInvokeOnHeaderFactory implements InvokeOnH
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.consul.endpoint.ConsulCoordinatesProducer target = (org.apache.camel.component.consul.endpoint.ConsulCoordinatesProducer) obj;
         switch (key) {
-        case "nodes":
-        case "NODES": target.nodes(exchange.getMessage()); return null;
         case "datacenters":
         case "DATACENTERS": target.datacenters(exchange.getMessage()); return null;
+        case "nodes":
+        case "NODES": target.nodes(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulHealthProducerInvokeOnHeaderFactory.java b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulHealthProducerInvokeOnHeaderFactory.java
index fba734d..4369f0b 100644
--- a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulHealthProducerInvokeOnHeaderFactory.java
+++ b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulHealthProducerInvokeOnHeaderFactory.java
@@ -16,14 +16,14 @@ public class ConsulHealthProducerInvokeOnHeaderFactory implements InvokeOnHeader
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.consul.endpoint.ConsulHealthProducer target = (org.apache.camel.component.consul.endpoint.ConsulHealthProducer) obj;
         switch (key) {
+        case "checks":
+        case "CHECKS": target.checks(exchange.getMessage()); return null;
         case "node_checks":
         case "NODE_CHECKS": target.nodeChecks(exchange.getMessage()); return null;
-        case "service_instances":
-        case "SERVICE_INSTANCES": target.serviceInstances(exchange.getMessage()); return null;
         case "service_checks":
         case "SERVICE_CHECKS": target.serviceChecks(exchange.getMessage()); return null;
-        case "checks":
-        case "CHECKS": target.checks(exchange.getMessage()); return null;
+        case "service_instances":
+        case "SERVICE_INSTANCES": target.serviceInstances(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulKeyValueProducerInvokeOnHeaderFactory.java b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulKeyValueProducerInvokeOnHeaderFactory.java
index acc7c55..cf1fbef 100644
--- a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulKeyValueProducerInvokeOnHeaderFactory.java
+++ b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulKeyValueProducerInvokeOnHeaderFactory.java
@@ -16,24 +16,24 @@ public class ConsulKeyValueProducerInvokeOnHeaderFactory implements InvokeOnHead
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.consul.endpoint.ConsulKeyValueProducer target = (org.apache.camel.component.consul.endpoint.ConsulKeyValueProducer) obj;
         switch (key) {
-        case "get_values":
-        case "GET_VALUES": target.getValues(exchange.getMessage()); return null;
+        case "delete_key":
+        case "DELETE_KEY": target.deleteKey(exchange.getMessage()); return null;
+        case "delete_keys":
+        case "DELETE_KEYS": target.deleteKeys(exchange.getMessage()); return null;
         case "get_keys":
         case "GET_KEYS": target.getKeys(exchange.getMessage()); return null;
         case "get_sessions":
         case "GET_SESSIONS": target.getSessions(exchange.getMessage()); return null;
-        case "delete_keys":
-        case "DELETE_KEYS": target.deleteKeys(exchange.getMessage()); return null;
-        case "unlock":
-        case "UNLOCK": target.unlock(exchange.getMessage()); return null;
-        case "delete_key":
-        case "DELETE_KEY": target.deleteKey(exchange.getMessage()); return null;
-        case "put":
-        case "PUT": target.put(exchange.getMessage()); return null;
         case "get_value":
         case "GET_VALUE": target.getValue(exchange.getMessage()); return null;
+        case "get_values":
+        case "GET_VALUES": target.getValues(exchange.getMessage()); return null;
         case "lock":
         case "LOCK": target.lock(exchange.getMessage()); return null;
+        case "put":
+        case "PUT": target.put(exchange.getMessage()); return null;
+        case "unlock":
+        case "UNLOCK": target.unlock(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulPreparedQueryProducerInvokeOnHeaderFactory.java b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulPreparedQueryProducerInvokeOnHeaderFactory.java
index 31d2f67..4a42005 100644
--- a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulPreparedQueryProducerInvokeOnHeaderFactory.java
+++ b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulPreparedQueryProducerInvokeOnHeaderFactory.java
@@ -16,12 +16,12 @@ public class ConsulPreparedQueryProducerInvokeOnHeaderFactory implements InvokeO
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.consul.endpoint.ConsulPreparedQueryProducer target = (org.apache.camel.component.consul.endpoint.ConsulPreparedQueryProducer) obj;
         switch (key) {
+        case "create":
+        case "CREATE": target.create(exchange.getMessage()); return null;
         case "execute":
         case "EXECUTE": target.execute(exchange.getMessage()); return null;
         case "get":
         case "GET": target.get(exchange.getMessage()); return null;
-        case "create":
-        case "CREATE": target.create(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulSessionProducerInvokeOnHeaderFactory.java b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulSessionProducerInvokeOnHeaderFactory.java
index bd67de1..6b55ad4 100644
--- a/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulSessionProducerInvokeOnHeaderFactory.java
+++ b/components/camel-consul/src/generated/java/org/apache/camel/component/consul/endpoint/ConsulSessionProducerInvokeOnHeaderFactory.java
@@ -16,16 +16,16 @@ public class ConsulSessionProducerInvokeOnHeaderFactory implements InvokeOnHeade
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.consul.endpoint.ConsulSessionProducer target = (org.apache.camel.component.consul.endpoint.ConsulSessionProducer) obj;
         switch (key) {
-        case "renew":
-        case "RENEW": target.renew(exchange.getMessage()); return null;
-        case "destroy":
-        case "DESTROY": target.destroy(exchange.getMessage()); return null;
         case "create":
         case "CREATE": target.create(exchange.getMessage()); return null;
-        case "list":
-        case "LIST": target.list(exchange.getMessage()); return null;
+        case "destroy":
+        case "DESTROY": target.destroy(exchange.getMessage()); return null;
         case "info":
         case "INFO": target.info(exchange.getMessage()); return null;
+        case "list":
+        case "LIST": target.list(exchange.getMessage()); return null;
+        case "renew":
+        case "RENEW": target.renew(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/components/camel-corda/src/generated/java/org/apache/camel/component/corda/CordaProducerInvokeOnHeaderFactory.java b/components/camel-corda/src/generated/java/org/apache/camel/component/corda/CordaProducerInvokeOnHeaderFactory.java
index d6dbe89..b3bfe0b 100644
--- a/components/camel-corda/src/generated/java/org/apache/camel/component/corda/CordaProducerInvokeOnHeaderFactory.java
+++ b/components/camel-corda/src/generated/java/org/apache/camel/component/corda/CordaProducerInvokeOnHeaderFactory.java
@@ -16,82 +16,82 @@ public class CordaProducerInvokeOnHeaderFactory implements InvokeOnHeaderStrateg
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.corda.CordaProducer target = (org.apache.camel.component.corda.CordaProducer) obj;
         switch (key) {
+        case "accept_newnetwork_parameters":
+        case "ACCEPT_NEWNETWORK_PARAMETERS": target.acceptNewNetworkParameters(exchange.getMessage()); return null;
+        case "add_vault_transaction_note":
+        case "ADD_VAULT_TRANSACTION_NOTE": target.addVaultTransactionNote(exchange.getMessage()); return null;
+        case "attachment_exists":
+        case "ATTACHMENT_EXISTS": target.attachmentExists(exchange.getMessage()); return null;
+        case "clear_network_map_cache":
+        case "CLEAR_NETWORK_MAP_CACHE": target.clearNetworkMapCache(exchange.getMessage()); return null;
+        case "current_node_time":
+        case "CURRENT_NODE_TIME": target.currentNodeTime(exchange.getMessage()); return null;
+        case "get_protocol_version":
+        case "GET_PROTOCOL_VERSION": target.getProtocolVersion(exchange.getMessage()); return null;
+        case "get_vault_transaction_notes":
+        case "GET_VAULT_TRANSACTION_NOTES": target.getVaultTransactionNotes(exchange.getMessage()); return null;
+        case "is_flows_draining_mode_enabled":
+        case "IS_FLOWS_DRAINING_MODE_ENABLED": target.isFlowsDrainingModeEnabled(exchange.getMessage()); return null;
+        case "is_waiting_for_shutdown":
+        case "IS_WAITING_FOR_SHUTDOWN": target.isWaitingForShutdown(exchange.getMessage()); return null;
         case "kill_flow":
         case "KILL_FLOW": target.killFlow(exchange.getMessage()); return null;
-        case "registered_flows":
-        case "REGISTERED_FLOWS": target.registeredFlows(exchange.getMessage()); return null;
-        case "query_attachments":
-        case "QUERY_ATTACHMENTS": target.queryAttachments(exchange.getMessage()); return null;
-        case "vault_query_by_with_paging_spec":
-        case "VAULT_QUERY_BY_WITH_PAGING_SPEC": target.vaultQueryByWithPagingSpec(exchange.getMessage()); return null;
+        case "network_map_snapshot":
+        case "NETWORK_MAP_SNAPSHOT": target.networkMapSnapshot(exchange.getMessage()); return null;
+        case "network_parameters_feed":
+        case "NETWORK_PARAMETERS_FEED": target.networkParametersFeed(exchange.getMessage()); return null;
         case "node_info":
         case "NODE_INFO": target.nodeInfo(exchange.getMessage()); return null;
         case "node_info_from_party":
         case "NODE_INFO_FROM_PARTY": target.nodeInfoFromParty(exchange.getMessage()); return null;
-        case "well_known_party_from_anonymous":
-        case "WELL_KNOWN_PARTY_FROM_ANONYMOUS": target.wellKnownPartyFromAnonymous(exchange.getMessage()); return null;
-        case "network_parameters_feed":
-        case "NETWORK_PARAMETERS_FEED": target.networkParametersFeed(exchange.getMessage()); return null;
-        case "vault_query_by":
-        case "VAULT_QUERY_BY": target.vaultQueryBy(exchange.getMessage()); return null;
+        case "notary_identities":
+        case "NOTARY_IDENTITIES": target.notaryIdentities(exchange.getMessage()); return null;
+        case "notary_party_from_x500_name":
+        case "NOTARY_PARTY_FROM_X500_NAME": target.notaryPartyFromX500Name(exchange.getMessage()); return null;
+        case "open_attachment":
+        case "OPEN_ATTACHMENT": target.openAttachment(exchange.getMessage()); return null;
+        case "parties_from_key":
+        case "PARTIES_FROM_KEY": target.partyFromKey(exchange.getMessage()); return null;
         case "parties_from_name":
         case "PARTIES_FROM_NAME": target.partiesFromName(exchange.getMessage()); return null;
-        case "accept_newnetwork_parameters":
-        case "ACCEPT_NEWNETWORK_PARAMETERS": target.acceptNewNetworkParameters(exchange.getMessage()); return null;
+        case "query_attachments":
+        case "QUERY_ATTACHMENTS": target.queryAttachments(exchange.getMessage()); return null;
+        case "refresh_network_map_cache":
+        case "REFRESH_NETWORK_MAP_CACHE": target.refreshNetworkMapCache(exchange.getMessage()); return null;
+        case "registered_flows":
+        case "REGISTERED_FLOWS": target.registeredFlows(exchange.getMessage()); return null;
         case "set_flows_draining_mode_enabled":
         case "SET_FLOWS_DRAINING_MODE_ENABLED": target.setFlowsDrainingModeEnabled(exchange.getMessage()); return null;
-        case "is_flows_draining_mode_enabled":
-        case "IS_FLOWS_DRAINING_MODE_ENABLED": target.isFlowsDrainingModeEnabled(exchange.getMessage()); return null;
-        case "state_machine_snapshot":
-        case "STATE_MACHINE_SNAPSHOT": target.stateMachinesSnapshot(exchange.getMessage()); return null;
-        case "vault_query_by_criteria":
-        case "VAULT_QUERY_BY_CRITERIA": target.vaultQueryByCriteria(exchange.getMessage()); return null;
-        case "well_known_party_from_x500_name":
-        case "WELL_KNOWN_PARTY_FROM_X500_NAME": target.wellKnownPartyFromX500Name(exchange.getMessage()); return null;
-        case "wait_until_network_ready":
-        case "WAIT_UNTIL_NETWORK_READY": target.waitUntilNetworkReady(exchange.getMessage()); return null;
-        case "vault_query_by_with_sorting":
-        case "VAULT_QUERY_BY_WITH_SORTING": target.vaultQueryByWithSorting(exchange.getMessage()); return null;
-        case "get_protocol_version":
-        case "GET_PROTOCOL_VERSION": target.getProtocolVersion(exchange.getMessage()); return null;
+        case "shutdown":
+        case "SHUTDOWN": target.shutdown(exchange.getMessage()); return null;
         case "start_flow_dynamic":
         case "START_FLOW_DYNAMIC": target.startFlowDynamic(exchange.getMessage()); return null;
         case "state_machine_recorded_transaction_mapping_snapshot":
         case "STATE_MACHINE_RECORDED_TRANSACTION_MAPPING_SNAPSHOT": target.stateMachineRecordedTransactionMappingSnapshot(exchange.getMessage()); return null;
+        case "state_machine_snapshot":
+        case "STATE_MACHINE_SNAPSHOT": target.stateMachinesSnapshot(exchange.getMessage()); return null;
+        case "terminate":
+        case "TERMINATE": target.terminate(exchange.getMessage()); return null;
+        case "upload_attachment":
+        case "UPLOAD_ATTACHMENT": target.uploadAttachment(exchange.getMessage()); return null;
         case "upload_attachment_with_meta_data":
         case "UPLOAD_ATTACHMENT_WITH_META_DATA": target.uploadAttachmentWithMetadata(exchange.getMessage()); return null;
-        case "clear_network_map_cache":
-        case "CLEAR_NETWORK_MAP_CACHE": target.clearNetworkMapCache(exchange.getMessage()); return null;
         case "vault_query":
         case "VAULT_QUERY": target.vaultQuery(exchange.getMessage()); return null;
-        case "notary_identities":
-        case "NOTARY_IDENTITIES": target.notaryIdentities(exchange.getMessage()); return null;
-        case "network_map_snapshot":
-        case "NETWORK_MAP_SNAPSHOT": target.networkMapSnapshot(exchange.getMessage()); return null;
-        case "current_node_time":
-        case "CURRENT_NODE_TIME": target.currentNodeTime(exchange.getMessage()); return null;
-        case "open_attachment":
-        case "OPEN_ATTACHMENT": target.openAttachment(exchange.getMessage()); return null;
-        case "shutdown":
-        case "SHUTDOWN": target.shutdown(exchange.getMessage()); return null;
-        case "notary_party_from_x500_name":
-        case "NOTARY_PARTY_FROM_X500_NAME": target.notaryPartyFromX500Name(exchange.getMessage()); return null;
-        case "parties_from_key":
-        case "PARTIES_FROM_KEY": target.partyFromKey(exchange.getMessage()); return null;
-        case "add_vault_transaction_note":
-        case "ADD_VAULT_TRANSACTION_NOTE": target.addVaultTransactionNote(exchange.getMessage()); return null;
-        case "get_vault_transaction_notes":
-        case "GET_VAULT_TRANSACTION_NOTES": target.getVaultTransactionNotes(exchange.getMessage()); return null;
-        case "attachment_exists":
-        case "ATTACHMENT_EXISTS": target.attachmentExists(exchange.getMessage()); return null;
-        case "refresh_network_map_cache":
-        case "REFRESH_NETWORK_MAP_CACHE": target.refreshNetworkMapCache(exchange.getMessage()); return null;
-        case "upload_attachment":
-        case "UPLOAD_ATTACHMENT": target.uploadAttachment(exchange.getMessage()); return null;
-        case "is_waiting_for_shutdown":
-        case "IS_WAITING_FOR_SHUTDOWN": target.isWaitingForShutdown(exchange.getMessage()); return null;
-        case "terminate":
-        case "TERMINATE": target.terminate(exchange.getMessage()); return null;
+        case "vault_query_by":
+        case "VAULT_QUERY_BY": target.vaultQueryBy(exchange.getMessage()); return null;
+        case "vault_query_by_criteria":
+        case "VAULT_QUERY_BY_CRITERIA": target.vaultQueryByCriteria(exchange.getMessage()); return null;
+        case "vault_query_by_with_paging_spec":
+        case "VAULT_QUERY_BY_WITH_PAGING_SPEC": target.vaultQueryByWithPagingSpec(exchange.getMessage()); return null;
+        case "vault_query_by_with_sorting":
+        case "VAULT_QUERY_BY_WITH_SORTING": target.vaultQueryByWithSorting(exchange.getMessage()); return null;
+        case "wait_until_network_ready":
+        case "WAIT_UNTIL_NETWORK_READY": target.waitUntilNetworkReady(exchange.getMessage()); return null;
+        case "well_known_party_from_anonymous":
+        case "WELL_KNOWN_PARTY_FROM_ANONYMOUS": target.wellKnownPartyFromAnonymous(exchange.getMessage()); return null;
+        case "well_known_party_from_x500_name":
+        case "WELL_KNOWN_PARTY_FROM_X500_NAME": target.wellKnownPartyFromX500Name(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/components/camel-ehcache/src/generated/java/org/apache/camel/component/ehcache/EhcacheProducerInvokeOnHeaderFactory.java b/components/camel-ehcache/src/generated/java/org/apache/camel/component/ehcache/EhcacheProducerInvokeOnHeaderFactory.java
index 3f42f53..8f074f0 100644
--- a/components/camel-ehcache/src/generated/java/org/apache/camel/component/ehcache/EhcacheProducerInvokeOnHeaderFactory.java
+++ b/components/camel-ehcache/src/generated/java/org/apache/camel/component/ehcache/EhcacheProducerInvokeOnHeaderFactory.java
@@ -16,20 +16,20 @@ public class EhcacheProducerInvokeOnHeaderFactory implements InvokeOnHeaderStrat
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.ehcache.EhcacheProducer target = (org.apache.camel.component.ehcache.EhcacheProducer) obj;
         switch (key) {
-        case "get_all":
-        case "GET_ALL": target.onGetAll(exchange.getMessage()); return null;
         case "clear":
         case "CLEAR": target.onClear(exchange.getMessage()); return null;
-        case "put_if_absent":
-        case "PUT_IF_ABSENT": target.onPutIfAbsent(exchange.getMessage()); return null;
-        case "remove":
-        case "REMOVE": target.onRemove(exchange.getMessage()); return null;
         case "get":
         case "GET": target.onGet(exchange.getMessage()); return null;
+        case "get_all":
+        case "GET_ALL": target.onGetAll(exchange.getMessage()); return null;
         case "put":
         case "PUT": target.onPut(exchange.getMessage()); return null;
         case "put_all":
         case "PUT_ALL": target.onPutAll(exchange.getMessage()); return null;
+        case "put_if_absent":
+        case "PUT_IF_ABSENT": target.onPutIfAbsent(exchange.getMessage()); return null;
+        case "remove":
+        case "REMOVE": target.onRemove(exchange.getMessage()); return null;
         case "remove_all":
         case "REMOVE_ALL": target.onRemoveAll(exchange.getMessage()); return null;
         case "replace":
diff --git a/components/camel-ehcache/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.ehcache.EhcacheProducer b/components/camel-ehcache/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.ehcache.EhcacheProducer
index 54a6d20..ba4f286 100644
--- a/components/camel-ehcache/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.ehcache.EhcacheProducer
+++ b/components/camel-ehcache/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.ehcache.EhcacheProducer
@@ -1,2 +1,2 @@
 # Generated by camel build tools - do NOT edit this file!
-class=org.apache.camel.component.ehcache.EhcacheProducer.EhcacheProducerInvokeOnHeaderFactory
+class=org.apache.camel.component.ehcache.EhcacheProducerInvokeOnHeaderFactory
diff --git a/components/camel-infinispan/camel-infinispan-embedded/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.infinispan.embedded.InfinispanEmbeddedProducer b/components/camel-infinispan/camel-infinispan-embedded/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.infinispan.embedded.InfinispanEmbeddedProducer
index 86e7776..754e3db 100644
--- a/components/camel-infinispan/camel-infinispan-embedded/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.infinispan.embedded.InfinispanEmbeddedProducer
+++ b/components/camel-infinispan/camel-infinispan-embedded/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.infinispan.embedded.InfinispanEmbeddedProducer
@@ -1,2 +1,2 @@
 # Generated by camel build tools - do NOT edit this file!
-class=org.apache.camel.component.infinispan.embedded.InfinispanEmbeddedProducer.InfinispanEmbeddedProducerInvokeOnHeaderFactory
+class=org.apache.camel.component.infinispan.embedded.InfinispanEmbeddedProducerInvokeOnHeaderFactory
diff --git a/components/camel-infinispan/camel-infinispan/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.infinispan.remote.InfinispanRemoteProducer b/components/camel-infinispan/camel-infinispan/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.infinispan.remote.InfinispanRemoteProducer
index 9273df4..b1e577b 100644
--- a/components/camel-infinispan/camel-infinispan/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.infinispan.remote.InfinispanRemoteProducer
+++ b/components/camel-infinispan/camel-infinispan/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.infinispan.remote.InfinispanRemoteProducer
@@ -1,2 +1,2 @@
 # Generated by camel build tools - do NOT edit this file!
-class=org.apache.camel.component.infinispan.remote.InfinispanRemoteProducer.InfinispanRemoteProducerInvokeOnHeaderFactory
+class=org.apache.camel.component.infinispan.remote.InfinispanRemoteProducerInvokeOnHeaderFactory
diff --git a/components/camel-servicenow/camel-servicenow-component/src/generated/java/org/apache/camel/component/servicenow/releases/fuji/FujiServiceNowProducerInvokeOnHeaderFactory.java b/components/camel-servicenow/camel-servicenow-component/src/generated/java/org/apache/camel/component/servicenow/releases/fuji/FujiServiceNowProducerInvokeOnHeaderFactory.java
new file mode 100644
index 0000000..46ce8d9
--- /dev/null
+++ b/components/camel-servicenow/camel-servicenow-component/src/generated/java/org/apache/camel/component/servicenow/releases/fuji/FujiServiceNowProducerInvokeOnHeaderFactory.java
@@ -0,0 +1,27 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.component.servicenow.releases.fuji;
+
+import org.apache.camel.AsyncCallback;
+import org.apache.camel.Exchange;
+import org.apache.camel.spi.InvokeOnHeaderStrategy;
+import org.apache.camel.component.servicenow.releases.fuji.FujiServiceNowProducer;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@SuppressWarnings("unchecked")
+public class FujiServiceNowProducerInvokeOnHeaderFactory implements InvokeOnHeaderStrategy {
+
+    @Override
+    public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
+        org.apache.camel.component.servicenow.releases.fuji.FujiServiceNowProducer target = (org.apache.camel.component.servicenow.releases.fuji.FujiServiceNowProducer) obj;
+        switch (key) {
+        case "aggregate": target.invokeProcessor2(exchange.getMessage()); return null;
+        case "import": target.invokeProcessor3(exchange.getMessage()); return null;
+        case "table": target.invokeProcessor1(exchange.getMessage()); return null;
+        default: return null;
+        }
+    }
+
+}
+
diff --git a/components/camel-servicenow/camel-servicenow-component/src/generated/java/org/apache/camel/component/servicenow/releases/helsinki/HelsinkiServiceNowProducerInvokeOnHeaderFactory.java b/components/camel-servicenow/camel-servicenow-component/src/generated/java/org/apache/camel/component/servicenow/releases/helsinki/HelsinkiServiceNowProducerInvokeOnHeaderFactory.java
new file mode 100644
index 0000000..09bbf6c
--- /dev/null
+++ b/components/camel-servicenow/camel-servicenow-component/src/generated/java/org/apache/camel/component/servicenow/releases/helsinki/HelsinkiServiceNowProducerInvokeOnHeaderFactory.java
@@ -0,0 +1,34 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.component.servicenow.releases.helsinki;
+
+import org.apache.camel.AsyncCallback;
+import org.apache.camel.Exchange;
+import org.apache.camel.spi.InvokeOnHeaderStrategy;
+import org.apache.camel.component.servicenow.releases.helsinki.HelsinkiServiceNowProducer;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@SuppressWarnings("unchecked")
+public class HelsinkiServiceNowProducerInvokeOnHeaderFactory implements InvokeOnHeaderStrategy {
+
+    @Override
+    public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
+        org.apache.camel.component.servicenow.releases.helsinki.HelsinkiServiceNowProducer target = (org.apache.camel.component.servicenow.releases.helsinki.HelsinkiServiceNowProducer) obj;
+        switch (key) {
+        case "aggregate": target.invokeProcessor2(exchange.getMessage()); return null;
+        case "attachment": target.invokeProcessor4(exchange.getMessage()); return null;
+        case "import": target.invokeProcessor3(exchange.getMessage()); return null;
+        case "misc": target.invokeProcessor6(exchange.getMessage()); return null;
+        case "scorecards": target.invokeProcessor5(exchange.getMessage()); return null;
+        case "service_catalog": target.invokeProcessor7(exchange.getMessage()); return null;
+        case "service_catalog_cart": target.invokeProcessor9(exchange.getMessage()); return null;
+        case "service_catalog_categories": target.invokeProcessor10(exchange.getMessage()); return null;
+        case "service_catalog_items": target.invokeProcessor8(exchange.getMessage()); return null;
+        case "table": target.invokeProcessor1(exchange.getMessage()); return null;
+        default: return null;
+        }
+    }
+
+}
+
diff --git a/components/camel-servicenow/camel-servicenow-component/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.servicenow.releases.fuji.FujiServiceNowProducer b/components/camel-servicenow/camel-servicenow-component/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.servicenow.releases.fuji.FujiServiceNowProducer
new file mode 100644
index 0000000..190fe52
--- /dev/null
+++ b/components/camel-servicenow/camel-servicenow-component/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.servicenow.releases.fuji.FujiServiceNowProducer
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.component.servicenow.releases.fuji.FujiServiceNowProducerInvokeOnHeaderFactory
diff --git a/components/camel-servicenow/camel-servicenow-component/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.servicenow.releases.helsinki.HelsinkiServiceNowProducer b/components/camel-servicenow/camel-servicenow-component/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.servicenow.releases.helsinki.HelsinkiServiceNowProducer
new file mode 100644
index 0000000..1d36ac7
--- /dev/null
+++ b/components/camel-servicenow/camel-servicenow-component/src/generated/resources/META-INF/services/org/apache/camel/invoke-on-header/org.apache.camel.component.servicenow.releases.helsinki.HelsinkiServiceNowProducer
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.component.servicenow.releases.helsinki.HelsinkiServiceNowProducerInvokeOnHeaderFactory
diff --git a/components/camel-servicenow/camel-servicenow-component/src/main/java/org/apache/camel/component/servicenow/releases/fuji/FujiServiceNowProducer.java b/components/camel-servicenow/camel-servicenow-component/src/main/java/org/apache/camel/component/servicenow/releases/fuji/FujiServiceNowProducer.java
index 963a45a..eb847ec 100644
--- a/components/camel-servicenow/camel-servicenow-component/src/main/java/org/apache/camel/component/servicenow/releases/fuji/FujiServiceNowProducer.java
+++ b/components/camel-servicenow/camel-servicenow-component/src/main/java/org/apache/camel/component/servicenow/releases/fuji/FujiServiceNowProducer.java
@@ -16,20 +16,41 @@
  */
 package org.apache.camel.component.servicenow.releases.fuji;
 
+import org.apache.camel.Message;
 import org.apache.camel.component.servicenow.AbstractServiceNowProducer;
 import org.apache.camel.component.servicenow.ServiceNowConstants;
 import org.apache.camel.component.servicenow.ServiceNowEndpoint;
 import org.apache.camel.component.servicenow.ServiceNowRelease;
+import org.apache.camel.spi.InvokeOnHeader;
 
 /**
  * The Fuji ServiceNow producer.
  */
 public class FujiServiceNowProducer extends AbstractServiceNowProducer {
+
+    private final FujiServiceNowTableProcessor processor1;
+    private final FujiServiceNowAggregateProcessor processor2;
+    private final FujiServiceNowImportSetProcessor processor3;
+
     public FujiServiceNowProducer(ServiceNowEndpoint endpoint) throws Exception {
         super(endpoint, ServiceNowRelease.FUJI);
+        processor1 = new FujiServiceNowTableProcessor(endpoint);
+        processor2 = new FujiServiceNowAggregateProcessor(endpoint);
+        processor3 = new FujiServiceNowImportSetProcessor(endpoint);
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_TABLE)
+    public void invokeProcessor1(Message message) throws Exception {
+        processor1.process(message.getExchange());
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_AGGREGATE)
+    public void invokeProcessor2(Message message) throws Exception {
+        processor2.process(message.getExchange());
+    }
 
-        bind(ServiceNowConstants.RESOURCE_TABLE, new FujiServiceNowTableProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_AGGREGATE, new FujiServiceNowAggregateProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_IMPORT, new FujiServiceNowImportSetProcessor(endpoint));
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_IMPORT)
+    public void invokeProcessor3(Message message) throws Exception {
+        processor3.process(message.getExchange());
     }
 }
diff --git a/components/camel-servicenow/camel-servicenow-component/src/main/java/org/apache/camel/component/servicenow/releases/helsinki/HelsinkiServiceNowProducer.java b/components/camel-servicenow/camel-servicenow-component/src/main/java/org/apache/camel/component/servicenow/releases/helsinki/HelsinkiServiceNowProducer.java
index 73c6390..c3b9779 100644
--- a/components/camel-servicenow/camel-servicenow-component/src/main/java/org/apache/camel/component/servicenow/releases/helsinki/HelsinkiServiceNowProducer.java
+++ b/components/camel-servicenow/camel-servicenow-component/src/main/java/org/apache/camel/component/servicenow/releases/helsinki/HelsinkiServiceNowProducer.java
@@ -16,28 +16,91 @@
  */
 package org.apache.camel.component.servicenow.releases.helsinki;
 
+import org.apache.camel.Message;
 import org.apache.camel.component.servicenow.AbstractServiceNowProducer;
 import org.apache.camel.component.servicenow.ServiceNowConstants;
 import org.apache.camel.component.servicenow.ServiceNowEndpoint;
 import org.apache.camel.component.servicenow.ServiceNowRelease;
+import org.apache.camel.spi.InvokeOnHeader;
 
 /**
  * The Helsinki ServiceNow producer.
  */
 public class HelsinkiServiceNowProducer extends AbstractServiceNowProducer {
+
+    private final HelsinkiServiceNowTableProcessor processor1;
+    private final HelsinkiServiceNowAggregateProcessor processor2;
+    private final HelsinkiServiceNowImportSetProcessor processor3;
+    private final HelsinkiServiceNowAttachmentProcessor processor4;
+    private final HelsinkiServiceNowScorecardProcessor processor5;
+    private final HelsinkiServiceNowMiscProcessor processor6;
+    private final HelsinkiServiceNowServiceCatalogProcessor processor7;
+    private final HelsinkiServiceNowServiceCatalogItemsProcessor processor8;
+    private final HelsinkiServiceNowServiceCatalogCartsProcessor processor9;
+    private final HelsinkiServiceNowServiceCatalogCategoriesProcessor processor10;
+
     public HelsinkiServiceNowProducer(ServiceNowEndpoint endpoint) throws Exception {
         super(endpoint, ServiceNowRelease.HELSINKI);
+        processor1 = new HelsinkiServiceNowTableProcessor(endpoint);
+        processor2 = new HelsinkiServiceNowAggregateProcessor(endpoint);
+        processor3 = new HelsinkiServiceNowImportSetProcessor(endpoint);
+        processor4 = new HelsinkiServiceNowAttachmentProcessor(endpoint);
+        processor5 = new HelsinkiServiceNowScorecardProcessor(endpoint);
+        processor6 = new HelsinkiServiceNowMiscProcessor(endpoint);
+        processor7 = new HelsinkiServiceNowServiceCatalogProcessor(endpoint);
+        processor8 = new HelsinkiServiceNowServiceCatalogItemsProcessor(endpoint);
+        processor9 = new HelsinkiServiceNowServiceCatalogCartsProcessor(endpoint);
+        processor10 = new HelsinkiServiceNowServiceCatalogCategoriesProcessor(endpoint);
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_TABLE)
+    public void invokeProcessor1(Message message) throws Exception {
+        processor1.process(message.getExchange());
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_AGGREGATE)
+    public void invokeProcessor2(Message message) throws Exception {
+        processor2.process(message.getExchange());
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_IMPORT)
+    public void invokeProcessor3(Message message) throws Exception {
+        processor3.process(message.getExchange());
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_ATTACHMENT)
+    public void invokeProcessor4(Message message) throws Exception {
+        processor4.process(message.getExchange());
+    }
 
-        bind(ServiceNowConstants.RESOURCE_TABLE, new HelsinkiServiceNowTableProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_AGGREGATE, new HelsinkiServiceNowAggregateProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_IMPORT, new HelsinkiServiceNowImportSetProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_ATTACHMENT, new HelsinkiServiceNowAttachmentProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_SCORECARDS, new HelsinkiServiceNowScorecardProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_MISC, new HelsinkiServiceNowMiscProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_SERVICE_CATALOG, new HelsinkiServiceNowServiceCatalogProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_SERVICE_CATALOG_ITEMS, new HelsinkiServiceNowServiceCatalogItemsProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_SERVICE_CATALOG_CARTS, new HelsinkiServiceNowServiceCatalogCartsProcessor(endpoint));
-        bind(ServiceNowConstants.RESOURCE_SERVICE_CATALOG_CATEGORIES,
-                new HelsinkiServiceNowServiceCatalogCategoriesProcessor(endpoint));
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_SCORECARDS)
+    public void invokeProcessor5(Message message) throws Exception {
+        processor5.process(message.getExchange());
     }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_MISC)
+    public void invokeProcessor6(Message message) throws Exception {
+        processor6.process(message.getExchange());
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_SERVICE_CATALOG)
+    public void invokeProcessor7(Message message) throws Exception {
+        processor7.process(message.getExchange());
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_SERVICE_CATALOG_ITEMS)
+    public void invokeProcessor8(Message message) throws Exception {
+        processor8.process(message.getExchange());
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_SERVICE_CATALOG_CARTS)
+    public void invokeProcessor9(Message message) throws Exception {
+        processor9.process(message.getExchange());
+    }
+
+    @InvokeOnHeader(ServiceNowConstants.RESOURCE_SERVICE_CATALOG_CATEGORIES)
+    public void invokeProcessor10(Message message) throws Exception {
+        processor10.process(message.getExchange());
+    }
+
 }
diff --git a/components/camel-web3j/src/generated/java/org/apache/camel/component/web3j/Web3jProducerInvokeOnHeaderFactory.java b/components/camel-web3j/src/generated/java/org/apache/camel/component/web3j/Web3jProducerInvokeOnHeaderFactory.java
index 7acc765..4b3416a 100644
--- a/components/camel-web3j/src/generated/java/org/apache/camel/component/web3j/Web3jProducerInvokeOnHeaderFactory.java
+++ b/components/camel-web3j/src/generated/java/org/apache/camel/component/web3j/Web3jProducerInvokeOnHeaderFactory.java
@@ -16,150 +16,150 @@ public class Web3jProducerInvokeOnHeaderFactory implements InvokeOnHeaderStrateg
     public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {
         org.apache.camel.component.web3j.Web3jProducer target = (org.apache.camel.component.web3j.Web3jProducer) obj;
         switch (key) {
-        case "eth_get_code":
-        case "ETH_GET_CODE": target.ethGetCode(exchange.getMessage()); return null;
-        case "eth_get_uncle_by_block_number_and_index":
-        case "ETH_GET_UNCLE_BY_BLOCK_NUMBER_AND_INDEX": target.ethGetUncleByBlockNumberAndIndex(exchange.getMessage()); return null;
-        case "quorum_pause_block_maker":
-        case "QUORUM_PAUSE_BLOCK_MAKER": target.quorumPauseBlockMaker(exchange.getMessage()); return null;
-        case "eth_get_block_by_hash":
-        case "ETH_GET_BLOCK_BY_HASH": target.ethGetBlockByHash(exchange.getMessage()); return null;
-        case "eth_get_logs":
-        case "ETH_GET_LOGS": target.ethGetLogs(exchange.getMessage()); return null;
-        case "eth_get_uncle_count_by_block_number":
-        case "ETH_GET_UNCLE_COUNT_BY_BLOCK_NUMBER": target.ethGetUncleCountByBlockNumber(exchange.getMessage()); return null;
-        case "eth_hashrate":
-        case "ETH_HASHRATE": target.ethHashrate(exchange.getMessage()); return null;
-        case "net_peer_count":
-        case "NET_PEER_COUNT": target.netPeerCount(exchange.getMessage()); return null;
-        case "shh_has_identity":
-        case "SHH_HAS_IDENTITY": target.shhHasIdentity(exchange.getMessage()); return null;
-        case "shh_add_to_group":
-        case "SHH_ADD_TO_GROUP": target.shhAddToGroup(exchange.getMessage()); return null;
+        case "eth_get_block_by_number":
+        case "ETH_GET_BLOCK_BY_NUMBER": target.ethGetBlockByNumber(exchange.getMessage()); return null;
+        case "db_put_hex":
+        case "DB_PUT_HEX": target.dbPutHex(exchange.getMessage()); return null;
+        case "shh_uninstall_filter":
+        case "SHH_UNINSTALL_FILTER": target.shhUninstallFilter(exchange.getMessage()); return null;
+        case "web3_client_version":
+        case "WEB3_CLIENT_VERSION": target.web3ClientVersion(exchange.getMessage()); return null;
+        case "eth_compile_serpent":
+        case "ETH_COMPILE_SERPENT": target.ethCompileSerpent(exchange.getMessage()); return null;
+        case "eth_new_filter":
+        case "ETH_NEW_FILTER": target.ethNewFilter(exchange.getMessage()); return null;
         case "net_version":
         case "NET_VERSION": target.netVersion(exchange.getMessage()); return null;
-        case "eth_uninstall_filter":
-        case "ETH_UNINSTALL_FILTER": target.ethUninstallFilter(exchange.getMessage()); return null;
+        case "eth_get_balance":
+        case "ETH_GET_BALANCE": target.ethGetBalance(exchange.getMessage()); return null;
+        case "eth_get_transaction_by_block_number_and_index":
+        case "ETH_GET_TRANSACTION_BY_BLOCK_NUMBER_AND_INDEX": target.ethGetTransactionByBlockNumberAndIndex(exchange.getMessage()); return null;
+        case "eth_send_transaction":
+        case "ETH_SEND_TRANSACTION": target.ethSendTransaction(exchange.getMessage()); return null;
+        case "eth_sign":
+        case "ETH_SIGN": target.ethSign(exchange.getMessage()); return null;
+        case "quorum_is_voter":
+        case "QUORUM_IS_VOTER": target.quorumIsVoter(exchange.getMessage()); return null;
+        case "eth_accounts":
+        case "ETH_ACCOUNTS": target.ethAccounts(exchange.getMessage()); return null;
+        case "shh_new_identity":
+        case "SHH_NEW_IDENTITY": target.shhNewIdentity(exchange.getMessage()); return null;
+        case "shh_get_filter_changes":
+        case "SHH_GET_FILTER_CHANGES": target.shhGetFilterChanges(exchange.getMessage()); return null;
+        case "shh_add_to_group":
+        case "SHH_ADD_TO_GROUP": target.shhAddToGroup(exchange.getMessage()); return null;
+        case "quorum_get_private_payload":
+        case "QUORUM_GET_PRIVATE_PAYLOAD": target.quorumGetPrivatePayload(exchange.getMessage()); return null;
+        case "db_get_string":
+        case "DB_GET_STRING": target.dbGetString(exchange.getMessage()); return null;
+        case "eth_get_uncle_by_block_hash_and_index":
+        case "ETH_GET_UNCLE_BY_BLOCK_HASH_AND_INDEX": target.ethGetUncleByBlockHashAndIndex(exchange.getMessage()); return null;
+        case "eth_gas_price":
+        case "ETH_GAS_PRICE": target.ethGasPrice(exchange.getMessage()); return null;
+        case "eth_block_number":
+        case "ETH_BLOCK_NUMBER": target.ethBlockNumber(exchange.getMessage()); return null;
+        case "quorum_make_block":
+        case "QUORUM_MAKE_BLOCK": target.quorumMakeBlock(exchange.getMessage()); return null;
+        case "eth_get_block_by_hash":
+        case "ETH_GET_BLOCK_BY_HASH": target.ethGetBlockByHash(exchange.getMessage()); return null;
+        case "eth_get_code":
+        case "ETH_GET_CODE": target.ethGetCode(exchange.getMessage()); return null;
+        case "eth_get_block_transaction_count_by_hash":
+        case "ETH_GET_BLOCK_TRANSACTION_COUNT_BY_HASH": target.ethGetBlockTransactionCountByHash(exchange.getMessage()); return null;
         case "quorum_canonical_hash":
         case "QUORUM_CANONICAL_HASH": target.quorumCanonicalHash(exchange.getMessage()); return null;
-        case "quorum_is_block_maker":
-        case "QUORUM_IS_BLOCK_MAKER": target.quorumIsBlockMaker(exchange.getMessage()); return null;
-        case "eth_get_transaction_by_hash":
-        case "ETH_GET_TRANSACTION_BY_HASH": target.ethGetTransactionByHash(exchange.getMessage()); return null;
-        case "shh_new_group":
-        case "SHH_NEW_GROUP": target.shhNewGroup(exchange.getMessage()); return null;
+        case "eth_get_work":
+        case "ETH_GET_WORK": target.ethGetWork(exchange.getMessage()); return null;
+        case "eth_new_block_filter":
+        case "ETH_NEW_BLOCK_FILTER": target.ethNewBlockFilter(exchange.getMessage()); return null;
+        case "eth_send_raw_transaction":
+        case "ETH_SEND_RAW_TRANSACTION": target.ethSendRawTransaction(exchange.getMessage()); return null;
+        case "eth_uninstall_filter":
+        case "ETH_UNINSTALL_FILTER": target.ethUninstallFilter(exchange.getMessage()); return null;
+        case "shh_version":
+        case "SHH_VERSION": target.shhVersion(exchange.getMessage()); return null;
+        case "quorum_resume_block_maker":
+        case "QUORUM_RESUME_BLOCK_MAKER": target.quorumResumeBlockMaker(exchange.getMessage()); return null;
         case "eth_coinbase":
         case "ETH_COINBASE": target.ethCoinbase(exchange.getMessage()); return null;
         case "shh_get_messages":
         case "SHH_GET_MESSAGES": target.shhGetMessages(exchange.getMessage()); return null;
-        case "quorum_resume_block_maker":
-        case "QUORUM_RESUME_BLOCK_MAKER": target.quorumResumeBlockMaker(exchange.getMessage()); return null;
-        case "quorum_node_info":
-        case "QUORUM_NODE_INFO": target.quorumNodeInfo(exchange.getMessage()); return null;
+        case "db_get_hex":
+        case "DB_GET_HEX": target.dbGetHex(exchange.getMessage()); return null;
         case "eth_get_filter_logs":
         case "ETH_GET_FILTER_LOGS": target.ethGetFilterLogs(exchange.getMessage()); return null;
+        case "quorum_node_info":
+        case "QUORUM_NODE_INFO": target.quorumNodeInfo(exchange.getMessage()); return null;
         case "eth_get_transaction_count":
         case "ETH_GET_TRANSACTION_COUNT": target.ethGetTransactionCount(exchange.getMessage()); return null;
-        case "db_get_hex":
-        case "DB_GET_HEX": target.dbGetHex(exchange.getMessage()); return null;
-        case "eth_block_number":
-        case "ETH_BLOCK_NUMBER": target.ethBlockNumber(exchange.getMessage()); return null;
-        case "quorum_eth_send_transaction":
-        case "QUORUM_ETH_SEND_TRANSACTION": target.quorumEthSendTransaction(exchange.getMessage()); return null;
-        case "eth_submit_work":
-        case "ETH_SUBMIT_WORK": target.ethSubmitWork(exchange.getMessage()); return null;
-        case "eth_send_raw_transaction":
-        case "ETH_SEND_RAW_TRANSACTION": target.ethSendRawTransaction(exchange.getMessage()); return null;
+        case "eth_get_transaction_by_block_hash_and_index":
+        case "ETH_GET_TRANSACTION_BY_BLOCK_HASH_AND_INDEX": target.ethGetTransactionByBlockHashAndIndex(exchange.getMessage()); return null;
         case "net_listening":
         case "NET_LISTENING": target.netListening(exchange.getMessage()); return null;
-        case "eth_compile_serpent":
-        case "ETH_COMPILE_SERPENT": target.ethCompileSerpent(exchange.getMessage()); return null;
-        case "eth_new_block_filter":
-        case "ETH_NEW_BLOCK_FILTER": target.ethNewBlockFilter(exchange.getMessage()); return null;
+        case "shh_new_filter":
+        case "SHH_NEW_FILTER": target.shhNewFilter(exchange.getMessage()); return null;
+        case "eth_submit_hashrate":
+        case "ETH_SUBMIT_HASHRATE": target.ethSubmitHashrate(exchange.getMessage()); return null;
         case "eth_get_uncle_count_by_block_hash":
         case "ETH_GET_UNCLE_COUNT_BY_BLOCK_HASH": target.ethGetUncleCountByBlockHash(exchange.getMessage()); return null;
-        case "eth_estimate_gas":
-        case "ETH_ESTIMATE_GAS": target.ethEstimateGas(exchange.getMessage()); return null;
-        case "eth_get_transaction_by_block_number_and_index":
-        case "ETH_GET_TRANSACTION_BY_BLOCK_NUMBER_AND_INDEX": target.ethGetTransactionByBlockNumberAndIndex(exchange.getMessage()); return null;
+        case "eth_get_uncle_count_by_block_number":
+        case "ETH_GET_UNCLE_COUNT_BY_BLOCK_NUMBER": target.ethGetUncleCountByBlockNumber(exchange.getMessage()); return null;
+        case "quorum_pause_block_maker":
+        case "QUORUM_PAUSE_BLOCK_MAKER": target.quorumPauseBlockMaker(exchange.getMessage()); return null;
+        case "eth_mining":
+        case "ETH_MINING": target.ethMining(exchange.getMessage()); return null;
+        case "shh_post":
+        case "SHH_POST": target.shhPost(exchange.getMessage()); return null;
+        case "eth_hashrate":
+        case "ETH_HASHRATE": target.ethHashrate(exchange.getMessage()); return null;
         case "eth_new_pending_transaction_filter":
         case "ETH_NEW_PENDING_TRANSACTION_FILTER": target.ethNewPendingTransactionFilter(exchange.getMessage()); return null;
-        case "shh_new_identity":
-        case "SHH_NEW_IDENTITY": target.shhNewIdentity(exchange.getMessage()); return null;
-        case "eth_submit_hashrate":
-        case "ETH_SUBMIT_HASHRATE": target.ethSubmitHashrate(exchange.getMessage()); return null;
-        case "eth_get_block_transaction_count_by_number":
-        case "ETH_GET_BLOCK_TRANSACTION_COUNT_BY_NUMBER": target.ethGetBlockTransactionCountByNumber(exchange.getMessage()); return null;
-        case "eth_send_transaction":
-        case "ETH_SEND_TRANSACTION": target.ethSendTransaction(exchange.getMessage()); return null;
-        case "db_put_hex":
-        case "DB_PUT_HEX": target.dbPutHex(exchange.getMessage()); return null;
-        case "eth_get_block_by_number":
-        case "ETH_GET_BLOCK_BY_NUMBER": target.ethGetBlockByNumber(exchange.getMessage()); return null;
-        case "shh_get_filter_changes":
-        case "SHH_GET_FILTER_CHANGES": target.shhGetFilterChanges(exchange.getMessage()); return null;
-        case "web3_sha3":
-        case "WEB3_SHA3": target.web3Sha3(exchange.getMessage()); return null;
-        case "eth_compile_solidity":
-        case "ETH_COMPILE_SOLIDITY": target.ethCompileSolidity(exchange.getMessage()); return null;
+        case "ethprotocolversion":
+        case "ethProtocolVersion": target.ethProtocolVersion(exchange.getMessage()); return null;
         case "quorum_vote":
         case "QUORUM_VOTE": target.quorumVote(exchange.getMessage()); return null;
-        case "eth_get_transaction_receipt":
-        case "ETH_GET_TRANSACTION_RECEIPT": target.ethGetTransactionReceipt(exchange.getMessage()); return null;
-        case "shh_version":
-        case "SHH_VERSION": target.shhVersion(exchange.getMessage()); return null;
-        case "eth_get_balance":
-        case "ETH_GET_BALANCE": target.ethGetBalance(exchange.getMessage()); return null;
-        case "eth_get_block_transaction_count_by_hash":
-        case "ETH_GET_BLOCK_TRANSACTION_COUNT_BY_HASH": target.ethGetBlockTransactionCountByHash(exchange.getMessage()); return null;
+        case "quorum_is_block_maker":
+        case "QUORUM_IS_BLOCK_MAKER": target.quorumIsBlockMaker(exchange.getMessage()); return null;
         case "eth_syncing":
         case "ETH_SYNCING": target.ethSyncing(exchange.getMessage()); return null;
-        case "eth_new_filter":
-        case "ETH_NEW_FILTER": target.ethNewFilter(exchange.getMessage()); return null;
-        case "web3_client_version":
-        case "WEB3_CLIENT_VERSION": target.web3ClientVersion(exchange.getMessage()); return null;
-        case "eth_get_work":
-        case "ETH_GET_WORK": target.ethGetWork(exchange.getMessage()); return null;
+        case "eth_compile_solidity":
+        case "ETH_COMPILE_SOLIDITY": target.ethCompileSolidity(exchange.getMessage()); return null;
+        case "eth_get_block_transaction_count_by_number":
+        case "ETH_GET_BLOCK_TRANSACTION_COUNT_BY_NUMBER": target.ethGetBlockTransactionCountByNumber(exchange.getMessage()); return null;
+        case "shh_has_identity":
+        case "SHH_HAS_IDENTITY": target.shhHasIdentity(exchange.getMessage()); return null;
+        case "net_peer_count":
+        case "NET_PEER_COUNT": target.netPeerCount(exchange.getMessage()); return null;
         case "eth_get_filter_changes":
         case "ETH_GET_FILTER_CHANGES": target.ethGetFilterChanges(exchange.getMessage()); return null;
+        case "eth_get_storage_at":
+        case "ETH_GET_STORAGE_AT": target.ethGetStorageAt(exchange.getMessage()); return null;
+        case "eth_get_transaction_receipt":
+        case "ETH_GET_TRANSACTION_RECEIPT": target.ethGetTransactionReceipt(exchange.getMessage()); return null;
+        case "quorum_eth_send_transaction":
+        case "QUORUM_ETH_SEND_TRANSACTION": target.quorumEthSendTransaction(exchange.getMessage()); return null;
+        case "eth_get_uncle_by_block_number_and_index":
+        case "ETH_GET_UNCLE_BY_BLOCK_NUMBER_AND_INDEX": target.ethGetUncleByBlockNumberAndIndex(exchange.getMessage()); return null;
+        case "eth_submit_work":
+        case "ETH_SUBMIT_WORK": target.ethSubmitWork(exchange.getMessage()); return null;
+        case "eth_call":
+        case "ETH_CALL": target.ethCall(exchange.getMessage()); return null;
         case "eth_compile_lll":
         case "ETH_COMPILE_LLL": target.ethCompileLLL(exchange.getMessage()); return null;
+        case "web3_sha3":
+        case "WEB3_SHA3": target.web3Sha3(exchange.getMessage()); return null;
         case "db_put_string":
         case "DB_PUT_STRING": target.dbPutString(exchange.getMessage()); return null;
-        case "eth_get_uncle_by_block_hash_and_index":
-        case "ETH_GET_UNCLE_BY_BLOCK_HASH_AND_INDEX": target.ethGetUncleByBlockHashAndIndex(exchange.getMessage()); return null;
-        case "eth_call":
-        case "ETH_CALL": target.ethCall(exchange.getMessage()); return null;
-        case "shh_new_filter":
-        case "SHH_NEW_FILTER": target.shhNewFilter(exchange.getMessage()); return null;
-        case "db_get_string":
-        case "DB_GET_STRING": target.dbGetString(exchange.getMessage()); return null;
-        case "eth_gas_price":
-        case "ETH_GAS_PRICE": target.ethGasPrice(exchange.getMessage()); return null;
-        case "quorum_is_voter":
-        case "QUORUM_IS_VOTER": target.quorumIsVoter(exchange.getMessage()); return null;
-        case "eth_sign":
-        case "ETH_SIGN": target.ethSign(exchange.getMessage()); return null;
-        case "eth_accounts":
-        case "ETH_ACCOUNTS": target.ethAccounts(exchange.getMessage()); return null;
-        case "eth_get_transaction_by_block_hash_and_index":
-        case "ETH_GET_TRANSACTION_BY_BLOCK_HASH_AND_INDEX": target.ethGetTransactionByBlockHashAndIndex(exchange.getMessage()); return null;
-        case "shh_uninstall_filter":
-        case "SHH_UNINSTALL_FILTER": target.shhUninstallFilter(exchange.getMessage()); return null;
-        case "eth_get_storage_at":
-        case "ETH_GET_STORAGE_AT": target.ethGetStorageAt(exchange.getMessage()); return null;
-        case "quorum_get_private_payload":
-        case "QUORUM_GET_PRIVATE_PAYLOAD": target.quorumGetPrivatePayload(exchange.getMessage()); return null;
-        case "eth_mining":
-        case "ETH_MINING": target.ethMining(exchange.getMessage()); return null;
-        case "quorum_make_block":
-        case "QUORUM_MAKE_BLOCK": target.quorumMakeBlock(exchange.getMessage()); return null;
-        case "shh_post":
-        case "SHH_POST": target.shhPost(exchange.getMessage()); return null;
+        case "eth_get_logs":
+        case "ETH_GET_LOGS": target.ethGetLogs(exchange.getMessage()); return null;
+        case "eth_estimate_gas":
+        case "ETH_ESTIMATE_GAS": target.ethEstimateGas(exchange.getMessage()); return null;
         case "eth_get_compilers":
         case "ETH_GET_COMPILERS": target.ethGetCompilers(exchange.getMessage()); return null;
-        case "ethprotocolversion":
-        case "ethProtocolVersion": target.ethProtocolVersion(exchange.getMessage()); return null;
+        case "shh_new_group":
+        case "SHH_NEW_GROUP": target.shhNewGroup(exchange.getMessage()); return null;
+        case "eth_get_transaction_by_hash":
+        case "ETH_GET_TRANSACTION_BY_HASH": target.ethGetTransactionByHash(exchange.getMessage()); return null;
         default: return null;
         }
     }
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateInvokeOnHeaderMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateInvokeOnHeaderMojo.java
index 821acdf..badc18d 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateInvokeOnHeaderMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateInvokeOnHeaderMojo.java
@@ -25,11 +25,10 @@ import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.Comparator;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
-import java.util.stream.Collectors;
+import java.util.TreeSet;
 
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
@@ -137,7 +136,8 @@ public class GenerateInvokeOnHeaderMojo extends AbstractGeneratorMojo {
             String methodName = a.target().asMethod().name();
             boolean isVoid = Type.Kind.VOID == a.target().asMethod().returnType().kind();
             boolean callback = a.target().asMethod().parameters().size() == 2;
-            Set<InvokeOnHeaderModel> set = classes.computeIfAbsent(currentClass, k -> new HashSet<>());
+            Set<InvokeOnHeaderModel> set = classes.computeIfAbsent(currentClass,
+                    k -> new TreeSet<>(Comparator.comparing(InvokeOnHeaderModel::getKey)));
             InvokeOnHeaderModel model = new InvokeOnHeaderModel();
             model.setKey(value);
             model.setMethodName(methodName);
@@ -204,11 +204,6 @@ public class GenerateInvokeOnHeaderMojo extends AbstractGeneratorMojo {
         w.write(" {\n");
         w.write("\n");
 
-        // sort options A..Z so they always have same order
-        if (!models.isEmpty()) {
-            models = models.stream().sorted(Comparator.comparing(InvokeOnHeaderModel::getKey)).collect(Collectors.toSet());
-        }
-
         w.write("    @Override\n");
         w.write("    public Object invoke(Object obj, String key, Exchange exchange, AsyncCallback callback) throws Exception {\n");
         w.write("        " + en + " target = (" + en + ") obj;\n");