You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by je...@apache.org on 2023/07/29 16:45:22 UTC

[camel] branch main updated: CAMEL-19161: camel-salesforce: Lazy login not allowed with consumers.

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

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


The following commit(s) were added to refs/heads/main by this push:
     new 595ce85f9d5 CAMEL-19161: camel-salesforce: Lazy login not allowed with consumers.
595ce85f9d5 is described below

commit 595ce85f9d5c74d6413fd7a8233b18cf21781aeb
Author: Jeremy Ross <je...@gmail.com>
AuthorDate: Sat Jul 29 11:42:27 2023 -0500

    CAMEL-19161: camel-salesforce: Lazy login not allowed with consumers.
---
 .../org/apache/camel/component/salesforce/PubSubApiConsumer.java    | 6 ++++++
 .../org/apache/camel/component/salesforce/SalesforceComponent.java  | 2 +-
 .../component/salesforce/internal/streaming/SubscriptionHelper.java | 4 ++++
 3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/PubSubApiConsumer.java b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/PubSubApiConsumer.java
index 2b7589bbf7d..043638a0143 100644
--- a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/PubSubApiConsumer.java
+++ b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/PubSubApiConsumer.java
@@ -24,6 +24,7 @@ import org.apache.camel.AsyncCallback;
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
 import org.apache.camel.Processor;
+import org.apache.camel.component.salesforce.api.SalesforceException;
 import org.apache.camel.component.salesforce.internal.client.PubSubApiClient;
 import org.apache.camel.support.DefaultConsumer;
 import org.apache.camel.support.service.ServiceHelper;
@@ -75,6 +76,11 @@ public class PubSubApiConsumer extends DefaultConsumer {
     @Override
     protected void doStart() throws Exception {
         super.doStart();
+
+        if (endpoint.getComponent().getLoginConfig().isLazyLogin()) {
+            throw new SalesforceException("Lazy login is not supported by salesforce consumers.", null);
+        }
+        
         this.eventClassMap = endpoint.getComponent().getEventClassMap();
         this.pubSubClient = new PubSubApiClient(
                 endpoint.getComponent().getSession(), endpoint.getComponent().getLoginConfig(),
diff --git a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java
index fd1745fdce8..8eb6309154c 100644
--- a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java
+++ b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java
@@ -161,7 +161,7 @@ public class SalesforceComponent extends DefaultComponent implements SSLContextP
 
     @Metadata(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 of any authentication issues.",
+                            + " aware of any authentication issues. Lazy login is not supported by salesforce consumers.",
               defaultValue = "false", label = "common,security")
     private boolean lazyLogin;
 
diff --git a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/internal/streaming/SubscriptionHelper.java b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/internal/streaming/SubscriptionHelper.java
index 0addba56da8..b4d1100ac95 100644
--- a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/internal/streaming/SubscriptionHelper.java
+++ b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/internal/streaming/SubscriptionHelper.java
@@ -103,6 +103,10 @@ public class SubscriptionHelper extends ServiceSupport {
     protected void doStart() throws Exception {
         session = component.getSession();
 
+        if (component.getLoginConfig().isLazyLogin()) {
+            throw new CamelException("Lazy login is not supported by salesforce consumers.");
+        }
+
         // create CometD client
         client = createClient(component, session);