From: <fg...@us...> - 2013-05-19 14:12:51
|
Revision: 4241 http://openutils.svn.sourceforge.net/openutils/?rev=4241&view=rev Author: fgiust Date: 2013-05-19 14:12:47 +0000 (Sun, 19 May 2013) Log Message: ----------- removing deprecations, work in progress (currently broken) Modified Paths: -------------- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaUsedInManager.java magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/AddExtensionToType.java magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/ConditionallySubscribeMediaRepositoriesTask.java magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MediaModuleVersionHandler.java magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MoveOriginalNodeTask.java magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveExtensionFromType.java magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView.java magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/utils/PlaylistIterateUtils.java Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaConfigurationManager.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -32,6 +32,8 @@ import info.magnolia.cms.util.NodeDataUtil; import info.magnolia.content2bean.Content2BeanUtil; import info.magnolia.context.MgnlContext; +import info.magnolia.jcr.util.NodeUtil; +import info.magnolia.jcr.util.PropertyUtil; import info.magnolia.repository.RepositoryConstants; import java.util.ArrayList; @@ -42,6 +44,7 @@ import java.util.Map; import javax.inject.Singleton; +import javax.jcr.Node; import javax.jcr.RepositoryException; import javax.jcr.query.InvalidQueryException; @@ -267,27 +270,33 @@ return qr.getContent(MediaConfigurationManager.MGNL_MEDIA_TYPE); } + @Deprecated + public MediaTypeConfiguration getMediaTypeConfigurationFromMedia(Content media) + { + return getMediaTypeConfigurationFromMedia(media.getJCRNode()); + } + /** * Get the type configuration for a media * @param media media * @return type configuration */ - public MediaTypeConfiguration getMediaTypeConfigurationFromMedia(Content media) + public MediaTypeConfiguration getMediaTypeConfigurationFromMedia(Node media) { try { - if (!media.getItemType().equals(MEDIA)) + if (!StringUtils.equals(media.getPrimaryNodeType().getName(), MGNL_MEDIA_TYPE)) { return null; } } catch (RepositoryException e) { - log.error("Error getting item type on node {} module media", media.getHandle(), e); + log.error("Error getting item type on node {} module media", NodeUtil.getPathIfPossible(media), e); return null; } - return types.get(NodeDataUtil.getString(media, "type")); + return types.get(PropertyUtil.getString(media, "type")); } /** Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaUsedInManager.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaUsedInManager.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/configuration/MediaUsedInManager.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -37,6 +37,7 @@ import java.util.Set; import javax.inject.Singleton; +import javax.jcr.Node; import javax.jcr.RepositoryException; import javax.jcr.query.InvalidQueryException; @@ -138,19 +139,19 @@ return Collections.emptyList(); } } - List<Content> nodes = getUsedInWorkspaceNodes(mediaUUID, uiw); + List<Node> nodes = getUsedInWorkspaceNodes(mediaUUID, uiw); List<String> paths = new ArrayList<String>(nodes.size()); - for (Content node : nodes) + for (Node node : nodes) { - paths.add(node.getHandle()); + paths.add(node.getPath()); } return paths; } - private static List<Content> getUsedInWorkspaceNodes(String mediaUUID, UsedInWorkspace uiw) + private static List<Node> getUsedInWorkspaceNodes(String mediaUUID, UsedInWorkspace uiw) throws InvalidQueryException, RepositoryException { - List<Content> nodes = new ArrayList<Content>(); + List<Node> nodes = new ArrayList<Node>(); Set<String> handles = new HashSet<String>(); String basepath = "/jcr:root" + StringUtils.defaultString(uiw.getBasePath()); @@ -173,18 +174,18 @@ log.debug("{} > {}", criteria.toXpathExpression(), result.getTotalSize()); - for (Content item : result.getItems()) + for (Node item : result.getItems()) { - // log.debug("{} {}", item.getJCRNode().getPrimaryNodeType().getName(), item.getHandle()); - - while (!item.getNodeTypeName().equals(uiw.getNodeType()) && item.getLevel() > 1) + while (!StringUtils.equals(item.getPrimaryNodeType().getName(), uiw.getNodeType()) && item.getDepth() > 1) { item = item.getParent(); } - if (item.getNodeTypeName().equals(uiw.getNodeType()) && !handles.contains(item.getHandle())) + + if (StringUtils.equals(item.getPrimaryNodeType().getName(), uiw.getNodeType()) + && !handles.contains(item.getPath())) { nodes.add(item); - handles.add(item.getHandle()); + handles.add(item.getPath()); } } Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/AddExtensionToType.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/AddExtensionToType.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/AddExtensionToType.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -19,12 +19,12 @@ package net.sourceforge.openutils.mgnlmedia.media.setup; -import info.magnolia.cms.beans.config.ContentRepository; import info.magnolia.cms.core.Content; import info.magnolia.cms.core.HierarchyManager; import info.magnolia.module.InstallContext; import info.magnolia.module.delta.AbstractRepositoryTask; import info.magnolia.module.delta.TaskExecutionException; +import info.magnolia.repository.RepositoryConstants; import javax.jcr.RepositoryException; @@ -66,7 +66,7 @@ protected void doExecute(InstallContext ctx) throws RepositoryException, TaskExecutionException { - final HierarchyManager hm = ctx.getHierarchyManager(ContentRepository.CONFIG); + final HierarchyManager hm = ctx.getHierarchyManager(RepositoryConstants.CONFIG); String nodePath = "/modules/media/mediatypes/" + this.mediatype; try Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/ConditionallySubscribeMediaRepositoriesTask.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/ConditionallySubscribeMediaRepositoriesTask.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/ConditionallySubscribeMediaRepositoriesTask.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -19,7 +19,6 @@ package net.sourceforge.openutils.mgnlmedia.media.setup; -import info.magnolia.cms.beans.config.ContentRepository; import info.magnolia.cms.core.Content; import info.magnolia.cms.core.ItemType; import info.magnolia.cms.exchange.ActivationManager; @@ -31,6 +30,7 @@ import info.magnolia.module.delta.TaskExecutionException; import info.magnolia.module.model.ModuleDefinition; import info.magnolia.module.model.RepositoryDefinition; +import info.magnolia.repository.RepositoryConstants; import java.util.Collection; import java.util.List; @@ -59,7 +59,7 @@ // check for the sigleinstance flag directly in jcr, the module is not started yet boolean singleinstance = false; - Content moduleConfigNode = ContentUtil.getContent(ContentRepository.CONFIG, "/modules/media/config"); + Content moduleConfigNode = ContentUtil.getContent(RepositoryConstants.CONFIG, "/modules/media/config"); if (moduleConfigNode != null) { singleinstance = moduleConfigNode.getNodeData("singleinstance").getBoolean(); @@ -95,7 +95,7 @@ { if (!subscriber.isSubscribed("/", repository)) { - Content subscriptionsNode = ContentUtil.getContent(ContentRepository.CONFIG, sManager.getConfigPath() + Content subscriptionsNode = ContentUtil.getContent(RepositoryConstants.CONFIG, sManager.getConfigPath() + "/" + subscriber.getName() + "/subscriptions"); Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MediaModuleVersionHandler.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MediaModuleVersionHandler.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MediaModuleVersionHandler.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -19,12 +19,12 @@ package net.sourceforge.openutils.mgnlmedia.media.setup; -import info.magnolia.cms.beans.config.ContentRepository; import info.magnolia.cms.core.SystemProperty; import info.magnolia.module.InstallContext; import info.magnolia.module.ModuleRegistry; import info.magnolia.module.delta.SetupModuleRepositoriesTask; import info.magnolia.module.delta.Task; +import info.magnolia.repository.RepositoryConstants; import it.openutils.mgnltasks.BootstrapMissingNodesTask; import it.openutils.mgnltasks.ChangeExistingPropertyTask; import it.openutils.mgnltasks.CreateMissingPropertyTask; @@ -88,48 +88,48 @@ // tasks.add(new MoveOriginalNodeTask()); tasks.add(new CreateMissingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/config", "singleinstance", Boolean.FALSE)); tasks.add(new CreateMissingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/config", "player", "jwplayer5")); tasks.add(new CreateMissingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/config", "folderViewItemsPerPage", 10L)); // MEDIA-70 new enabled property for media type tasks.add(new CreateMissingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/image", "enabled", Boolean.TRUE)); tasks.add(new CreateMissingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/video", "enabled", Boolean.TRUE)); tasks.add(new CreateMissingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/youtube", "enabled", Boolean.TRUE)); tasks.add(new CreateMissingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/audio", "enabled", Boolean.TRUE)); // change "external video" handler tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/youtube/handler", "class", "net.sourceforge.openutils.mgnlmedia.media.types.impl.YouTubeVideoTypeHandler", @@ -137,7 +137,7 @@ // change "external video" icon tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/youtube", "menuIcon", "/.resources/media/icons/film.gif", @@ -145,7 +145,7 @@ // change "audio" icon tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/audio", "menuIcon", "/.resources/media/icons/audio.gif", @@ -153,7 +153,7 @@ // change "video" icon tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/video", "menuIcon", "/.resources/media/icons/film.gif", @@ -161,7 +161,7 @@ // change "image" icon tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/image", "menuIcon", "/.resources/media/icons/image16.gif", @@ -174,7 +174,7 @@ tasks.add(new NodeSortTask("config", "/modules/media/mediatypes", "order")); tasks.add(new CreateMissingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediatypes/youtube/handler", "parseremotefiles", Boolean.TRUE)); @@ -196,7 +196,7 @@ // extended template renderer tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/standard-templating-kit/template-renderers/stk", "renderer", "net.sourceforge.openutils.mgnlmedia.freemarker.SktSimpleMediaTemplateRenderer", @@ -204,7 +204,7 @@ // extended paragraph renderer tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/standard-templating-kit/paragraph-renderers/stk", "class", "net.sourceforge.openutils.mgnlmedia.freemarker.SktSimpleMediaParagraphRenderer", @@ -219,33 +219,33 @@ // change "playlists" icon and description tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/adminInterface/config/menu/media/playlists", "icon", "/.resources/media/icons/ico16-playlist.png", "/.resources/media/icons/ico16-playlists.png")); tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/adminInterface/config/menu/media/playlists", "label", "Playlists", "media.menu.playlists")); tasks.add(new CreateMissingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/config/search/filters/query", "wildcards", Boolean.TRUE)); tasks.add(new ChangeExistingPropertyTask( - ContentRepository.CONFIG, + RepositoryConstants.CONFIG, "/modules/media/mediausedin/website", "nodeType", "mgnl:content", "mgnl:page")); // empty placeholder - tasks.add(new CreateMissingPropertyTask(ContentRepository.CONFIG, "/modules/media/config", "baseurl", "")); + tasks.add(new CreateMissingPropertyTask(RepositoryConstants.CONFIG, "/modules/media/config", "baseurl", "")); return tasks; } Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MoveOriginalNodeTask.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MoveOriginalNodeTask.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/MoveOriginalNodeTask.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -19,21 +19,14 @@ package net.sourceforge.openutils.mgnlmedia.media.setup; -import info.magnolia.cms.core.Content; -import info.magnolia.cms.core.HierarchyManager; -import info.magnolia.cms.core.NodeData; import info.magnolia.cms.core.search.Query; import info.magnolia.context.MgnlContext; import info.magnolia.module.InstallContext; import info.magnolia.module.delta.Task; import info.magnolia.module.delta.TaskExecutionException; -import java.io.InputStream; -import java.util.List; - import javax.jcr.RepositoryException; -import javax.jcr.Value; -import javax.jcr.nodetype.ConstraintViolationException; +import javax.jcr.Session; import net.sourceforge.openutils.mgnlcriteria.jcr.query.AdvancedResult; import net.sourceforge.openutils.mgnlcriteria.jcr.query.AdvancedResultItem; @@ -44,7 +37,6 @@ import net.sourceforge.openutils.mgnlmedia.media.lifecycle.MediaModule; import net.sourceforge.openutils.mgnlmedia.media.types.impl.BaseTypeHandler; -import org.apache.commons.io.IOUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -59,7 +51,7 @@ /** * Logger. */ - private Logger log = LoggerFactory.getLogger(this.getClass()); + private static Logger log = LoggerFactory.getLogger(MoveOriginalNodeTask.class); public String getName() { @@ -73,12 +65,12 @@ public void execute(InstallContext installContext) throws TaskExecutionException { - HierarchyManager mgr = installContext.getHierarchyManager(MediaModule.REPO); try { - reset(mgr, "image", "image"); - reset(mgr, "video", "video"); - reset(mgr, "audio", "audio"); + Session session = installContext.getJCRSession(MediaModule.REPO); + reset(session, "image", "image"); + reset(session, "video", "video"); + reset(session, "audio", "audio"); } catch (RepositoryException ex) { @@ -88,18 +80,17 @@ public static void execute() throws RepositoryException { - HierarchyManager mgr = MgnlContext.getHierarchyManager(MediaModule.REPO); + Session session = MgnlContext.getJCRSession(MediaModule.REPO); - reset(mgr, "image", "image"); - reset(mgr, "video", "video"); - reset(mgr, "audio", "audio"); + reset(session, "image", "image"); + reset(session, "video", "video"); + reset(session, "audio", "audio"); } - public static void reset(HierarchyManager queryManager, String type, String nodedataOldName) - throws RepositoryException + public static void reset(Session session, String type, String nodedataOldName) throws RepositoryException { - DirectJcrQuery query = JCRCriteriaFactory.createDirectJcrQuery(queryManager, "//*[@jcr:primaryType = '" + DirectJcrQuery query = JCRCriteriaFactory.createDirectJcrQuery(session, "//*[@jcr:primaryType = '" + MediaConfigurationManager.MEDIA.getSystemName() + "' and " + nodedataOldName @@ -113,30 +104,25 @@ while (items.hasNext()) { - Content media = items.next(); + AdvancedResultItem media = items.next(); - NodeData nd = media.getNodeData(nodedataOldName); - Value value = nd.getValue(); - if (value != null) + if (media.hasProperty(nodedataOldName)) { - InputStream stream = value.getStream(); - NodeData ndNew = media.createNodeData(BaseTypeHandler.ORGINAL_NODEDATA_NAME, stream); - for (String attributeName : ((List<String>) nd.getAttributeNames())) + try { - try - { - ndNew.setAttribute(attributeName, nd.getAttribute(attributeName)); - } - catch (ConstraintViolationException ex) - { - // go on - } + // it's a binary nodedata -> node + session.getWorkspace().move( + media.getPath() + "/" + nodedataOldName, + media.getPath() + "/" + BaseTypeHandler.ORGINAL_NODEDATA_NAME); } - IOUtils.closeQuietly(stream); - nd.delete(); + catch (RepositoryException e) + { + log.warn( + "Unable to move node from {} to {}", + media.getPath() + "/" + nodedataOldName, + media.getPath() + "/" + BaseTypeHandler.ORGINAL_NODEDATA_NAME); + } } - - media.save(); } } } \ No newline at end of file Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveExtensionFromType.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveExtensionFromType.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/setup/RemoveExtensionFromType.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -19,12 +19,12 @@ package net.sourceforge.openutils.mgnlmedia.media.setup; -import info.magnolia.cms.beans.config.ContentRepository; import info.magnolia.cms.core.Content; import info.magnolia.cms.core.HierarchyManager; import info.magnolia.module.InstallContext; import info.magnolia.module.delta.AbstractRepositoryTask; import info.magnolia.module.delta.TaskExecutionException; +import info.magnolia.repository.RepositoryConstants; import java.util.ArrayList; import java.util.Arrays; @@ -70,7 +70,7 @@ protected void doExecute(InstallContext ctx) throws RepositoryException, TaskExecutionException { - final HierarchyManager hm = ctx.getHierarchyManager(ContentRepository.CONFIG); + final HierarchyManager hm = ctx.getHierarchyManager(RepositoryConstants.CONFIG); String nodePath = "/modules/media/mediatypes/" + this.mediatype; try Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -21,12 +21,12 @@ import info.magnolia.cms.beans.runtime.FileProperties; import info.magnolia.cms.core.Content; -import info.magnolia.cms.core.HierarchyManager; import info.magnolia.cms.core.NodeData; import info.magnolia.cms.i18n.I18nContentWrapper; import info.magnolia.cms.util.NodeDataUtil; import info.magnolia.cms.util.NodeMapWrapper; import info.magnolia.context.MgnlContext; +import info.magnolia.jcr.util.ContentMap; import info.magnolia.module.ModuleRegistry; import java.awt.Point; @@ -105,53 +105,15 @@ public static Content node(Object obj) { // TODO use openutils-mgnlutils 1.0.8: - // return it.openutils.mgnlutils.el.MgnlUtilsElFunctions.node(obj, MediaModule.REPO); + // return if (obj == null) { return null; } - Content content = null; + Content content = it.openutils.mgnlutils.el.MgnlUtilsElFunctions.node(obj, MediaModule.REPO); - if (obj instanceof String) - { - String mediaIdentifier = (String) obj; - - if (StringUtils.isBlank(mediaIdentifier)) - { - return null; - } - - HierarchyManager hm = MgnlContext.getHierarchyManager(MediaModule.REPO); - try - { - if (mediaIdentifier.startsWith("/")) - { - if (hm.isExist(mediaIdentifier)) - { - content = hm.getContent(mediaIdentifier); - } - } - else - { - content = hm.getContentByUUID(StringUtils.trim(mediaIdentifier)); - } - } - catch (ItemNotFoundException e) - { - log.debug("Node \"" + mediaIdentifier + "\" not found"); - } - catch (RepositoryException e) - { - log.error(e.getClass().getName() + " getting node \"" + mediaIdentifier + "\"", e); - } - } - else if (obj instanceof Content) - { - content = (Content) obj; - } - if (content != null && !(content instanceof NodeMapWrapper)) { Content currentpage = null; @@ -562,65 +524,26 @@ * @param obj playlist node or UUID * @return Iterator of media nodes */ - public static Iterator<Content> mediaNodesInPlaylist(Object obj) + public static Iterator<ContentMap> mediaNodesInPlaylist(Object obj) { - // TODO use openutils-mgnlutils 1.0.8: - // Content playlistNode = it.openutils.mgnlutils.el.MgnlUtilsElFunctions.node(obj, PlaylistConstants.REPO); - Content playlistNode = null; if (obj == null) { return null; } - if (obj instanceof String) - { - String identifier = (String) obj; + Content playlistNode = it.openutils.mgnlutils.el.MgnlUtilsElFunctions.node(obj, PlaylistConstants.REPO); - if (StringUtils.isBlank(identifier)) + Iterator<ContentMap> iter = Iterators.transform( + PlaylistIterateUtils.iterate(playlistNode.getJCRNode()), + new Function<MediaNodeAndEntryPath, ContentMap>() { - return null; - } - HierarchyManager hm = MgnlContext.getHierarchyManager(PlaylistConstants.REPO); - try - { - if (identifier.startsWith("/")) - { - if (hm.isExist(identifier)) - { - playlistNode = hm.getContent(identifier); - } - } - else - { - playlistNode = hm.getContentByUUID(StringUtils.trim(identifier)); - } - } - catch (ItemNotFoundException e) - { - log.debug("Node \"" + identifier + "\" not found"); - } - catch (RepositoryException e) - { - log.error(e.getClass().getName() + " getting node \"" + identifier + "\"", e); - } - } - else if (obj instanceof Content) - { - playlistNode = (Content) obj; - } - - Iterator<Content> iter = Iterators.transform( - PlaylistIterateUtils.iterate(playlistNode), - new Function<MediaNodeAndEntryPath, Content>() - { - /** * {@inheritDoc} */ - public Content apply(MediaNodeAndEntryPath from) + public ContentMap apply(MediaNodeAndEntryPath from) { - return from.getMediaNode(); + return (ContentMap) from.getMediaNode(); } }); return Iterators.filter(iter, Predicates.notNull()); Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -24,6 +24,7 @@ import info.magnolia.cms.util.ContentUtil; import info.magnolia.cms.util.NodeDataUtil; import info.magnolia.context.MgnlContext; +import info.magnolia.jcr.util.PropertyUtil; import info.magnolia.module.ModuleRegistry; import java.io.IOException; @@ -42,6 +43,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import net.sourceforge.openutils.mgnlcriteria.jcr.query.AdvancedResultItem; import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaConfigurationManager; import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaTypeConfiguration; import net.sourceforge.openutils.mgnlmedia.media.lifecycle.MediaModule; @@ -202,10 +204,11 @@ playlist.setDescription(NodeDataUtil.getString(node, propNames.get("description"))); List<PlaylistEntryBean> entries = new ArrayList<PlaylistEntryBean>(); - for (Iterator<MediaNodeAndEntryPath> iterator = PlaylistIterateUtils.iterate(node); iterator.hasNext();) + for (Iterator<MediaNodeAndEntryPath> iterator = PlaylistIterateUtils.iterate(node.getJCRNode()); iterator + .hasNext();) { MediaNodeAndEntryPath item = iterator.next(); - Content media = item.getMediaNode(); + AdvancedResultItem media = item.getMediaNode(); if (media == null) { continue; @@ -222,18 +225,18 @@ entry.setMediaDialog(typeConf.getDialog()); } entry.setThumbnail(MediaEl.thumbnail(media)); - entry.setType(NodeDataUtil.getString(media, "type")); + entry.setType(PropertyUtil.getString(media, "type")); entry.setTitle(I18nContentSupportFactory .getI18nSupport() - .getNodeData(media, propNames.get("title")) + .getProperty(media, propNames.get("title")) .getString()); entry.setDescription(I18nContentSupportFactory .getI18nSupport() - .getNodeData(media, propNames.get("description")) + .getProperty(media, propNames.get("description")) .getString()); entry.setTags(I18nContentSupportFactory .getI18nSupport() - .getNodeData(media, propNames.get("tags")) + .getProperty(media, propNames.get("tags")) .getString()); entries.add(entry); } Modified: magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/utils/PlaylistIterateUtils.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/utils/PlaylistIterateUtils.java 2013-05-19 12:40:38 UTC (rev 4240) +++ magnoliamodules/trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/utils/PlaylistIterateUtils.java 2013-05-19 14:12:47 UTC (rev 4241) @@ -32,6 +32,7 @@ import java.util.Iterator; import java.util.Map; +import javax.jcr.Node; import javax.jcr.RepositoryException; import javax.jcr.Value; import javax.servlet.http.HttpServletRequest; @@ -75,7 +76,7 @@ * @return */ @SuppressWarnings("unchecked") - public static Iterator<MediaNodeAndEntryPath> iterate(final Content playlistNode) + public static Iterator<MediaNodeAndEntryPath> iterate(final Node playlistNode) { if (playlistNode == null) { @@ -136,13 +137,13 @@ { return Iterators.transform( playlistNode.getChildren(PlaylistConstants.PLAYLIST_ENTRY).iterator(), - new Function<Content, MediaNodeAndEntryPath>() + new Function<AdvancedResultItem, MediaNodeAndEntryPath>() { /** * {@inheritDoc} */ - public MediaNodeAndEntryPath apply(Content playlistEntry) + public MediaNodeAndEntryPath apply(AdvancedResultItem playlistEntry) { String mediaUUID = NodeDataUtil.getString(playlistEntry, "media"); Content mediaNode = MediaEl.node(mediaUUID); @@ -150,10 +151,10 @@ { log.warn( "Node {} referenced by entry {} of playlist {} does not exist in media repository", - new Object[]{mediaUUID, playlistEntry.getName(), playlistNode.getHandle() }); + new Object[]{mediaUUID, playlistEntry.getName(), playlistNode.getPath() }); } - return new MediaNodeAndEntryPath(mediaNode, playlistEntry.getHandle()); + return new MediaNodeAndEntryPath(mediaNode, playlistEntry.getPath()); } }); } @@ -168,14 +169,14 @@ public static class MediaNodeAndEntryPath { - private final Content mediaNode; + private final AdvancedResultItem mediaNode; private final String playlistEntryPath; /** * */ - public MediaNodeAndEntryPath(Content mediaNode, String playlistEntryPath) + public MediaNodeAndEntryPath(AdvancedResultItem mediaNode, String playlistEntryPath) { this.mediaNode = mediaNode; this.playlistEntryPath = playlistEntryPath; @@ -185,7 +186,7 @@ * Returns the mediaNode. * @return the mediaNode */ - public Content getMediaNode() + public AdvancedResultItem getMediaNode() { return mediaNode; } @@ -280,23 +281,27 @@ } } + @Override public String[] getParameterValues(String name) { String[] value = ((String[]) paramsMap.get(name)); return value != null ? (String[]) value.clone() : null; } + @Override public String getParameter(String name) { String[] values = (String[]) paramsMap.get(name); return values != null && values.length > 0 ? values[0] : null; } + @Override public Enumeration getParameterNames() { return Collections.enumeration(paramsMap.keySet()); } + @Override public Map getParameterMap() { HashMap clone = (HashMap) paramsMap.clone(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |