This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository pollen. See http://git.chorem.org/pollen.git commit f95aefe14935463f9f0dbbd2903115cd1ba54538 Author: Tony CHEMIT <chemit@codelutin.com> Date: Fri Jun 6 11:50:50 2014 +0200 improve favorite list import --- .../services/service/FavoriteListImport.java | 9 ++++++- .../service/FavoriteListImportFromFile.java | 29 ++++++++------------- .../service/FavoriteListImportFromLdap.java | 30 ++++++++-------------- .../services/service/FavoriteListService.java | 10 ++++++-- 4 files changed, 37 insertions(+), 41 deletions(-) diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImport.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImport.java index 6a59535..84f31c8 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImport.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImport.java @@ -21,6 +21,11 @@ package org.chorem.pollen.services.service; * #L% */ +import org.chorem.pollen.persistence.entity.FavoriteList; +import org.chorem.pollen.persistence.entity.FavoriteListMember; + +import java.util.List; + /** * Created on 6/5/14. * @@ -29,5 +34,7 @@ package org.chorem.pollen.services.service; */ public interface FavoriteListImport { - void doImport(String favoriteListId) throws FavoriteListImportException; + void doImport(FavoriteList favoriteList, + List<FavoriteListMember> existingFavoriteListMembers) throws FavoriteListImportException; + } diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImportFromFile.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImportFromFile.java index 28acbeb..76c85ee 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImportFromFile.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImportFromFile.java @@ -31,7 +31,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.chorem.pollen.persistence.entity.FavoriteList; import org.chorem.pollen.persistence.entity.FavoriteListMember; -import org.chorem.pollen.persistence.entity.PollenUser; import org.chorem.pollen.services.PollenTechnicalException; import org.nuiton.util.StringUtil; @@ -62,32 +61,27 @@ public class FavoriteListImportFromFile extends PollenServiceSupport implements } @Override - public void doImport(String favoriteListId) throws FavoriteListImportException { + public void doImport(FavoriteList favoriteList, List<FavoriteListMember> existingFavoriteListMembers) throws FavoriteListImportException { checkIsConnected(); - checkNotNull(favoriteListId); + checkNotNull(favoriteList); + checkNotNull(existingFavoriteListMembers); checkNotNull(file); checkState(file.exists()); - PollenUser connectedUser = getConnectedUser(); - - FavoriteList favoriteList = getFavoriteListService().getFavoriteList0(connectedUser, favoriteListId); - - Locale locale = serviceContext.getLocale(); Set<String> usedName = Sets.newHashSet(); Set<String> usedEmail = Sets.newHashSet(); - List<FavoriteListMember> favoriteListMembers = getFavoriteListService().getFavoriteListMembers0(favoriteList); - - if (CollectionUtils.isNotEmpty(favoriteListMembers)) { - for (FavoriteListMember member : favoriteListMembers) { + if (CollectionUtils.isNotEmpty(existingFavoriteListMembers)) { + for (FavoriteListMember member : existingFavoriteListMembers) { usedName.add(member.getName()); usedEmail.add(member.getEmail()); } } - int result = 0; + Locale locale = serviceContext.getLocale(); + BufferedReader reader = null; try { @@ -106,7 +100,6 @@ public class FavoriteListImportFromFile extends PollenServiceSupport implements } lineNumber++; - result++; int spaceIndex = line.indexOf(' '); String email; @@ -155,6 +148,10 @@ public class FavoriteListImportFromFile extends PollenServiceSupport implements member.setEmail(email); member.setFavoriteList(favoriteList); + if (log.isDebugEnabled()) { + log.debug(String.format("imported member %s / %s", memberName, email)); + } + } reader.close(); @@ -170,10 +167,6 @@ public class FavoriteListImportFromFile extends PollenServiceSupport implements } - if (log.isInfoEnabled()) { - log.info("Imported members: " + result); - } - commit(); } diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImportFromLdap.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImportFromLdap.java index 979a002..6e4e212 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImportFromLdap.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListImportFromLdap.java @@ -27,7 +27,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.chorem.pollen.persistence.entity.FavoriteList; import org.chorem.pollen.persistence.entity.FavoriteListMember; -import org.chorem.pollen.persistence.entity.PollenUser; import org.nuiton.util.StringUtil; import javax.naming.NamingEnumeration; @@ -62,32 +61,25 @@ public class FavoriteListImportFromLdap extends PollenServiceSupport implements } @Override - public void doImport(String favoriteListId) throws FavoriteListImportException { + public void doImport(FavoriteList favoriteList, List<FavoriteListMember> existingFavoriteListMembers) throws FavoriteListImportException { checkIsConnected(); - checkNotNull(favoriteListId); + checkNotNull(favoriteList); + checkNotNull(existingFavoriteListMembers); checkNotNull(ldap); - PollenUser connectedUser = getConnectedUser(); - - FavoriteList favoriteList = getFavoriteListService().getFavoriteList0(connectedUser, favoriteListId); - Locale locale = serviceContext.getLocale(); Set<String> usedName = Sets.newHashSet(); Set<String> usedEmail = Sets.newHashSet(); - List<FavoriteListMember> favoriteListMembers = getFavoriteListService().getFavoriteListMembers0(favoriteList); - - if (CollectionUtils.isNotEmpty(favoriteListMembers)) { - for (FavoriteListMember member : favoriteListMembers) { + if (CollectionUtils.isNotEmpty(existingFavoriteListMembers)) { + for (FavoriteListMember member : existingFavoriteListMembers) { usedName.add(member.getName()); usedEmail.add(member.getEmail()); } } - int result = 0; - try { // Initialisation du contexte @@ -111,8 +103,6 @@ public class FavoriteListImportFromLdap extends PollenServiceSupport implements if (attrName != null) { - result++; - String memberName = attrName.get().toString().trim(); if (!usedName.add(memberName)) { @@ -123,7 +113,7 @@ public class FavoriteListImportFromLdap extends PollenServiceSupport implements } - String email = attrEmail.get().toString().toLowerCase().trim(); + String email = getCleanMail(attrEmail.get().toString()); if (!usedEmail.add(email)) { @@ -146,6 +136,10 @@ public class FavoriteListImportFromLdap extends PollenServiceSupport implements member.setEmail(email); member.setFavoriteList(favoriteList); + if (log.isDebugEnabled()) { + log.debug(String.format("imported member %s / %s", memberName, email)); + } + } } @@ -155,10 +149,6 @@ public class FavoriteListImportFromLdap extends PollenServiceSupport implements } - if (log.isInfoEnabled()) { - log.info("Imported members: " + result); - } - commit(); } diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListService.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListService.java index 046ef0e..82bc433 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListService.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/FavoriteListService.java @@ -254,9 +254,12 @@ public class FavoriteListService extends PollenServiceSupport { checkNotNull(favoriteListId); checkNotNull(file); + FavoriteList favoriteList = getFavoriteList0(getConnectedUser(), favoriteListId); + List<FavoriteListMember> favoriteListMembers = getFavoriteListMembers0(favoriteList); + FavoriteListImportFromFile importer = newService(FavoriteListImportFromFile.class); importer.setFile(file); - importer.doImport(favoriteListId); + importer.doImport(favoriteList, favoriteListMembers); } @@ -267,9 +270,12 @@ public class FavoriteListService extends PollenServiceSupport { checkNotNull(favoriteListId); checkNotNull(ldap); + FavoriteList favoriteList = getFavoriteList0(getConnectedUser(), favoriteListId); + List<FavoriteListMember> favoriteListMembers = getFavoriteListMembers0(favoriteList); + FavoriteListImportFromLdap importer = newService(FavoriteListImportFromLdap.class); importer.setLdap(ldap); - importer.doImport(favoriteListId); + importer.doImport(favoriteList, favoriteListMembers); } -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.