From 4a11a9e9980c154921a0af8cb4fae266b0372be0 Mon Sep 17 00:00:00 2001 From: Julio Camarero Date: Mon, 14 May 2012 18:32:45 +0200 Subject: [PATCH] LPS-27122 Simplify AssetRenderers (moving logic to the base) --- .../asset/LayoutRevisionAssetRenderer.java | 5 +++++ .../blogs/asset/BlogsEntryAssetRenderer.java | 19 +++++------------- .../asset/BookmarksEntryAssetRenderer.java | 5 +++++ .../calendar/asset/CalEventAssetRenderer.java | 5 +++++ .../directory/asset/UserAssetRenderer.java | 5 +++++ .../asset/DLFileEntryAssetRenderer.java | 20 ++++++------------- .../asset/DDLRecordAssetRenderer.java | 5 +++++ .../asset/JournalArticleAssetRenderer.java | 5 +++++ .../asset/MBCategoryAssetRenderer.java | 5 +++++ .../asset/MBMessageAssetRenderer.java | 5 +++++ .../wiki/asset/WikiPageAssetRenderer.java | 5 +++++ .../portlet/asset/model/AssetRenderer.java | 2 ++ .../asset/model/BaseAssetRenderer.java | 12 +++++++++++ 13 files changed, 70 insertions(+), 28 deletions(-) diff --git a/portal-impl/src/com/liferay/portal/asset/LayoutRevisionAssetRenderer.java b/portal-impl/src/com/liferay/portal/asset/LayoutRevisionAssetRenderer.java index cf1790d9b95809..901d9e929622ac 100644 --- a/portal-impl/src/com/liferay/portal/asset/LayoutRevisionAssetRenderer.java +++ b/portal-impl/src/com/liferay/portal/asset/LayoutRevisionAssetRenderer.java @@ -55,6 +55,11 @@ public LayoutRevisionAssetRenderer(LayoutRevision layoutRevision) { } } + @Override + public String getAssetRendererFactoryClassName() { + return LayoutRevisionAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { return _layoutRevision.getLayoutRevisionId(); } diff --git a/portal-impl/src/com/liferay/portlet/blogs/asset/BlogsEntryAssetRenderer.java b/portal-impl/src/com/liferay/portlet/blogs/asset/BlogsEntryAssetRenderer.java index 25e9a00a371fde..278763f727790d 100644 --- a/portal-impl/src/com/liferay/portlet/blogs/asset/BlogsEntryAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/blogs/asset/BlogsEntryAssetRenderer.java @@ -24,7 +24,6 @@ import com.liferay.portal.util.PortletKeys; import com.liferay.portal.util.PropsValues; import com.liferay.portal.util.WebKeys; -import com.liferay.portlet.asset.AssetRendererFactoryRegistryUtil; import com.liferay.portlet.asset.model.BaseAssetRenderer; import com.liferay.portlet.blogs.model.BlogsEntry; import com.liferay.portlet.blogs.service.permission.BlogsEntryPermission; @@ -50,6 +49,10 @@ public BlogsEntryAssetRenderer(BlogsEntry entry) { _entry = entry; } + public String getAssetRendererFactoryClassName() { + return BlogsEntryAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { return _entry.getEntryId(); } @@ -70,7 +73,7 @@ public long getGroupId() { @Override public String getIconPath(ThemeDisplay themeDisplay) { - return getAssetRendererFactory().getIconPath(themeDisplay); + return themeDisplay.getPathThemeImages() + "/blogs/blogs.png"; } public String getPortletId() { @@ -185,18 +188,6 @@ public String render( } } - private BlogsEntryAssetRendererFactory getAssetRendererFactory() { - if (_factory == null) { - _factory = (BlogsEntryAssetRendererFactory) - AssetRendererFactoryRegistryUtil. - getAssetRendererFactoryByClassName( - BlogsEntryAssetRendererFactory.CLASS_NAME); - } - - return _factory; - } - private BlogsEntry _entry; - private BlogsEntryAssetRendererFactory _factory; } \ No newline at end of file diff --git a/portal-impl/src/com/liferay/portlet/bookmarks/asset/BookmarksEntryAssetRenderer.java b/portal-impl/src/com/liferay/portlet/bookmarks/asset/BookmarksEntryAssetRenderer.java index 0375dc9efb3c1f..1215b2367abe68 100644 --- a/portal-impl/src/com/liferay/portlet/bookmarks/asset/BookmarksEntryAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/bookmarks/asset/BookmarksEntryAssetRenderer.java @@ -44,6 +44,11 @@ public BookmarksEntryAssetRenderer(BookmarksEntry entry) { _entry = entry; } + @Override + public String getAssetRendererFactoryClassName() { + return BookmarksEntryAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { return _entry.getEntryId(); } diff --git a/portal-impl/src/com/liferay/portlet/calendar/asset/CalEventAssetRenderer.java b/portal-impl/src/com/liferay/portlet/calendar/asset/CalEventAssetRenderer.java index eeb15b8a3dc9cf..6b724175afbafd 100644 --- a/portal-impl/src/com/liferay/portlet/calendar/asset/CalEventAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/calendar/asset/CalEventAssetRenderer.java @@ -45,6 +45,11 @@ public CalEventAssetRenderer(CalEvent event) { _event = event; } + @Override + public String getAssetRendererFactoryClassName() { + return CalEventAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { return _event.getEventId(); } diff --git a/portal-impl/src/com/liferay/portlet/directory/asset/UserAssetRenderer.java b/portal-impl/src/com/liferay/portlet/directory/asset/UserAssetRenderer.java index f1d7f6a738209d..3256a1eeeed3a8 100644 --- a/portal-impl/src/com/liferay/portlet/directory/asset/UserAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/directory/asset/UserAssetRenderer.java @@ -42,6 +42,11 @@ public UserAssetRenderer(User user) { _user = user; } + @Override + public String getAssetRendererFactoryClassName() { + return UserAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { return _user.getPrimaryKey(); } diff --git a/portal-impl/src/com/liferay/portlet/documentlibrary/asset/DLFileEntryAssetRenderer.java b/portal-impl/src/com/liferay/portlet/documentlibrary/asset/DLFileEntryAssetRenderer.java index 8a8106d63de1a8..91e8851e48273f 100644 --- a/portal-impl/src/com/liferay/portlet/documentlibrary/asset/DLFileEntryAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/documentlibrary/asset/DLFileEntryAssetRenderer.java @@ -29,7 +29,6 @@ import com.liferay.portal.util.PortletKeys; import com.liferay.portal.util.PropsValues; import com.liferay.portal.util.WebKeys; -import com.liferay.portlet.asset.AssetRendererFactoryRegistryUtil; import com.liferay.portlet.asset.model.BaseAssetRenderer; import com.liferay.portlet.documentlibrary.model.DLFileEntryConstants; import com.liferay.portlet.documentlibrary.service.permission.DLFileEntryPermission; @@ -58,6 +57,10 @@ public DLFileEntryAssetRenderer( _fileVersion = fileVersion; } + public String getAssetRendererFactoryClassName() { + return DLFileEntryAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { if (!_fileVersion.isApproved() && !_fileVersion.getVersion().equals( @@ -86,7 +89,8 @@ public long getGroupId() { @Override public String getIconPath(ThemeDisplay themeDisplay) { - return getAssetRendererFactory().getIconPath(themeDisplay); + return themeDisplay.getPathThemeImages() + "/file_system/small/" + + _fileEntry.getIcon() + ".png"; } public String getPortletId() { @@ -219,18 +223,6 @@ public String render( } } - private DLFileEntryAssetRendererFactory getAssetRendererFactory() { - if (_factory == null) { - _factory = (DLFileEntryAssetRendererFactory) - AssetRendererFactoryRegistryUtil. - getAssetRendererFactoryByClassName( - DLFileEntryAssetRendererFactory.CLASS_NAME); - } - - return _factory; - } - - private DLFileEntryAssetRendererFactory _factory; private FileEntry _fileEntry; private FileVersion _fileVersion; diff --git a/portal-impl/src/com/liferay/portlet/dynamicdatalists/asset/DDLRecordAssetRenderer.java b/portal-impl/src/com/liferay/portlet/dynamicdatalists/asset/DDLRecordAssetRenderer.java index a5cc125b6e4713..57253ede5d1c82 100644 --- a/portal-impl/src/com/liferay/portlet/dynamicdatalists/asset/DDLRecordAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/dynamicdatalists/asset/DDLRecordAssetRenderer.java @@ -60,6 +60,11 @@ public DDLRecordAssetRenderer( } } + @Override + public String getAssetRendererFactoryClassName() { + return DDLRecordAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { return _record.getRecordId(); } diff --git a/portal-impl/src/com/liferay/portlet/journal/asset/JournalArticleAssetRenderer.java b/portal-impl/src/com/liferay/portlet/journal/asset/JournalArticleAssetRenderer.java index ea7ee345ea6b53..653672b8e75ea2 100644 --- a/portal-impl/src/com/liferay/portlet/journal/asset/JournalArticleAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/journal/asset/JournalArticleAssetRenderer.java @@ -55,6 +55,11 @@ public JournalArticle getArticle() { return _article; } + @Override + public String getAssetRendererFactoryClassName() { + return JournalArticleAssetRendererFactory.CLASS_NAME; + } + @Override public String[] getAvailableLocales() { return _article.getAvailableLocales(); diff --git a/portal-impl/src/com/liferay/portlet/messageboards/asset/MBCategoryAssetRenderer.java b/portal-impl/src/com/liferay/portlet/messageboards/asset/MBCategoryAssetRenderer.java index 44bf7fc79ed814..23878b4e7631b0 100644 --- a/portal-impl/src/com/liferay/portlet/messageboards/asset/MBCategoryAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/messageboards/asset/MBCategoryAssetRenderer.java @@ -48,6 +48,11 @@ public MBCategoryAssetRenderer(MBCategory category) { _category = category; } + @Override + public String getAssetRendererFactoryClassName() { + return MBCategoryAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { return _category.getCategoryId(); } diff --git a/portal-impl/src/com/liferay/portlet/messageboards/asset/MBMessageAssetRenderer.java b/portal-impl/src/com/liferay/portlet/messageboards/asset/MBMessageAssetRenderer.java index 17afd327dc7fa1..82a267eb62e052 100644 --- a/portal-impl/src/com/liferay/portlet/messageboards/asset/MBMessageAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/messageboards/asset/MBMessageAssetRenderer.java @@ -48,6 +48,11 @@ public MBMessageAssetRenderer(MBMessage message) { _message = message; } + @Override + public String getAssetRendererFactoryClassName() { + return MBCategoryAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { return _message.getMessageId(); } diff --git a/portal-impl/src/com/liferay/portlet/wiki/asset/WikiPageAssetRenderer.java b/portal-impl/src/com/liferay/portlet/wiki/asset/WikiPageAssetRenderer.java index a082bc62c383a1..56d28662d9dd1e 100644 --- a/portal-impl/src/com/liferay/portlet/wiki/asset/WikiPageAssetRenderer.java +++ b/portal-impl/src/com/liferay/portlet/wiki/asset/WikiPageAssetRenderer.java @@ -47,6 +47,11 @@ public WikiPageAssetRenderer(WikiPage page) { _page = page; } + @Override + public String getAssetRendererFactoryClassName() { + return WikiPageAssetRendererFactory.CLASS_NAME; + } + public long getClassPK() { if (!_page.isApproved() && (_page.getVersion() != WikiPageConstants.VERSION_DEFAULT)) { diff --git a/portal-service/src/com/liferay/portlet/asset/model/AssetRenderer.java b/portal-service/src/com/liferay/portlet/asset/model/AssetRenderer.java index 838ffac91c1643..c7ba2555c6956a 100644 --- a/portal-service/src/com/liferay/portlet/asset/model/AssetRenderer.java +++ b/portal-service/src/com/liferay/portlet/asset/model/AssetRenderer.java @@ -39,6 +39,8 @@ public interface AssetRenderer { public static final String TEMPLATE_FULL_CONTENT = "full_content"; + public String getAssetRendererFactoryClassName(); + public String[] getAvailableLocales() throws Exception; public long getClassPK(); diff --git a/portal-service/src/com/liferay/portlet/asset/model/BaseAssetRenderer.java b/portal-service/src/com/liferay/portlet/asset/model/BaseAssetRenderer.java index ef6141e3f894c8..46bcadcb6264f3 100644 --- a/portal-service/src/com/liferay/portlet/asset/model/BaseAssetRenderer.java +++ b/portal-service/src/com/liferay/portlet/asset/model/BaseAssetRenderer.java @@ -28,6 +28,7 @@ import com.liferay.portal.service.GroupLocalServiceUtil; import com.liferay.portal.service.LayoutLocalServiceUtil; import com.liferay.portal.theme.ThemeDisplay; +import com.liferay.portlet.asset.AssetRendererFactoryRegistryUtil; import javax.portlet.PortletRequest; import javax.portlet.PortletURL; @@ -41,6 +42,16 @@ */ public abstract class BaseAssetRenderer implements AssetRenderer { + public AssetRendererFactory getAssetRendererFactory() { + if (_assetRendererFactory == null) { + _assetRendererFactory = AssetRendererFactoryRegistryUtil. + getAssetRendererFactoryByClassName( + getAssetRendererFactoryClassName()); + } + + return _assetRendererFactory; + } + public String[] getAvailableLocales() { return _AVAILABLE_LOCALES; } @@ -192,6 +203,7 @@ protected String getURLViewInContext( return sb.toString(); } + private AssetRendererFactory _assetRendererFactory; private static final String[] _AVAILABLE_LOCALES = new String[0]; } \ No newline at end of file