[2/2] incubator-unomi git commit: UNOMI-102 : Update segments and scores after the import (use batch)

2017-07-13 Thread amidani
UNOMI-102 : Update segments and scores after the import (use batch)


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

Branch: refs/heads/master
Commit: 75e89cb738c98c0560d1f7a095752bf8a158c2fc
Parents: 1e605ac
Author: Abdelkader Midani 
Authored: Thu Jul 13 12:08:41 2017 +0200
Committer: Abdelkader Midani 
Committed: Thu Jul 13 12:09:34 2017 +0200

--
 .../org/apache/unomi/router/services/ProfileImportServiceImpl.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/75e89cb7/extensions/router/router-service/src/main/java/org/apache/unomi/router/services/ProfileImportServiceImpl.java
--
diff --git 
a/extensions/router/router-service/src/main/java/org/apache/unomi/router/services/ProfileImportServiceImpl.java
 
b/extensions/router/router-service/src/main/java/org/apache/unomi/router/services/ProfileImportServiceImpl.java
index 7f9b503..51cbc55 100644
--- 
a/extensions/router/router-service/src/main/java/org/apache/unomi/router/services/ProfileImportServiceImpl.java
+++ 
b/extensions/router/router-service/src/main/java/org/apache/unomi/router/services/ProfileImportServiceImpl.java
@@ -68,6 +68,6 @@ public class ProfileImportServiceImpl extends 
AbstractCustomServiceImpl implemen
 profileToImport.getMergingProperty(), 
profileToImport.getProperties().get(profileToImport.getMergingProperty()));
 }
 logger.debug("-");
-return persistenceService.save(existingProfile);
+return persistenceService.save(existingProfile, true);
 }
 }



incubator-unomi git commit: UNOMI-102 : Update segments and scores after the import

2017-07-12 Thread amidani
Repository: incubator-unomi
Updated Branches:
  refs/heads/master 3f3b20aaf -> f0f871da4


UNOMI-102 : Update segments and scores after the import


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

Branch: refs/heads/master
Commit: f0f871da408e58682ff3236cbe4772b28f842439
Parents: 3f3b20a
Author: Abdelkader Midani 
Authored: Wed Jul 12 17:29:34 2017 +0200
Committer: Abdelkader Midani 
Committed: Wed Jul 12 17:29:34 2017 +0200

--
 .../core/processor/UnomiStorageProcessor.java   | 23 
 .../resources/OSGI-INF/blueprint/blueprint.xml  |  2 ++
 .../services/ProfileImportServiceImpl.java  |  3 +++
 3 files changed, 28 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/f0f871da/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/UnomiStorageProcessor.java
--
diff --git 
a/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/UnomiStorageProcessor.java
 
b/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/UnomiStorageProcessor.java
index 7e55185..d5c1b22 100644
--- 
a/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/UnomiStorageProcessor.java
+++ 
b/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/UnomiStorageProcessor.java
@@ -19,15 +19,21 @@ package org.apache.unomi.router.core.processor;
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
 import org.apache.camel.Processor;
+import org.apache.unomi.api.segments.SegmentsAndScores;
+import org.apache.unomi.api.services.SegmentService;
 import org.apache.unomi.router.api.ProfileToImport;
 import org.apache.unomi.router.api.services.ProfileImportService;
 
+import java.util.Map;
+import java.util.Set;
+
 /**
  * Created by amidani on 29/12/2016.
  */
 public class UnomiStorageProcessor implements Processor {
 
 private ProfileImportService profileImportService;
+private SegmentService segmentService;
 
 @Override
 public void process(Exchange exchange)
@@ -36,6 +42,19 @@ public class UnomiStorageProcessor implements Processor {
 Message message = exchange.getIn();
 
 ProfileToImport profileToImport = (ProfileToImport) 
message.getBody();
+
+if(!profileToImport.isProfileToDelete()) {
+SegmentsAndScores segmentsAndScoringForProfile = 
segmentService.getSegmentsAndScoresForProfile(profileToImport);
+Set segments = 
segmentsAndScoringForProfile.getSegments();
+if (!segments.equals(profileToImport.getSegments())) {
+profileToImport.setSegments(segments);
+}
+Map scores = 
segmentsAndScoringForProfile.getScores();
+if (!scores.equals(profileToImport.getScores())) {
+profileToImport.setScores(scores);
+}
+}
+
 
profileImportService.saveMergeDeleteImportedProfile(profileToImport);
 }
 }
@@ -43,4 +62,8 @@ public class UnomiStorageProcessor implements Processor {
 public void setProfileImportService(ProfileImportService 
profileImportService) {
 this.profileImportService = profileImportService;
 }
+
+public void setSegmentService(SegmentService segmentService) {
+this.segmentService = segmentService;
+}
 }

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/f0f871da/extensions/router/router-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
--
diff --git 
a/extensions/router/router-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
 
b/extensions/router/router-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
index ea6ba3c..1d3ddca 100644
--- 
a/extensions/router/router-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
+++ 
b/extensions/router/router-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
@@ -43,6 +43,7 @@
 
 
 
+
 
 
 
@@ -141,6 +142,7 @@
 
 
 
+
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/f0f871da/extensions/router/router-service/src/main/java/org/apache/unomi/router/services/ProfileImportServiceImpl.java
--
diff --git