for (String segment : profile.getSegments()) { Segment s = segmentService.getSegmentDefinition(segment); segmentNames.add(csvEncode(s.getMetadata().getName()));
for (String segment : profile.getSegments()) { Segment s = segmentService.getSegmentDefinition(segment); segmentNames.add(csvEncode(s.getMetadata().getName()));
@java.lang.Override protected DataTable buildDataTable() { Query query = new Query(); query.setSortby("properties.lastVisit:desc"); query.setLimit(maxEntries); Condition matchAllCondition = new Condition(definitionsService.getConditionType("matchAllCondition")); query.setCondition(matchAllCondition); PartialList<Profile> lastModifiedProfiles = profileService.search(query, Profile.class); DataTable dataTable = new DataTable(); for (Profile profile : lastModifiedProfiles.getList()) { ArrayList<Comparable> rowData = new ArrayList<>(); rowData.add(profile.getItemId()); rowData.add(profile.getScope()); rowData.add(StringUtils.join(profile.getSegments(), ",")); rowData.add(StringUtils.join(profile.getConsents().keySet(), ",")); rowData.add((String) profile.getProperty("lastVisit")); dataTable.addRow(rowData.toArray(new Comparable[rowData.size()])); } return dataTable; } }
Profile profile = (Profile) item; if ("segments".equals(expression)) { return profile.getSegments();
if (profile.getSegments() != null && profile.getSegments().size() > 0) { masterProfile.getSegments().addAll(profile.getSegments()); masterProfileChanged = true;
if (profile.getSegments() != null && profile.getSegments().size() > 0) { masterProfile.getSegments().addAll(profile.getSegments());
long t2= System.currentTimeMillis(); for (Profile profileToAdd : profilesToAdd.getList()) { profileToAdd.getSegments().add(segment.getItemId()); persistenceService.update(profileToAdd.getItemId(), null, Profile.class, "segments", profileToAdd.getSegments()); Event profileUpdated = new Event("profileUpdated", null, profileToAdd, null, null, profileToAdd, new Date()); profileUpdated.setPersistent(false); long t2= System.currentTimeMillis(); for (Profile profileToRemove : profilesToRemove.getList()) { profileToRemove.getSegments().remove(segment.getItemId()); persistenceService.update(profileToRemove.getItemId(), null, Profile.class, "segments", profileToRemove.getSegments()); Event profileUpdated = new Event("profileUpdated", null, profileToRemove, null, null, profileToRemove, new Date()); profileUpdated.setPersistent(false); while (profilesToRemove.getList().size() > 0) { for (Profile profileToRemove : profilesToRemove.getList()) { profileToRemove.getSegments().remove(segment.getItemId()); persistenceService.update(profileToRemove.getItemId(), null, Profile.class, "segments", profileToRemove.getSegments()); updatedProfileCount++;
profileToAdd.getSegments().add(segment.getItemId()); persistenceService.update(profileToAdd.getItemId(), null, Profile.class, "segments", profileToAdd.getSegments()); Event profileUpdated = new Event("profileUpdated", null, profileToAdd, null, null, profileToAdd, new Date()); profileUpdated.setPersistent(false); profileToRemove.getSegments().remove(segment.getItemId()); persistenceService.update(profileToRemove.getItemId(), null, Profile.class, "segments", profileToRemove.getSegments()); Event profileUpdated = new Event("profileUpdated", null, profileToRemove, null, null, profileToRemove, new Date()); profileUpdated.setPersistent(false); while (profilesToRemove.getList().size() > 0) { for (Profile profileToRemove : profilesToRemove.getList()) { profileToRemove.getSegments().remove(segment.getItemId()); persistenceService.update(profileToRemove.getItemId(), null, Profile.class, "segments", profileToRemove.getSegments()); updatedProfileCount++;
@Override public int execute(Action action, Event event) { if (event.getProfile().isAnonymousProfile()) { return EventService.NO_CHANGE; } boolean updated = false; SegmentsAndScores segmentsAndScoringForProfile = segmentService.getSegmentsAndScoresForProfile(event.getProfile()); Set<String> segments = segmentsAndScoringForProfile.getSegments(); if (!segments.equals(event.getProfile().getSegments())) { event.getProfile().setSegments(segments); updated = true; } Map<String, Integer> scores = segmentsAndScoringForProfile.getScores(); if (!scores.equals(event.getProfile().getScores())) { event.getProfile().setScores(scores); updated = true; } return updated ? EventService.PROFILE_UPDATED : EventService.NO_CHANGE; } }
profileToRemove.getSegments().remove(segmentId); persistenceService.update(profileToRemove.getItemId(), null, Profile.class, "segments", profileToRemove.getSegments());
profileToRemove.getSegments().remove(segmentId); persistenceService.update(profileToRemove.getItemId(), null, Profile.class, "segments", profileToRemove.getSegments());