You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by dg...@apache.org on 2018/01/16 14:27:46 UTC

[1/6] incubator-unomi git commit: Create a mapping between Apache Unomi consent and SalesForce. The visitor need to accept consent before

Repository: incubator-unomi
Updated Branches:
  refs/heads/master c03d0a86b -> 37becc37b


Create a mapping between Apache Unomi consent and SalesForce. The visitor need to accept consent before


Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/a459cf3f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/a459cf3f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/a459cf3f

Branch: refs/heads/master
Commit: a459cf3f2137af6bc621700aa30b9373cea1eb2f
Parents: f074cb1
Author: Dinesh <di...@ynov.com>
Authored: Wed Dec 27 15:23:55 2017 +0100
Committer: Dinesh <di...@ynov.com>
Committed: Wed Dec 27 15:23:55 2017 +0100

----------------------------------------------------------------------
 .../unomi/sfdc/services/SFDCConfiguration.java  | 12 ++++++
 .../sfdc/services/internal/SFDCServiceImpl.java | 40 ++++++++++++++++++++
 .../resources/OSGI-INF/blueprint/blueprint.xml  |  2 +
 3 files changed, 54 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/a459cf3f/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
index 116daed..ac1aac0 100644
--- a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
+++ b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
@@ -43,6 +43,8 @@ public class SFDCConfiguration extends Item {
     private String sfdcChannel;
     private String sfdcFieldMappings;
     private String sfdcFieldMappingsIdentifier;
+
+
     private long sfdcSessionTimeout = 15 * 60 * 1000L; // 15 minutes by default
 
     private Map<String, String> unomiToSfdcFieldMappings = new HashMap<>();
@@ -53,6 +55,8 @@ public class SFDCConfiguration extends Item {
 
     private boolean sfdcCheckIfContactExistBeforeLeadCreation;
 
+    private String sfdcFieldsConsent;
+
     public SFDCConfiguration() { }
 
     public String getSfdcLoginEndpoint() {
@@ -154,6 +158,14 @@ public class SFDCConfiguration extends Item {
         this.sfdcCheckIfContactExistBeforeLeadCreation = sfdcCheckIfContactExistBeforeLeadCreation;
     }
 
+    public String getSfdcFieldsConsent() {
+        return sfdcFieldsConsent;
+    }
+
+    public void setSfdcFieldsConsent(String sfdcFieldsConsent) {
+        this.sfdcFieldsConsent = sfdcFieldsConsent;
+    }
+
     public Map<String, String> getUnomiToSfdcFieldMappings() {
         return unomiToSfdcFieldMappings;
     }

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/a459cf3f/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
index 0872932..3434773 100644
--- a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
+++ b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
@@ -31,6 +31,7 @@ import org.apache.http.impl.client.CloseableHttpClient;
 import org.apache.http.impl.client.HttpClientBuilder;
 import org.apache.http.message.BasicNameValuePair;
 import org.apache.http.util.EntityUtils;
+import org.apache.unomi.api.Consent;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.persistence.spi.PersistenceService;
 import org.apache.unomi.sfdc.services.SFDCConfiguration;
@@ -352,11 +353,44 @@ public class SFDCServiceImpl implements SFDCService {
         return false;
     }
 
+    private boolean isMappingConsent(Profile profile, Map<String, Object> sfdcLeadFields) {
+        Map<String, Consent> consents = profile.getConsents();
+        String mappingConsentsString = sfdcConfiguration.getSfdcFieldsConsent();
+        if (mappingConsentsString.isEmpty()) {
+            return false;
+        }
+        String[] mappingConsents = mappingConsentsString.split(",");
+        if (mappingConsents.length <= 0) {
+            logger.error("Error with the mapping field {} please check the cfg file", mappingConsentsString);
+            return false;
+        }
+        boolean isPerfectlyMapped = true;
+        for (String oneMappingConsent : mappingConsents) {
+            String[] oneRawMappingConsent = oneMappingConsent.split(":");
+
+            if (oneRawMappingConsent.length <= 0) {
+                logger.error("Error with the mapping field {} please check the cfg file", mappingConsentsString);
+                isPerfectlyMapped = false;
+            } else {
+                if (consents.get(oneRawMappingConsent[0]) == null) {
+                    logger.warn("Consent {} not found or didn't answer yet", oneRawMappingConsent[0]);
+                    isPerfectlyMapped = false;
+                }
+                if (isPerfectlyMapped) {
+                    sfdcLeadFields.put(oneRawMappingConsent[1], consents.get(oneRawMappingConsent[0]).getStatus().toString());
+                    logger.info("Consent {} was mapped with {}", oneRawMappingConsent[0], oneRawMappingConsent[1]);
+                }
+            }
+        }
+        return isPerfectlyMapped;
+    }
+
     @Override
     public String createOrUpdateLead(Profile profile) {
         if (!isConnected()) {
             return null;
         }
+
         // first we must check if an existing contact exists for the profile.
         String unomiIdentifierValue = (String) profile.getProperty(sfdcConfiguration.getUnomiIdentifierField());
         if (isProfileInContacts(unomiIdentifierValue)) {
@@ -414,6 +448,12 @@ public class SFDCServiceImpl implements SFDCService {
                 }
             }
         }
+        if (isMappingConsent(profile, sfdcLeadFields)) {
+            logger.warn("Ok Well Done");
+        } else {
+            logger.warn("The consents mapping went wrong");
+        }
+
 
         if (sfdcLeadFields.size() == 0) {
             logger.info("No SFDC field value to send, will not send anything to Salesforce.");

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/a459cf3f/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml
index bf0108d..c361200 100644
--- a/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml
+++ b/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml
@@ -35,6 +35,7 @@
             <cm:property name="sfdc.fields.mappings" value=""/>
             <cm:property name="sfdc.session.timeout" value="900000"/>
             <cm:property name="sfdc.checkIfContactExistBeforeLeadCreation" value="false"/>
+            <cm:property name="sfdc.fields.consent" value=""/>
         </cm:default-properties>
     </cm:property-placeholder>
 
@@ -53,6 +54,7 @@
         <property name="sfdcFieldMappings" value="${sfdc.fields.mappings}"/>
         <property name="sfdcFieldMappingsIdentifier" value="${sfdc.fields.mappings.identifier}"/>
         <property name="sfdcSessionTimeout" value="${sfdc.session.timeout}" />
+        <property name="sfdcFieldsConsent" value="${sfdc.fields.consent}" />
         <property name="sfdcCheckIfContactExistBeforeLeadCreation"
                   value="${sfdc.checkIfContactExistBeforeLeadCreation}"/>
     </bean>


[3/6] incubator-unomi git commit: code cleanup

Posted by dg...@apache.org.
code cleanup


Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/9c4ec804
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/9c4ec804
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/9c4ec804

Branch: refs/heads/master
Commit: 9c4ec8046876a00ec19381f5860d88f22b2f231a
Parents: 9b29d94
Author: Dinesh <di...@ynov.com>
Authored: Fri Jan 12 10:49:09 2018 +0100
Committer: Dinesh <di...@ynov.com>
Committed: Fri Jan 12 10:49:09 2018 +0100

----------------------------------------------------------------------
 .../org/apache/unomi/sfdc/services/SFDCConfiguration.java    | 8 ++------
 .../apache/unomi/sfdc/services/internal/SFDCServiceImpl.java | 2 --
 2 files changed, 2 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/9c4ec804/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
index f176ce8..e71004b 100644
--- a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
+++ b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
@@ -53,8 +53,7 @@ public class SFDCConfiguration extends Item {
     private Map<String, String> unomiToSfdcFieldMappings = new HashMap<>();
     private Map<String, String> sfdcToUnomiFieldMappings = new HashMap<>();
 
-    public SFDCConfiguration() {
-    }
+    public SFDCConfiguration() { }
 
     public String getSfdcLoginEndpoint() {
         return sfdcLoginEndpoint;
@@ -84,9 +83,7 @@ public class SFDCConfiguration extends Item {
         return sfdcUserSecurityToken;
     }
 
-    public void setSfdcUserSecurityToken(String sfdcUserSecurityToken) {
-        this.sfdcUserSecurityToken = sfdcUserSecurityToken;
-    }
+    public void setSfdcUserSecurityToken(String sfdcUserSecurityToken) { this.sfdcUserSecurityToken = sfdcUserSecurityToken; }
 
     public String getSfdcConsumerKey() {
         return sfdcConsumerKey;
@@ -138,7 +135,6 @@ public class SFDCConfiguration extends Item {
             sfdcIdentifierField = sfdcFieldMappingsIdentifierParts[1];
         }
     }
-
     public long getSfdcSessionTimeout() {
         return sfdcSessionTimeout;
     }

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/9c4ec804/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
index c3cdf38..4bc2555 100644
--- a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
+++ b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
@@ -66,7 +66,6 @@ public class SFDCServiceImpl implements SFDCService {
 
     private static final String REST_ENDPOINT_URI = "/services/data/v38.0";
     private static final String STREAMING_ENDPOINT_URI = "/cometd/38.0";
-
     private static final String RESULTSET_KEY_CONTACT = "CONTACT";
     private static final String RESULTSET_KEY_LEAD = "LEAD";
 
@@ -453,7 +452,6 @@ public class SFDCServiceImpl implements SFDCService {
             logger.warn("The consents mapping went wrong");
         }
 
-
         if (sfdcLeadFields.size() == 0) {
             logger.info("No SFDC field value to send, will not send anything to Salesforce.");
             if (foundExistingSfdcLeadIds.size() == 0) {


[6/6] incubator-unomi git commit: This closes pull request number #42

Posted by dg...@apache.org.
This closes pull request number #42


Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/37becc37
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/37becc37
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/37becc37

Branch: refs/heads/master
Commit: 37becc37beed91c90981bedbfdbd510308605a61
Parents: c03d0a8 7d227ac
Author: dgaillard <dg...@jahia.com>
Authored: Tue Jan 16 15:27:23 2018 +0100
Committer: dgaillard <dg...@jahia.com>
Committed: Tue Jan 16 15:27:23 2018 +0100

----------------------------------------------------------------------
 .../unomi/sfdc/services/SFDCConfiguration.java  | 23 ++++++++++------
 .../sfdc/services/internal/SFDCServiceImpl.java | 29 +++++++++++++++++++-
 .../resources/OSGI-INF/blueprint/blueprint.xml  |  2 ++
 .../main/resources/org.apache.unomi.sfdc.cfg    |  1 +
 4 files changed, 45 insertions(+), 10 deletions(-)
----------------------------------------------------------------------



[2/6] incubator-unomi git commit: Add Consents mapping to sfdc extension

Posted by dg...@apache.org.
Add Consents mapping to sfdc extension


Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/9b29d94b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/9b29d94b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/9b29d94b

Branch: refs/heads/master
Commit: 9b29d94ba0f4826f48cdd005e616728fef936756
Parents: a459cf3
Author: Dinesh <di...@ynov.com>
Authored: Wed Jan 3 10:50:55 2018 +0100
Committer: Dinesh <di...@ynov.com>
Committed: Wed Jan 3 10:50:55 2018 +0100

----------------------------------------------------------------------
 .../unomi/sfdc/services/SFDCConfiguration.java  | 23 +++++++++-----------
 .../sfdc/services/internal/SFDCServiceImpl.java |  3 +--
 .../resources/OSGI-INF/blueprint/blueprint.xml  |  4 ++--
 .../main/resources/org.apache.unomi.sfdc.cfg    |  1 +
 4 files changed, 14 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/9b29d94b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
index ac1aac0..f176ce8 100644
--- a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
+++ b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
@@ -43,21 +43,18 @@ public class SFDCConfiguration extends Item {
     private String sfdcChannel;
     private String sfdcFieldMappings;
     private String sfdcFieldMappingsIdentifier;
-
+    private String unomiIdentifierField;
+    private String sfdcIdentifierField;
+    private boolean sfdcCheckIfContactExistBeforeLeadCreation;
+    private String sfdcFieldsConsents;
 
     private long sfdcSessionTimeout = 15 * 60 * 1000L; // 15 minutes by default
 
     private Map<String, String> unomiToSfdcFieldMappings = new HashMap<>();
     private Map<String, String> sfdcToUnomiFieldMappings = new HashMap<>();
 
-    private String unomiIdentifierField;
-    private String sfdcIdentifierField;
-
-    private boolean sfdcCheckIfContactExistBeforeLeadCreation;
-
-    private String sfdcFieldsConsent;
-
-    public SFDCConfiguration() { }
+    public SFDCConfiguration() {
+    }
 
     public String getSfdcLoginEndpoint() {
         return sfdcLoginEndpoint;
@@ -158,12 +155,12 @@ public class SFDCConfiguration extends Item {
         this.sfdcCheckIfContactExistBeforeLeadCreation = sfdcCheckIfContactExistBeforeLeadCreation;
     }
 
-    public String getSfdcFieldsConsent() {
-        return sfdcFieldsConsent;
+    public String getSfdcFieldsConsents() {
+        return sfdcFieldsConsents;
     }
 
-    public void setSfdcFieldsConsent(String sfdcFieldsConsent) {
-        this.sfdcFieldsConsent = sfdcFieldsConsent;
+    public void setSfdcFieldsConsents(String sfdcFieldsConsents) {
+        this.sfdcFieldsConsents = sfdcFieldsConsents;
     }
 
     public Map<String, String> getUnomiToSfdcFieldMappings() {

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/9b29d94b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
index 3434773..c3cdf38 100644
--- a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
+++ b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
@@ -355,7 +355,7 @@ public class SFDCServiceImpl implements SFDCService {
 
     private boolean isMappingConsent(Profile profile, Map<String, Object> sfdcLeadFields) {
         Map<String, Consent> consents = profile.getConsents();
-        String mappingConsentsString = sfdcConfiguration.getSfdcFieldsConsent();
+        String mappingConsentsString = sfdcConfiguration.getSfdcFieldsConsents();
         if (mappingConsentsString.isEmpty()) {
             return false;
         }
@@ -390,7 +390,6 @@ public class SFDCServiceImpl implements SFDCService {
         if (!isConnected()) {
             return null;
         }
-
         // first we must check if an existing contact exists for the profile.
         String unomiIdentifierValue = (String) profile.getProperty(sfdcConfiguration.getUnomiIdentifierField());
         if (isProfileInContacts(unomiIdentifierValue)) {

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/9b29d94b/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml
index c361200..e6603c2 100644
--- a/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml
+++ b/extensions/salesforce-connector/services/src/main/resources/OSGI-INF/blueprint/blueprint.xml
@@ -35,7 +35,7 @@
             <cm:property name="sfdc.fields.mappings" value=""/>
             <cm:property name="sfdc.session.timeout" value="900000"/>
             <cm:property name="sfdc.checkIfContactExistBeforeLeadCreation" value="false"/>
-            <cm:property name="sfdc.fields.consent" value=""/>
+            <cm:property name="sfdc.fields.consents" value=""/>
         </cm:default-properties>
     </cm:property-placeholder>
 
@@ -54,7 +54,7 @@
         <property name="sfdcFieldMappings" value="${sfdc.fields.mappings}"/>
         <property name="sfdcFieldMappingsIdentifier" value="${sfdc.fields.mappings.identifier}"/>
         <property name="sfdcSessionTimeout" value="${sfdc.session.timeout}" />
-        <property name="sfdcFieldsConsent" value="${sfdc.fields.consent}" />
+        <property name="sfdcFieldsConsents" value="${sfdc.fields.consents}" />
         <property name="sfdcCheckIfContactExistBeforeLeadCreation"
                   value="${sfdc.checkIfContactExistBeforeLeadCreation}"/>
     </bean>

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/9b29d94b/extensions/salesforce-connector/services/src/main/resources/org.apache.unomi.sfdc.cfg
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/resources/org.apache.unomi.sfdc.cfg b/extensions/salesforce-connector/services/src/main/resources/org.apache.unomi.sfdc.cfg
index db0f950..14e7371 100644
--- a/extensions/salesforce-connector/services/src/main/resources/org.apache.unomi.sfdc.cfg
+++ b/extensions/salesforce-connector/services/src/main/resources/org.apache.unomi.sfdc.cfg
@@ -25,3 +25,4 @@ sfdc.fields.mappings=email=Email,firstName=FirstName,lastName=LastName,company=C
 sfdc.fields.mappings.identifier=email=Email
 sfdc.checkIfContactExistBeforeLeadCreation=false
 sfdc.session.timeout=900000
+sfdc.fields.consents=


[4/6] incubator-unomi git commit: change a logger warn to info

Posted by dg...@apache.org.
change a logger warn to info


Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/ab530c8c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/ab530c8c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/ab530c8c

Branch: refs/heads/master
Commit: ab530c8c614f73477249c47f3db91c5e8ff6b6d6
Parents: 9c4ec80
Author: Dinesh <di...@ynov.com>
Authored: Fri Jan 12 11:19:30 2018 +0100
Committer: Dinesh <di...@ynov.com>
Committed: Fri Jan 12 11:19:30 2018 +0100

----------------------------------------------------------------------
 .../org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/ab530c8c/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
index 4bc2555..fad7dbd 100644
--- a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
+++ b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
@@ -447,7 +447,7 @@ public class SFDCServiceImpl implements SFDCService {
             }
         }
         if (isMappingConsent(profile, sfdcLeadFields)) {
-            logger.warn("Ok Well Done");
+            logger.info("The consents were mapped correctly");
         } else {
             logger.warn("The consents mapping went wrong");
         }


[5/6] incubator-unomi git commit: Review and clean code

Posted by dg...@apache.org.
Review and clean code


Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/7d227ac1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/7d227ac1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/7d227ac1

Branch: refs/heads/master
Commit: 7d227ac1d6da1eb9965718b0c5c922dee0531381
Parents: ab530c8
Author: dgaillard <dg...@jahia.com>
Authored: Tue Jan 16 15:21:17 2018 +0100
Committer: dgaillard <dg...@jahia.com>
Committed: Tue Jan 16 15:21:17 2018 +0100

----------------------------------------------------------------------
 .../sfdc/services/internal/SFDCServiceImpl.java | 50 ++++++++------------
 1 file changed, 20 insertions(+), 30 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/7d227ac1/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
----------------------------------------------------------------------
diff --git a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
index fad7dbd..3f1ce0a 100644
--- a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
+++ b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/internal/SFDCServiceImpl.java
@@ -352,36 +352,30 @@ public class SFDCServiceImpl implements SFDCService {
         return false;
     }
 
-    private boolean isMappingConsent(Profile profile, Map<String, Object> sfdcLeadFields) {
+    private void addConsents(Profile profile, Map<String, Object> sfdcLeadFields) {
         Map<String, Consent> consents = profile.getConsents();
         String mappingConsentsString = sfdcConfiguration.getSfdcFieldsConsents();
-        if (mappingConsentsString.isEmpty()) {
-            return false;
-        }
-        String[] mappingConsents = mappingConsentsString.split(",");
-        if (mappingConsents.length <= 0) {
-            logger.error("Error with the mapping field {} please check the cfg file", mappingConsentsString);
-            return false;
-        }
-        boolean isPerfectlyMapped = true;
-        for (String oneMappingConsent : mappingConsents) {
-            String[] oneRawMappingConsent = oneMappingConsent.split(":");
-
-            if (oneRawMappingConsent.length <= 0) {
-                logger.error("Error with the mapping field {} please check the cfg file", mappingConsentsString);
-                isPerfectlyMapped = false;
-            } else {
-                if (consents.get(oneRawMappingConsent[0]) == null) {
-                    logger.warn("Consent {} not found or didn't answer yet", oneRawMappingConsent[0]);
-                    isPerfectlyMapped = false;
-                }
-                if (isPerfectlyMapped) {
-                    sfdcLeadFields.put(oneRawMappingConsent[1], consents.get(oneRawMappingConsent[0]).getStatus().toString());
-                    logger.info("Consent {} was mapped with {}", oneRawMappingConsent[0], oneRawMappingConsent[1]);
+        if (!mappingConsentsString.isEmpty()) {
+            String[] mappingConsents = mappingConsentsString.split(",");
+            if (mappingConsents.length > 0) {
+                for (String mappingConsent : mappingConsents) {
+                    String[] mappingConsentArray = mappingConsent.split(":");
+                    if (mappingConsentArray.length <= 0) {
+                        logger.error("Error with the mapping for field {}, this field will not be mapped please check the cfg file", mappingConsentsString);
+                    } else {
+                        String consentUnomiId = mappingConsentArray[0];
+                        if (consents.containsKey(consentUnomiId)) {
+                            String consentSfdcId = mappingConsentArray[1];
+                            String consentValue = consents.get(consentUnomiId).getStatus().toString();
+                            sfdcLeadFields.put(consentSfdcId, consentValue);
+                            logger.debug("Consent {} with value {} was mapped with {}", consentUnomiId, consentValue, consentSfdcId);
+                        } else {
+                            logger.debug("Consent {} not found in current profile or not answered yet", consentUnomiId);
+                        }
+                    }
                 }
             }
         }
-        return isPerfectlyMapped;
     }
 
     @Override
@@ -446,11 +440,7 @@ public class SFDCServiceImpl implements SFDCService {
                 }
             }
         }
-        if (isMappingConsent(profile, sfdcLeadFields)) {
-            logger.info("The consents were mapped correctly");
-        } else {
-            logger.warn("The consents mapping went wrong");
-        }
+        addConsents(profile, sfdcLeadFields);
 
         if (sfdcLeadFields.size() == 0) {
             logger.info("No SFDC field value to send, will not send anything to Salesforce.");