Repository: incubator-unomi Updated Branches: refs/heads/master 4368dcb33 -> 3681c0155
UNOMI-41: Add score modifiers Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/3681c015 Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/3681c015 Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/3681c015 Branch: refs/heads/master Commit: 3681c0155da4a076ad5b8396dd4a3817e7b00e97 Parents: 4368dcb Author: Quentin Lamerand <[email protected]> Authored: Wed Jul 13 18:16:24 2016 +0200 Committer: Quentin Lamerand <[email protected]> Committed: Wed Jul 13 18:16:24 2016 +0200 ---------------------------------------------------------------------- .../apache/unomi/services/services/SegmentServiceImpl.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/3681c015/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java ---------------------------------------------------------------------- diff --git a/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java b/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java index b000c94..de02645 100644 --- a/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java +++ b/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java @@ -407,6 +407,7 @@ public class SegmentServiceImpl implements SegmentService, SynchronousBundleList } List<Scoring> allScoring = this.allScoring; + Map<String, Integer> scoreModifiers = (Map<String, Integer>) profile.getSystemProperties().get("scoreModifiers"); for (Scoring scoring : allScoring) { if (scoring.getMetadata().isEnabled()) { int score = 0; @@ -415,8 +416,12 @@ public class SegmentServiceImpl implements SegmentService, SynchronousBundleList score += scoringElement.getValue(); } } + String scoringId = scoring.getMetadata().getId(); + if (scoreModifiers != null && scoreModifiers.containsKey(scoringId) && scoreModifiers.get(scoringId) != null) { + score += scoreModifiers.get(scoringId); + } if (score > 0) { - scores.put(scoring.getMetadata().getId(), score); + scores.put(scoringId, score); } } } @@ -438,7 +443,7 @@ public class SegmentServiceImpl implements SegmentService, SynchronousBundleList } public PartialList<Metadata> getScoringMetadatas(int offset, int size, String sortBy) { - return getMetadatas(offset, size, sortBy, Scoring.class); + return getMetadatas(offset, size, sortBy, Scoring.class); } public PartialList<Metadata> getScoringMetadatas(Query query) {
