Repository: metamodel
Updated Branches:
  refs/heads/4.6.x [created] d11d9fbe4


METAMODEL-1140: Allowed SalesforceDataContext without sec. token

Closes #143

(cherry picked from commit 9976b41)


Project: http://git-wip-us.apache.org/repos/asf/metamodel/repo
Commit: http://git-wip-us.apache.org/repos/asf/metamodel/commit/6b91fa65
Tree: http://git-wip-us.apache.org/repos/asf/metamodel/tree/6b91fa65
Diff: http://git-wip-us.apache.org/repos/asf/metamodel/diff/6b91fa65

Branch: refs/heads/4.6.x
Commit: 6b91fa656b1c06aee7e518304070c779c4eca784
Parents: b0cfe3a
Author: David Krause <[email protected]>
Authored: Sat May 13 05:29:28 2017 +0200
Committer: Dennis Du Krøger <[email protected]>
Committed: Thu Aug 24 21:55:52 2017 +0200

----------------------------------------------------------------------
 CHANGES.md                                           |  2 ++
 .../metamodel/salesforce/SalesforceDataContext.java  | 15 ++++++++++++---
 2 files changed, 14 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/metamodel/blob/6b91fa65/CHANGES.md
----------------------------------------------------------------------
diff --git a/CHANGES.md b/CHANGES.md
index ebc7e66..0f6c990 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,3 +1,5 @@
+ * [METAMODEL-1140] - Allowed SalesforceDataContext without a security token.
+
 ### Apache MetaModel 4.6.0
 
  * [METAMODEL-1136] - New connector for Amazon DynamoDB.

http://git-wip-us.apache.org/repos/asf/metamodel/blob/6b91fa65/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java
----------------------------------------------------------------------
diff --git 
a/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java
 
b/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java
index e1f95aa..8179ee5 100644
--- 
a/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java
+++ 
b/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java
@@ -24,7 +24,6 @@ import java.util.List;
 import java.util.Locale;
 import java.util.TimeZone;
 
-import com.sforce.ws.ConnectorConfig;
 import org.apache.metamodel.MetaModelException;
 import org.apache.metamodel.QueryPostprocessDataContext;
 import org.apache.metamodel.UpdateScript;
@@ -48,6 +47,7 @@ import com.sforce.soap.partner.Connector;
 import com.sforce.soap.partner.PartnerConnection;
 import com.sforce.soap.partner.QueryResult;
 import com.sforce.ws.ConnectionException;
+import com.sforce.ws.ConnectorConfig;
 
 /**
  * A datacontext that uses the Salesforce API.
@@ -77,7 +77,7 @@ public class SalesforceDataContext extends 
QueryPostprocessDataContext implement
         try {
             ConnectorConfig config = new ConnectorConfig();
             config.setUsername(username);
-            config.setPassword(password + securityToken);
+            config.setPassword(securityToken == null ? password : password + 
securityToken);
             config.setAuthEndpoint(endpoint);
             config.setServiceEndpoint(endpoint);
             _connection = Connector.newConnection(config);
@@ -88,7 +88,16 @@ public class SalesforceDataContext extends 
QueryPostprocessDataContext implement
 
     public SalesforceDataContext(String username, String password, String 
securityToken) {
         try {
-            _connection = Connector.newConnection(username, password + 
securityToken);
+            _connection =
+                    Connector.newConnection(username, securityToken == null ? 
password : password + securityToken);
+        } catch (ConnectionException e) {
+            throw SalesforceUtils.wrapException(e, "Failed to log in to 
Salesforce service");
+        }
+    }
+
+    public SalesforceDataContext(String username, String password) {
+        try {
+            _connection = Connector.newConnection(username, password);
         } catch (ConnectionException e) {
             throw SalesforceUtils.wrapException(e, "Failed to log in to 
Salesforce service");
         }

Reply via email to