From: <die...@us...> - 2010-09-01 15:09:29
|
Revision: 2994 http://openutils.svn.sourceforge.net/openutils/?rev=2994&view=rev Author: diego_schivo Date: 2010-09-01 15:09:21 +0000 (Wed, 01 Sep 2010) Log Message: ----------- MEDIA-170 PlaylistTrackExtensionContributor Modified Paths: -------------- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModule.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView-xspf.html Added Paths: ----------- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/DefaultPlaylistTrackExtensionContributor.java trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistTrackExtensionContributor.java trunk/openutils-mgnlmedia/src/main/resources/mgnl-bootstrap/media/config.modules.media.config.playlistTrackExtensionContributors.0.xml Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModule.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModule.java 2010-09-01 15:07:46 UTC (rev 2993) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/lifecycle/MediaModule.java 2010-09-01 15:09:21 UTC (rev 2994) @@ -21,11 +21,16 @@ import info.magnolia.module.ModuleLifecycle; import info.magnolia.module.ModuleLifecycleContext; + +import java.util.ArrayList; +import java.util.List; + import net.sourceforge.openutils.mgnlmedia.media.advancedsearch.configuration.SearchMediaQueryConfiguration; import net.sourceforge.openutils.mgnlmedia.media.configuration.ImageProcessorsManager; import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaConfigurationManager; import net.sourceforge.openutils.mgnlmedia.media.configuration.MediaUsedInManager; import net.sourceforge.openutils.mgnlmedia.media.zip.ZipImporter; +import net.sourceforge.openutils.mgnlmedia.playlist.pages.PlaylistTrackExtensionContributor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -62,6 +67,8 @@ private ZipImporter zipimporter; + private List playlistTrackExtensionContributors = new ArrayList(); + /** * Constructor */ @@ -199,4 +206,28 @@ { this.zipimporter = zipimporter; } + + /** + * Returns the playlistTrackExtensionContributors. + * @return the playlistTrackExtensionContributors + */ + public List getPlaylistTrackExtensionContributors() + { + return playlistTrackExtensionContributors; + } + + /** + * Sets the playlistTrackExtensionContributors. + * @param playlistTrackExtensionContributors the playlistTrackExtensionContributors to set + */ + public void setPlaylistTrackExtensionContributors(List playlistTrackExtensionContributors) + { + this.playlistTrackExtensionContributors = playlistTrackExtensionContributors; + } + + public void addPlaylistTrackExtensionContributor(PlaylistTrackExtensionContributor contributor) + { + this.playlistTrackExtensionContributors.add(contributor); + } + } Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java 2010-09-01 15:07:46 UTC (rev 2993) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/tags/el/MediaEl.java 2010-09-01 15:09:21 UTC (rev 2994) @@ -30,6 +30,7 @@ import info.magnolia.module.ModuleRegistry; import java.awt.Point; +import java.io.PrintWriter; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -49,6 +50,7 @@ import net.sourceforge.openutils.mgnlmedia.media.types.MediaTypeHandler; import net.sourceforge.openutils.mgnlmedia.media.types.impl.BaseTypeHandler; import net.sourceforge.openutils.mgnlmedia.media.utils.ImageUtils; +import net.sourceforge.openutils.mgnlmedia.playlist.pages.PlaylistTrackExtensionContributor; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; @@ -478,11 +480,14 @@ { return new int[]{ NumberUtils.toInt(res.getAttribute(FileProperties.PROPERTY_WIDTH)), - NumberUtils.toInt(res.getAttribute(FileProperties.PROPERTY_HEIGHT)) }; + NumberUtils.toInt(res.getAttribute(FileProperties.PROPERTY_HEIGHT)) + }; } } - return new int[]{-1, -1 }; + return new int[]{ + -1, -1 + }; } /** @@ -783,4 +788,13 @@ return resolutions; } + public static void writePlaylistTrackExtension(Content media, PrintWriter writer) + { + for (Object item : module().getPlaylistTrackExtensionContributors()) + { + PlaylistTrackExtensionContributor contributor = (PlaylistTrackExtensionContributor) item; + contributor.addMediaAttributes(media, writer); + } + } + } Added: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/DefaultPlaylistTrackExtensionContributor.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/DefaultPlaylistTrackExtensionContributor.java (rev 0) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/DefaultPlaylistTrackExtensionContributor.java 2010-09-01 15:09:21 UTC (rev 2994) @@ -0,0 +1,24 @@ +package net.sourceforge.openutils.mgnlmedia.playlist.pages; + +import info.magnolia.cms.core.Content; +import info.magnolia.cms.util.NodeDataUtil; + +import java.io.PrintWriter; + + +/** + * @author dschivo + * @version $Id$ + */ +public class DefaultPlaylistTrackExtensionContributor implements PlaylistTrackExtensionContributor +{ + + /** + * {@inheritDoc} + */ + public void addMediaAttributes(Content media, PrintWriter writer) + { + writer.println("<media:type>" + NodeDataUtil.getString(media, "type") + "</media:type>"); + } + +} Property changes on: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/DefaultPlaylistTrackExtensionContributor.java ___________________________________________________________________ Added: svn:mime-type + text/plain Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistTrackExtensionContributor.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistTrackExtensionContributor.java (rev 0) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistTrackExtensionContributor.java 2010-09-01 15:09:21 UTC (rev 2994) @@ -0,0 +1,21 @@ +package net.sourceforge.openutils.mgnlmedia.playlist.pages; + +import info.magnolia.cms.core.Content; + +import java.io.PrintWriter; + + +/** + * @author dschivo + * @version $Id$ + */ +public interface PlaylistTrackExtensionContributor +{ + + /** + * @param media + * @param writer + */ + void addMediaAttributes(Content media, PrintWriter writer); + +} Property changes on: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistTrackExtensionContributor.java ___________________________________________________________________ Added: svn:mime-type + text/plain Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/openutils-mgnlmedia/src/main/resources/mgnl-bootstrap/media/config.modules.media.config.playlistTrackExtensionContributors.0.xml =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/mgnl-bootstrap/media/config.modules.media.config.playlistTrackExtensionContributors.0.xml (rev 0) +++ trunk/openutils-mgnlmedia/src/main/resources/mgnl-bootstrap/media/config.modules.media.config.playlistTrackExtensionContributors.0.xml 2010-09-01 15:09:21 UTC (rev 2994) @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> +<sv:node sv:name="0" xmlns:sv="http://www.jcp.org/jcr/sv/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <sv:property sv:name="jcr:primaryType" sv:type="Name"> + <sv:value>mgnl:contentNode</sv:value> + </sv:property> + <sv:property sv:name="jcr:mixinTypes" sv:type="Name"> + <sv:value>mix:lockable</sv:value> + </sv:property> + <sv:property sv:name="jcr:uuid" sv:type="String"> + <sv:value>a7724230-6c6d-4b5d-a451-f505181b5d4c</sv:value> + </sv:property> + <sv:property sv:name="class" sv:type="String"> + <sv:value>net.sourceforge.openutils.mgnlmedia.playlist.pages.DefaultPlaylistTrackExtensionContributor</sv:value> + </sv:property> + <sv:property sv:name="jcr:createdBy" sv:type="String"> + <sv:value>admin</sv:value> + </sv:property> + <sv:node sv:name="MetaData"> + <sv:property sv:name="jcr:primaryType" sv:type="Name"> + <sv:value>mgnl:metaData</sv:value> + </sv:property> + <sv:property sv:name="jcr:createdBy" sv:type="String"> + <sv:value>admin</sv:value> + </sv:property> + <sv:property sv:name="mgnl:authorid" sv:type="String"> + <sv:value>superuser</sv:value> + </sv:property> + <sv:property sv:name="mgnl:creationdate" sv:type="Date"> + <sv:value>2010-09-01T16:20:34.688+02:00</sv:value> + </sv:property> + <sv:property sv:name="mgnl:lastmodified" sv:type="Date"> + <sv:value>2010-09-01T16:37:56.408+02:00</sv:value> + </sv:property> + </sv:node> +</sv:node> Property changes on: trunk/openutils-mgnlmedia/src/main/resources/mgnl-bootstrap/media/config.modules.media.config.playlistTrackExtensionContributors.0.xml ___________________________________________________________________ Added: svn:mime-type + text/plain Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Modified: trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView-xspf.html =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView-xspf.html 2010-09-01 15:07:46 UTC (rev 2993) +++ trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/playlist/pages/PlaylistView-xspf.html 2010-09-01 15:09:21 UTC (rev 2994) @@ -5,6 +5,7 @@ [#assign dateUtils = this.getStatic("net.sourceforge.openutils.elfunctions.DateElUtils")] [#assign cal = this.getStatic("java.util.Calendar")] [#assign mediaEl = this.getStatic("net.sourceforge.openutils.mgnlmedia.media.tags.el.MediaEl")] + [#assign freemarkerEnv = this.getStatic("freemarker.core.Environment")] [#assign title = this.playlistTitle()!''] [#if title?has_content] <title><![CDATA[${title}]]></title> @@ -44,7 +45,7 @@ [/#if] <extension application="http://www.openmindlab.com/media"> <media:locale code="${mediaLocale}" /> - <media:type>${mediaNode.type}</media:type> + ${mediaEl.writePlaylistTrackExtension(mediaNode, freemarkerEnv.getCurrentEnvironment().out)} </extension> </track> [/#if] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |