001
014
015 package com.liferay.portlet.imagegallerydisplay.display.context;
016
017 import com.liferay.portal.kernel.exception.PortalException;
018 import com.liferay.portal.kernel.repository.model.FileShortcut;
019 import com.liferay.portal.kernel.repository.model.FileVersion;
020 import com.liferay.portal.kernel.servlet.taglib.ui.MenuItem;
021 import com.liferay.portlet.documentlibrary.display.context.logic.DLPortletInstanceSettingsHelper;
022 import com.liferay.portlet.documentlibrary.display.context.logic.UIItemsBuilder;
023 import com.liferay.portlet.imagegallerydisplay.display.context.util.IGRequestHelper;
024
025 import java.util.ArrayList;
026 import java.util.List;
027 import java.util.UUID;
028
029 import javax.servlet.http.HttpServletRequest;
030 import javax.servlet.http.HttpServletResponse;
031
032
035 public class DefaultIGViewFileVersionDisplayContext
036 implements IGViewFileVersionDisplayContext {
037
038 public DefaultIGViewFileVersionDisplayContext(
039 HttpServletRequest request, HttpServletResponse response,
040 FileShortcut fileShortcut)
041 throws PortalException {
042
043 this(request, response, fileShortcut.getFileVersion(), fileShortcut);
044 }
045
046 public DefaultIGViewFileVersionDisplayContext(
047 HttpServletRequest request, HttpServletResponse response,
048 FileVersion fileVersion)
049 throws PortalException {
050
051 this(request, response, fileVersion, null);
052 }
053
054 public DefaultIGViewFileVersionDisplayContext(
055 HttpServletRequest request, HttpServletResponse response,
056 FileVersion fileVersion, FileShortcut fileShortcut)
057 throws PortalException {
058
059 _igRequestHelper = new IGRequestHelper(request);
060
061 _dlPorletInstanceSettingsHelper = new DLPortletInstanceSettingsHelper(
062 _igRequestHelper);
063
064 if (fileShortcut == null) {
065 _uiItemsBuilder = new UIItemsBuilder(
066 request, response, fileVersion);
067 }
068 else {
069 _uiItemsBuilder = new UIItemsBuilder(
070 request, response, fileShortcut);
071 }
072 }
073
074 @Override
075 public List<MenuItem> getMenuItems() throws PortalException {
076 List<MenuItem> menuItems = new ArrayList<>();
077
078 if (_dlPorletInstanceSettingsHelper.isShowActions()) {
079 _uiItemsBuilder.addDownloadMenuItem(menuItems);
080
081 _uiItemsBuilder.addViewOriginalFileMenuItem(menuItems);
082
083 _uiItemsBuilder.addEditMenuItem(menuItems);
084
085 _uiItemsBuilder.addPermissionsMenuItem(menuItems);
086
087 _uiItemsBuilder.addDeleteMenuItem(menuItems);
088 }
089
090 return menuItems;
091 }
092
093 @Override
094 public UUID getUuid() {
095 return _UUID;
096 }
097
098 private static final UUID _UUID = UUID.fromString(
099 "C04528F9-C005-4E21-A926-F068750B99DB");
100
101 private final DLPortletInstanceSettingsHelper
102 _dlPorletInstanceSettingsHelper;
103 private final IGRequestHelper _igRequestHelper;
104 private final UIItemsBuilder _uiItemsBuilder;
105
106 }