This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git
The following commit(s) were added to refs/heads/main by this push:
new 1a537edd731 Regen
1a537edd731 is described below
commit 1a537edd731283dc9ac15a5468e2f5ba79c59978
Author: Claus Ibsen <[email protected]>
AuthorDate: Fri Jul 4 12:05:51 2025 +0200
Regen
---
.../springboot/catalog/components/salesforce.json | 93 +++++++++++-----------
.../src/main/docs/salesforce.json | 7 ++
.../SalesforceComponentConfiguration.java | 16 ++++
3 files changed, 70 insertions(+), 46 deletions(-)
diff --git
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/salesforce.json
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/salesforce.json
index 9609900dbb4..3eb16623bde 100644
---
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/salesforce.json
+++
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/salesforce.json
@@ -83,51 +83,52 @@
"workerPoolMaxSize": { "index": 55, "kind": "property", "displayName":
"Worker Pool Max Size", "group": "common (advanced)", "label":
"common,advanced", "required": false, "type": "integer", "javaType": "int",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 20,
"description": "Maximum size of the thread pool used to handle HTTP responses."
},
"workerPoolSize": { "index": 56, "kind": "property", "displayName":
"Worker Pool Size", "group": "common (advanced)", "label": "common,advanced",
"required": false, "type": "integer", "javaType": "int", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": 10, "description": "Size
of the thread pool used to handle HTTP responses." },
"bridgeErrorHandler": { "index": 57, "kind": "property", "displayName":
"Bridge Error Handler", "group": "consumer", "label": "consumer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Allows for bridging the consumer to the Camel routing Error Handler, which
mean any exceptions (if possible) occurred while the Camel consumer is trying
to pickup incoming messages, or the lik [...]
- "pubSubBatchSize": { "index": 58, "kind": "property", "displayName": "Pub
Sub Batch Size", "group": "consumer", "label": "consumer", "required": false,
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 100, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Max number of events to receive
in a batch from the Pub\/Sub API." },
- "pubSubDeserializeType": { "index": 59, "kind": "property", "displayName":
"Pub Sub Deserialize Type", "group": "consumer", "label": "consumer",
"required": false, "type": "object", "javaType":
"org.apache.camel.component.salesforce.PubSubDeserializeType", "enum": [
"AVRO", "SPECIFIC_RECORD", "GENERIC_RECORD", "POJO", "JSON" ], "deprecated":
false, "autowired": false, "secret": false, "defaultValue": "AVRO",
"configurationClass": "org.apache.camel.component.salesforce.SalesforceEndpo
[...]
- "pubSubPojoClass": { "index": 60, "kind": "property", "displayName": "Pub
Sub Pojo Class", "group": "consumer", "label": "consumer", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Fully qualified class name to
deserialize Pub\/Sub API event to." },
- "replayPreset": { "index": 61, "kind": "property", "displayName": "Replay
Preset", "group": "consumer", "label": "consumer", "required": false, "type":
"object", "javaType": "com.salesforce.eventbus.protobuf.ReplayPreset", "enum":
[ "LATEST", "EARLIEST", "CUSTOM" ], "deprecated": false, "autowired": false,
"secret": false, "defaultValue": "LATEST", "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "R [...]
- "initialReplyIdTimeout": { "index": 62, "kind": "property", "displayName":
"Initial Reply Id Timeout", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "integer", "javaType": "int",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 30,
"description": "Timeout in seconds to validate when a custom pubSubReplayId has
been configured, when starting the Camel Salesforce consumer." },
- "allOrNone": { "index": 63, "kind": "property", "displayName": "All Or
None", "group": "producer", "label": "producer", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Composite API option to
indicate to rollback all records if any are not successful." },
- "apexUrl": { "index": 64, "kind": "property", "displayName": "Apex Url",
"group": "producer", "label": "producer", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "APEX method URL" },
- "compositeMethod": { "index": 65, "kind": "property", "displayName":
"Composite Method", "group": "producer", "label": "producer", "required":
false, "type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Composite (raw) method." },
- "eventName": { "index": 66, "kind": "property", "displayName": "Event
Name", "group": "producer", "label": "producer", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Name of Platform Event, Change
Data Capture Event, custom event, etc." },
- "eventSchemaFormat": { "index": 67, "kind": "property", "displayName":
"Event Schema Format", "group": "producer", "label": "producer", "required":
false, "type": "object", "javaType":
"org.apache.camel.component.salesforce.internal.dto.EventSchemaFormatEnum",
"enum": [ "EXPANDED", "COMPACT" ], "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": [...]
- "eventSchemaId": { "index": 68, "kind": "property", "displayName": "Event
Schema Id", "group": "producer", "label": "producer", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "The ID of the event schema." },
- "lazyStartProducer": { "index": 69, "kind": "property", "displayName":
"Lazy Start Producer", "group": "producer", "label": "producer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether the producer should be started lazy (on the first message). By
starting lazy you can use this to allow CamelContext and routes to startup in
situations where a producer may otherwise fai [...]
- "rawHttpHeaders": { "index": 70, "kind": "property", "displayName": "Raw
Http Headers", "group": "producer", "label": "producer", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Comma separated list of message
headers to include as HTTP parameters for Raw operation." },
- "rawMethod": { "index": 71, "kind": "property", "displayName": "Raw
Method", "group": "producer", "label": "producer", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "HTTP method to use for the Raw
operation" },
- "rawPath": { "index": 72, "kind": "property", "displayName": "Raw Path",
"group": "producer", "label": "producer", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "The portion of the endpoint URL
after the domain name. E.g., '\/services\/data\/v52.0\/sobjects\/Account\/'" },
- "rawQueryParameters": { "index": 73, "kind": "property", "displayName":
"Raw Query Parameters", "group": "producer", "label": "producer", "required":
false, "type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Comma separated list of message
headers to include as query parameters for Raw operatio [...]
- "autowiredEnabled": { "index": 74, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching [...]
- "httpProxyExcludedAddresses": { "index": 75, "kind": "property",
"displayName": "Http Proxy Excluded Addresses", "group": "proxy", "label":
"common,proxy", "required": false, "type": "object", "javaType":
"java.util.Set<java.lang.String>", "deprecated": false, "autowired": false,
"secret": false, "description": "A list of addresses for which HTTP proxy
server should not be used." },
- "httpProxyHost": { "index": 76, "kind": "property", "displayName": "Http
Proxy Host", "group": "proxy", "label": "common,proxy", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "Hostname of the HTTP proxy
server to use." },
- "httpProxyIncludedAddresses": { "index": 77, "kind": "property",
"displayName": "Http Proxy Included Addresses", "group": "proxy", "label":
"common,proxy", "required": false, "type": "object", "javaType":
"java.util.Set<java.lang.String>", "deprecated": false, "autowired": false,
"secret": false, "description": "A list of addresses for which HTTP proxy
server should be used." },
- "httpProxyPort": { "index": 78, "kind": "property", "displayName": "Http
Proxy Port", "group": "proxy", "label": "common,proxy", "required": false,
"type": "integer", "javaType": "java.lang.Integer", "deprecated": false,
"autowired": false, "secret": false, "description": "Port number of the HTTP
proxy server to use." },
- "httpProxySocks4": { "index": 79, "kind": "property", "displayName": "Http
Proxy Socks4", "group": "proxy", "label": "common,proxy", "required": false,
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": false, "description": "If set to true
the configures the HTTP proxy to use as a SOCKS4 proxy." },
- "pubsubAllowUseSystemProxy": { "index": 80, "kind": "property",
"displayName": "Pubsub Allow Use System Proxy", "group": "proxy", "label":
"common,proxy", "required": false, "type": "boolean", "javaType": "boolean",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": true,
"description": "Allow the Pub\/Sub API client to use the proxy detected by
java.net.ProxySelector. If false then no proxy server will be used." },
- "authenticationType": { "index": 81, "kind": "property", "displayName":
"Authentication Type", "group": "security", "label": "common,security",
"required": false, "type": "object", "javaType":
"org.apache.camel.component.salesforce.AuthenticationType", "enum": [
"USERNAME_PASSWORD", "REFRESH_TOKEN", "CLIENT_CREDENTIALS", "JWT" ],
"deprecated": false, "autowired": false, "secret": false, "description":
"Explicit authentication method to be used, one of USERNAME_PASSWORD,
REFRESH_TOKEN [...]
- "clientId": { "index": 82, "kind": "property", "displayName": "Client Id",
"group": "security", "label": "common,security", "required": true, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "description": "OAuth Consumer Key of the connected app
configured in the Salesforce instance setup. Typically a connected app needs to
be configured but one can be provided by installing a package." },
- "clientSecret": { "index": 83, "kind": "property", "displayName": "Client
Secret", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": true, "description": "OAuth Consumer Secret of
the connected app configured in the Salesforce instance setup." },
- "httpProxyAuthUri": { "index": 84, "kind": "property", "displayName":
"Http Proxy Auth Uri", "group": "security", "label": "common,proxy,security",
"required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": false, "description": "Used
in authentication against the HTTP proxy server, needs to match the URI of the
proxy server in order for the httpProxyUsername and httpProxyPassword to be
used for authentication." },
- "httpProxyPassword": { "index": 85, "kind": "property", "displayName":
"Http Proxy Password", "group": "security", "label": "common,proxy,security",
"required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": true, "description":
"Password to use to authenticate against the HTTP proxy server." },
- "httpProxyRealm": { "index": 86, "kind": "property", "displayName": "Http
Proxy Realm", "group": "security", "label": "common,proxy,security",
"required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": false, "description": "Realm
of the proxy server, used in preemptive Basic\/Digest authentication methods
against the HTTP proxy server." },
- "httpProxySecure": { "index": 87, "kind": "property", "displayName": "Http
Proxy Secure", "group": "security", "label": "common,proxy,security",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": true,
"description": "If set to false disables the use of TLS when accessing the HTTP
proxy." },
- "httpProxyUseDigestAuth": { "index": 88, "kind": "property",
"displayName": "Http Proxy Use Digest Auth", "group": "security", "label":
"common,proxy,security", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "If set to true Digest authentication
will be used when authenticating to the HTTP proxy, otherwise Basic
authorization method will be used" },
- "httpProxyUsername": { "index": 89, "kind": "property", "displayName":
"Http Proxy Username", "group": "security", "label": "common,proxy,security",
"required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": false, "description":
"Username to use to authenticate against the HTTP proxy server." },
- "instanceUrl": { "index": 90, "kind": "property", "displayName": "Instance
Url", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "URL of the Salesforce
instance used after authentication, by default received from Salesforce on
successful authentication" },
- "jwtAudience": { "index": 91, "kind": "property", "displayName": "Jwt
Audience", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "Value to use for the
Audience claim (aud) when using OAuth JWT flow. If not set, the login URL will
be used, which is appropriate in most cases." },
- "keystore": { "index": 92, "kind": "property", "displayName": "Keystore",
"group": "security", "label": "common,security", "required": false, "type":
"object", "javaType": "org.apache.camel.support.jsse.KeyStoreParameters",
"deprecated": false, "autowired": false, "secret": false, "description":
"KeyStore parameters to use in OAuth JWT flow. The KeyStore should contain only
one entry with private key and certificate. Salesforce does not verify the
certificate chain, so this can easil [...]
- "lazyLogin": { "index": 93, "kind": "property", "displayName": "Lazy
Login", "group": "security", "label": "common,security", "required": false,
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": false, "description": "If set to true
prevents the component from authenticating to Salesforce with the start of the
component. You would generally set this to the (default) false and authenticate
early and be immediately aware [...]
- "loginConfig": { "index": 94, "kind": "property", "displayName": "Login
Config", "group": "security", "label": "common,security", "required": false,
"type": "object", "javaType":
"org.apache.camel.component.salesforce.SalesforceLoginConfig", "deprecated":
false, "autowired": false, "secret": false, "description": "All authentication
configuration in one nested bean, all properties set there can be set directly
on the component as well" },
- "loginUrl": { "index": 95, "kind": "property", "displayName": "Login Url",
"group": "security", "label": "common,security", "required": true, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": "https:\/\/login.salesforce.com",
"description": "URL of the Salesforce instance used for authentication, by
default set to https:\/\/login.salesforce.com" },
- "password": { "index": 96, "kind": "property", "displayName": "Password",
"group": "security", "label": "common,security", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": true, "description": "Password used in OAuth flow to gain
access to access token. It's easy to get started with password OAuth flow, but
in general one should avoid it as it is deemed less secure than other flows.
Make sure that you append secur [...]
- "pubSubHost": { "index": 97, "kind": "property", "displayName": "Pub Sub
Host", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "defaultValue":
"api.pubsub.salesforce.com", "description": "Pub\/Sub host" },
- "pubSubPort": { "index": 98, "kind": "property", "displayName": "Pub Sub
Port", "group": "security", "label": "common,security", "required": false,
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 7443, "description": "Pub\/Sub port" },
- "refreshToken": { "index": 99, "kind": "property", "displayName": "Refresh
Token", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": true, "description": "Refresh token already
obtained in the refresh token OAuth flow. One needs to setup a web application
and configure a callback URL to receive the refresh token, or configure using
the builtin callback at https:\/\/l [...]
- "sslContextParameters": { "index": 100, "kind": "property", "displayName":
"Ssl Context Parameters", "group": "security", "label": "common,security",
"required": false, "type": "object", "javaType":
"org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false,
"autowired": false, "secret": false, "description": "SSL parameters to use, see
SSLContextParameters class for all available options." },
- "useGlobalSslContextParameters": { "index": 101, "kind": "property",
"displayName": "Use Global Ssl Context Parameters", "group": "security",
"label": "security", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Enable usage of global SSL context
parameters" },
- "userName": { "index": 102, "kind": "property", "displayName": "User
Name", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "Username used in OAuth
flow to gain access to access token. It's easy to get started with password
OAuth flow, but in general one should avoid it as it is deemed less secure than
other flows." }
+ "fallbackToLatestReplayId": { "index": 58, "kind": "property",
"displayName": "Fallback To Latest Replay Id", "group": "consumer", "label":
"consumer", "required": false, "type": "boolean", "javaType": "boolean",
"deprecated": false, "autowired": false, "secret": false, "defaultValue":
false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Whether the pub\/sub consumer
needs to fallback to the lat [...]
+ "pubSubBatchSize": { "index": 59, "kind": "property", "displayName": "Pub
Sub Batch Size", "group": "consumer", "label": "consumer", "required": false,
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 100, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Max number of events to receive
in a batch from the Pub\/Sub API." },
+ "pubSubDeserializeType": { "index": 60, "kind": "property", "displayName":
"Pub Sub Deserialize Type", "group": "consumer", "label": "consumer",
"required": false, "type": "object", "javaType":
"org.apache.camel.component.salesforce.PubSubDeserializeType", "enum": [
"AVRO", "SPECIFIC_RECORD", "GENERIC_RECORD", "POJO", "JSON" ], "deprecated":
false, "autowired": false, "secret": false, "defaultValue": "AVRO",
"configurationClass": "org.apache.camel.component.salesforce.SalesforceEndpo
[...]
+ "pubSubPojoClass": { "index": 61, "kind": "property", "displayName": "Pub
Sub Pojo Class", "group": "consumer", "label": "consumer", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Fully qualified class name to
deserialize Pub\/Sub API event to." },
+ "replayPreset": { "index": 62, "kind": "property", "displayName": "Replay
Preset", "group": "consumer", "label": "consumer", "required": false, "type":
"object", "javaType": "com.salesforce.eventbus.protobuf.ReplayPreset", "enum":
[ "LATEST", "EARLIEST", "CUSTOM" ], "deprecated": false, "autowired": false,
"secret": false, "defaultValue": "LATEST", "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "R [...]
+ "initialReplyIdTimeout": { "index": 63, "kind": "property", "displayName":
"Initial Reply Id Timeout", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "integer", "javaType": "int",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 30,
"description": "Timeout in seconds to validate when a custom pubSubReplayId has
been configured, when starting the Camel Salesforce consumer." },
+ "allOrNone": { "index": 64, "kind": "property", "displayName": "All Or
None", "group": "producer", "label": "producer", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Composite API option to
indicate to rollback all records if any are not successful." },
+ "apexUrl": { "index": 65, "kind": "property", "displayName": "Apex Url",
"group": "producer", "label": "producer", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "APEX method URL" },
+ "compositeMethod": { "index": 66, "kind": "property", "displayName":
"Composite Method", "group": "producer", "label": "producer", "required":
false, "type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Composite (raw) method." },
+ "eventName": { "index": 67, "kind": "property", "displayName": "Event
Name", "group": "producer", "label": "producer", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Name of Platform Event, Change
Data Capture Event, custom event, etc." },
+ "eventSchemaFormat": { "index": 68, "kind": "property", "displayName":
"Event Schema Format", "group": "producer", "label": "producer", "required":
false, "type": "object", "javaType":
"org.apache.camel.component.salesforce.internal.dto.EventSchemaFormatEnum",
"enum": [ "EXPANDED", "COMPACT" ], "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": [...]
+ "eventSchemaId": { "index": 69, "kind": "property", "displayName": "Event
Schema Id", "group": "producer", "label": "producer", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "The ID of the event schema." },
+ "lazyStartProducer": { "index": 70, "kind": "property", "displayName":
"Lazy Start Producer", "group": "producer", "label": "producer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether the producer should be started lazy (on the first message). By
starting lazy you can use this to allow CamelContext and routes to startup in
situations where a producer may otherwise fai [...]
+ "rawHttpHeaders": { "index": 71, "kind": "property", "displayName": "Raw
Http Headers", "group": "producer", "label": "producer", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Comma separated list of message
headers to include as HTTP parameters for Raw operation." },
+ "rawMethod": { "index": 72, "kind": "property", "displayName": "Raw
Method", "group": "producer", "label": "producer", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "HTTP method to use for the Raw
operation" },
+ "rawPath": { "index": 73, "kind": "property", "displayName": "Raw Path",
"group": "producer", "label": "producer", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "The portion of the endpoint URL
after the domain name. E.g., '\/services\/data\/v52.0\/sobjects\/Account\/'" },
+ "rawQueryParameters": { "index": 74, "kind": "property", "displayName":
"Raw Query Parameters", "group": "producer", "label": "producer", "required":
false, "type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "config", "description": "Comma separated list of message
headers to include as query parameters for Raw operatio [...]
+ "autowiredEnabled": { "index": 75, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching [...]
+ "httpProxyExcludedAddresses": { "index": 76, "kind": "property",
"displayName": "Http Proxy Excluded Addresses", "group": "proxy", "label":
"common,proxy", "required": false, "type": "object", "javaType":
"java.util.Set<java.lang.String>", "deprecated": false, "autowired": false,
"secret": false, "description": "A list of addresses for which HTTP proxy
server should not be used." },
+ "httpProxyHost": { "index": 77, "kind": "property", "displayName": "Http
Proxy Host", "group": "proxy", "label": "common,proxy", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "Hostname of the HTTP proxy
server to use." },
+ "httpProxyIncludedAddresses": { "index": 78, "kind": "property",
"displayName": "Http Proxy Included Addresses", "group": "proxy", "label":
"common,proxy", "required": false, "type": "object", "javaType":
"java.util.Set<java.lang.String>", "deprecated": false, "autowired": false,
"secret": false, "description": "A list of addresses for which HTTP proxy
server should be used." },
+ "httpProxyPort": { "index": 79, "kind": "property", "displayName": "Http
Proxy Port", "group": "proxy", "label": "common,proxy", "required": false,
"type": "integer", "javaType": "java.lang.Integer", "deprecated": false,
"autowired": false, "secret": false, "description": "Port number of the HTTP
proxy server to use." },
+ "httpProxySocks4": { "index": 80, "kind": "property", "displayName": "Http
Proxy Socks4", "group": "proxy", "label": "common,proxy", "required": false,
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": false, "description": "If set to true
the configures the HTTP proxy to use as a SOCKS4 proxy." },
+ "pubsubAllowUseSystemProxy": { "index": 81, "kind": "property",
"displayName": "Pubsub Allow Use System Proxy", "group": "proxy", "label":
"common,proxy", "required": false, "type": "boolean", "javaType": "boolean",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": true,
"description": "Allow the Pub\/Sub API client to use the proxy detected by
java.net.ProxySelector. If false then no proxy server will be used." },
+ "authenticationType": { "index": 82, "kind": "property", "displayName":
"Authentication Type", "group": "security", "label": "common,security",
"required": false, "type": "object", "javaType":
"org.apache.camel.component.salesforce.AuthenticationType", "enum": [
"USERNAME_PASSWORD", "REFRESH_TOKEN", "CLIENT_CREDENTIALS", "JWT" ],
"deprecated": false, "autowired": false, "secret": false, "description":
"Explicit authentication method to be used, one of USERNAME_PASSWORD,
REFRESH_TOKEN [...]
+ "clientId": { "index": 83, "kind": "property", "displayName": "Client Id",
"group": "security", "label": "common,security", "required": true, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "description": "OAuth Consumer Key of the connected app
configured in the Salesforce instance setup. Typically a connected app needs to
be configured but one can be provided by installing a package." },
+ "clientSecret": { "index": 84, "kind": "property", "displayName": "Client
Secret", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": true, "description": "OAuth Consumer Secret of
the connected app configured in the Salesforce instance setup." },
+ "httpProxyAuthUri": { "index": 85, "kind": "property", "displayName":
"Http Proxy Auth Uri", "group": "security", "label": "common,proxy,security",
"required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": false, "description": "Used
in authentication against the HTTP proxy server, needs to match the URI of the
proxy server in order for the httpProxyUsername and httpProxyPassword to be
used for authentication." },
+ "httpProxyPassword": { "index": 86, "kind": "property", "displayName":
"Http Proxy Password", "group": "security", "label": "common,proxy,security",
"required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": true, "description":
"Password to use to authenticate against the HTTP proxy server." },
+ "httpProxyRealm": { "index": 87, "kind": "property", "displayName": "Http
Proxy Realm", "group": "security", "label": "common,proxy,security",
"required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": false, "description": "Realm
of the proxy server, used in preemptive Basic\/Digest authentication methods
against the HTTP proxy server." },
+ "httpProxySecure": { "index": 88, "kind": "property", "displayName": "Http
Proxy Secure", "group": "security", "label": "common,proxy,security",
"required": false, "type": "boolean", "javaType": "boolean", "deprecated":
false, "autowired": false, "secret": false, "defaultValue": true,
"description": "If set to false disables the use of TLS when accessing the HTTP
proxy." },
+ "httpProxyUseDigestAuth": { "index": 89, "kind": "property",
"displayName": "Http Proxy Use Digest Auth", "group": "security", "label":
"common,proxy,security", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "If set to true Digest authentication
will be used when authenticating to the HTTP proxy, otherwise Basic
authorization method will be used" },
+ "httpProxyUsername": { "index": 90, "kind": "property", "displayName":
"Http Proxy Username", "group": "security", "label": "common,proxy,security",
"required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": false, "description":
"Username to use to authenticate against the HTTP proxy server." },
+ "instanceUrl": { "index": 91, "kind": "property", "displayName": "Instance
Url", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "URL of the Salesforce
instance used after authentication, by default received from Salesforce on
successful authentication" },
+ "jwtAudience": { "index": 92, "kind": "property", "displayName": "Jwt
Audience", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "Value to use for the
Audience claim (aud) when using OAuth JWT flow. If not set, the login URL will
be used, which is appropriate in most cases." },
+ "keystore": { "index": 93, "kind": "property", "displayName": "Keystore",
"group": "security", "label": "common,security", "required": false, "type":
"object", "javaType": "org.apache.camel.support.jsse.KeyStoreParameters",
"deprecated": false, "autowired": false, "secret": false, "description":
"KeyStore parameters to use in OAuth JWT flow. The KeyStore should contain only
one entry with private key and certificate. Salesforce does not verify the
certificate chain, so this can easil [...]
+ "lazyLogin": { "index": 94, "kind": "property", "displayName": "Lazy
Login", "group": "security", "label": "common,security", "required": false,
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": false, "description": "If set to true
prevents the component from authenticating to Salesforce with the start of the
component. You would generally set this to the (default) false and authenticate
early and be immediately aware [...]
+ "loginConfig": { "index": 95, "kind": "property", "displayName": "Login
Config", "group": "security", "label": "common,security", "required": false,
"type": "object", "javaType":
"org.apache.camel.component.salesforce.SalesforceLoginConfig", "deprecated":
false, "autowired": false, "secret": false, "description": "All authentication
configuration in one nested bean, all properties set there can be set directly
on the component as well" },
+ "loginUrl": { "index": 96, "kind": "property", "displayName": "Login Url",
"group": "security", "label": "common,security", "required": true, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": "https:\/\/login.salesforce.com",
"description": "URL of the Salesforce instance used for authentication, by
default set to https:\/\/login.salesforce.com" },
+ "password": { "index": 97, "kind": "property", "displayName": "Password",
"group": "security", "label": "common,security", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": true, "description": "Password used in OAuth flow to gain
access to access token. It's easy to get started with password OAuth flow, but
in general one should avoid it as it is deemed less secure than other flows.
Make sure that you append secur [...]
+ "pubSubHost": { "index": 98, "kind": "property", "displayName": "Pub Sub
Host", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "defaultValue":
"api.pubsub.salesforce.com", "description": "Pub\/Sub host" },
+ "pubSubPort": { "index": 99, "kind": "property", "displayName": "Pub Sub
Port", "group": "security", "label": "common,security", "required": false,
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 7443, "description": "Pub\/Sub port" },
+ "refreshToken": { "index": 100, "kind": "property", "displayName":
"Refresh Token", "group": "security", "label": "common,security", "required":
false, "type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": true, "description": "Refresh token already
obtained in the refresh token OAuth flow. One needs to setup a web application
and configure a callback URL to receive the refresh token, or configure using
the builtin callback at https:\/\/ [...]
+ "sslContextParameters": { "index": 101, "kind": "property", "displayName":
"Ssl Context Parameters", "group": "security", "label": "common,security",
"required": false, "type": "object", "javaType":
"org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false,
"autowired": false, "secret": false, "description": "SSL parameters to use, see
SSLContextParameters class for all available options." },
+ "useGlobalSslContextParameters": { "index": 102, "kind": "property",
"displayName": "Use Global Ssl Context Parameters", "group": "security",
"label": "security", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Enable usage of global SSL context
parameters" },
+ "userName": { "index": 103, "kind": "property", "displayName": "User
Name", "group": "security", "label": "common,security", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "Username used in OAuth
flow to gain access to access token. It's easy to get started with password
OAuth flow, but in general one should avoid it as it is deemed less secure than
other flows." }
},
"headers": {
"CamelSalesforceReplayId": { "index": 0, "kind": "header", "displayName":
"", "group": "consumer", "label": "consumer", "required": false, "javaType":
"Object", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The Streaming API replayId.", "constantName":
"org.apache.camel.component.salesforce.SalesforceConstants#HEADER_SALESFORCE_REPLAY_ID"
},
@@ -202,7 +203,7 @@
"sObjectSearch": { "index": 45, "kind": "parameter", "displayName":
"SObject Search", "group": "common", "label": "", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "configuration", "description": "Salesforce SOSL search
string" },
"streamQueryResult": { "index": 46, "kind": "parameter", "displayName":
"Stream query result", "group": "common", "label": "", "required": false,
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": "false",
"configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "configuration", "description": "If true, streams SOQL
query result and transparently handles sub [...]
"updateTopic": { "index": 47, "kind": "parameter", "displayName": "Update
Topic", "group": "common", "label": "", "required": false, "type": "boolean",
"javaType": "boolean", "deprecated": false, "autowired": false, "secret":
false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "configuration", "description": "Whether to update an
existing Push Topic when using the Streaming API, defaults to false" },
- "fallbackToLatestReplayId": { "index": 48, "kind": "parameter",
"displayName": "Fallback To Latest Replay Id", "group": "consumer", "label":
"consumer", "required": false, "type": "boolean", "javaType": "boolean",
"deprecated": false, "autowired": false, "secret": false, "defaultValue":
false, "description": "Whether the pub\/sub consumer needs to fallback to the
latest replay id when the provided id is not valid. If set to false, the
component will keep retrying; in order to treat t [...]
+ "fallbackToLatestReplayId": { "index": 48, "kind": "parameter",
"displayName": "Fallback To Latest Replay Id", "group": "consumer", "label":
"consumer", "required": false, "type": "boolean", "javaType": "boolean",
"deprecated": false, "autowired": false, "secret": false, "defaultValue":
false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "configuration", "description": "Whether the pub\/sub
consumer needs to fallback to [...]
"pubSubBatchSize": { "index": 49, "kind": "parameter", "displayName": "Pub
Sub Batch Size", "group": "consumer", "label": "consumer", "required": false,
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 100, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "configuration", "description": "Max number of events to
receive in a batch from the Pub\/Sub API." },
"pubSubDeserializeType": { "index": 50, "kind": "parameter",
"displayName": "Pub Sub Deserialize Type", "group": "consumer", "label":
"consumer", "required": false, "type": "object", "javaType":
"org.apache.camel.component.salesforce.PubSubDeserializeType", "enum": [
"AVRO", "SPECIFIC_RECORD", "GENERIC_RECORD", "POJO", "JSON" ], "deprecated":
false, "autowired": false, "secret": false, "defaultValue": "AVRO",
"configurationClass": "org.apache.camel.component.salesforce.SalesforceEndp
[...]
"pubSubPojoClass": { "index": 51, "kind": "parameter", "displayName": "Pub
Sub Pojo Class", "group": "consumer", "label": "consumer", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.salesforce.SalesforceEndpointConfig",
"configurationField": "configuration", "description": "Fully qualified class
name to deserialize Pub\/Sub API event to." },
diff --git
a/components-starter/camel-salesforce-starter/src/main/docs/salesforce.json
b/components-starter/camel-salesforce-starter/src/main/docs/salesforce.json
index 7eb52556e9f..94caf1d0119 100644
--- a/components-starter/camel-salesforce-starter/src/main/docs/salesforce.json
+++ b/components-starter/camel-salesforce-starter/src/main/docs/salesforce.json
@@ -151,6 +151,13 @@
"sourceType":
"org.apache.camel.component.salesforce.springboot.SalesforceComponentConfiguration",
"defaultValue": -1
},
+ {
+ "name": "camel.component.salesforce.fallback-to-latest-replay-id",
+ "type": "java.lang.Boolean",
+ "description": "Whether the pub\/sub consumer needs to fallback to the
latest replay id when the provided id is not valid. If set to false, the
component will keep retrying; in order to treat this as an exception you can
use BridgeExceptionHandlerToErrorHandler and handle the exception in the
route.",
+ "sourceType":
"org.apache.camel.component.salesforce.springboot.SalesforceComponentConfiguration",
+ "defaultValue": false
+ },
{
"name": "camel.component.salesforce.format",
"type": "org.apache.camel.component.salesforce.internal.PayloadFormat",
diff --git
a/components-starter/camel-salesforce-starter/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentConfiguration.java
b/components-starter/camel-salesforce-starter/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentConfiguration.java
index e06918ad6cb..968773308c6 100644
---
a/components-starter/camel-salesforce-starter/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentConfiguration.java
+++
b/components-starter/camel-salesforce-starter/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentConfiguration.java
@@ -343,6 +343,14 @@ public class SalesforceComponentConfiguration
* with exceptions, that will be logged at WARN or ERROR level and ignored.
*/
private Boolean bridgeErrorHandler = false;
+ /**
+ * Whether the pub/sub consumer needs to fallback to the latest replay id
+ * when the provided id is not valid. If set to false, the component will
+ * keep retrying; in order to treat this as an exception you can use
+ * BridgeExceptionHandlerToErrorHandler and handle the exception in the
+ * route.
+ */
+ private Boolean fallbackToLatestReplayId = false;
/**
* Max number of events to receive in a batch from the Pub/Sub API.
*/
@@ -1051,6 +1059,14 @@ public class SalesforceComponentConfiguration
this.bridgeErrorHandler = bridgeErrorHandler;
}
+ public Boolean getFallbackToLatestReplayId() {
+ return fallbackToLatestReplayId;
+ }
+
+ public void setFallbackToLatestReplayId(Boolean fallbackToLatestReplayId) {
+ this.fallbackToLatestReplayId = fallbackToLatestReplayId;
+ }
+
public Integer getPubSubBatchSize() {
return pubSubBatchSize;
}