From: <die...@us...> - 2010-06-30 08:25:17
|
Revision: 2742 http://openutils.svn.sourceforge.net/openutils/?rev=2742&view=rev Author: diego_schivo Date: 2010-06-30 08:25:11 +0000 (Wed, 30 Jun 2010) Log Message: ----------- MEDIA-145 refactoring: replaced "while" with "Iterators.transform" Modified Paths: -------------- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaAdvancedSearchPage.java Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaAdvancedSearchPage.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaAdvancedSearchPage.java 2010-06-30 07:39:12 UTC (rev 2741) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaAdvancedSearchPage.java 2010-06-30 08:25:11 UTC (rev 2742) @@ -19,6 +19,7 @@ package net.sourceforge.openutils.mgnlmedia.media.pages; +import info.magnolia.cms.core.Content; import info.magnolia.freemarker.FreemarkerUtil; import java.util.ArrayList; @@ -37,7 +38,11 @@ import org.apache.commons.collections.MapUtils; import org.apache.commons.lang.StringUtils; +import com.google.common.base.Function; +import com.google.common.collect.Iterators; +import com.google.common.collect.Lists; + /** * Page that renders the folder view * @author molaschi @@ -77,6 +82,7 @@ return super.getTemplateName(viewName); } + @SuppressWarnings("unchecked") @Override public String show() { @@ -104,24 +110,24 @@ ResultIterator<AdvancedResultItem> items = contentMediaDetails.getItems(); // @todo don't do this, all the search should be laxy - while (items.hasNext()) - { - AdvancedResultItem media = items.next(); - - MediaTypeConfiguration mtc = MediaConfigurationManager.getInstance().getMediaTypeConfigurationFromMedia( - media); - - if (mtc != null) + medias = Lists.newArrayList(Iterators.transform(items, new Function<Content, MediaBean>() { + /** + * {@inheritDoc} + */ + public MediaBean apply(Content media) { + MediaTypeConfiguration mtc = MediaConfigurationManager.getInstance().getMediaTypeConfigurationFromMedia( + media); getNumberOfMedia().put(mtc.getName(), MapUtils.getInteger(getNumberOfMedia(), mtc.getName(), 0) + 1); - if (!"xml".equals(format) && (StringUtils.isBlank(getType()) || getType().equals(mtc.getName()))) { MediaBean mb = new MediaBeanBuilder(mtc).apply(media); - getMedias().add(mb); + return mb; } + return null; } - } + })); + medias.remove(null); StringBuilder qs = new StringBuilder(); for (String key : (Set<String>) request.getParameterMap().keySet()) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |