1   /**
2    * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
3    *
4    * This library is free software; you can redistribute it and/or modify it under
5    * the terms of the GNU Lesser General Public License as published by the Free
6    * Software Foundation; either version 2.1 of the License, or (at your option)
7    * any later version.
8    *
9    * This library is distributed in the hope that it will be useful, but WITHOUT
10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11   * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12   * details.
13   */
14  
15  package com.liferay.portlet.journal.action;
16  
17  import com.liferay.portal.kernel.util.ParamUtil;
18  import com.liferay.portal.kernel.util.Validator;
19  import com.liferay.portal.util.PortalUtil;
20  import com.liferay.portal.util.WebKeys;
21  import com.liferay.portlet.journal.model.JournalArticle;
22  import com.liferay.portlet.journal.model.JournalArticleConstants;
23  import com.liferay.portlet.journal.model.JournalFeed;
24  import com.liferay.portlet.journal.model.JournalStructure;
25  import com.liferay.portlet.journal.model.JournalTemplate;
26  import com.liferay.portlet.journal.service.JournalArticleServiceUtil;
27  import com.liferay.portlet.journal.service.JournalFeedServiceUtil;
28  import com.liferay.portlet.journal.service.JournalStructureServiceUtil;
29  import com.liferay.portlet.journal.service.JournalTemplateServiceUtil;
30  import com.liferay.portlet.journal.util.JournalUtil;
31  
32  import javax.portlet.ActionRequest;
33  import javax.portlet.RenderRequest;
34  
35  import javax.servlet.http.HttpServletRequest;
36  
37  /**
38   * <a href="ActionUtil.java.html"><b><i>View Source</i></b></a>
39   *
40   * @author Brian Wing Shun Chan
41   */
42  public class ActionUtil {
43  
44      public static void getArticle(ActionRequest actionRequest)
45          throws Exception {
46  
47          HttpServletRequest request = PortalUtil.getHttpServletRequest(
48              actionRequest);
49  
50          getArticle(request);
51  
52          JournalArticle article = (JournalArticle)actionRequest.getAttribute(
53              WebKeys.JOURNAL_ARTICLE);
54  
55          JournalUtil.addRecentArticle(actionRequest, article);
56      }
57  
58      public static void getArticle(RenderRequest renderRequest)
59          throws Exception {
60  
61          HttpServletRequest request = PortalUtil.getHttpServletRequest(
62              renderRequest);
63  
64          getArticle(request);
65  
66          JournalArticle article = (JournalArticle)renderRequest.getAttribute(
67              WebKeys.JOURNAL_ARTICLE);
68  
69          JournalUtil.addRecentArticle(renderRequest, article);
70      }
71  
72      public static void getArticle(HttpServletRequest request) throws Exception {
73          long groupId = ParamUtil.getLong(request, "groupId");
74          String articleId = ParamUtil.getString(request, "articleId");
75          double version = ParamUtil.getDouble(
76              request, "version", JournalArticleConstants.DEFAULT_VERSION);
77  
78          JournalArticle article = null;
79  
80          if (Validator.isNotNull(articleId)) {
81              article = JournalArticleServiceUtil.getArticle(
82                  groupId, articleId, version);
83          }
84  
85          request.setAttribute(WebKeys.JOURNAL_ARTICLE, article);
86      }
87  
88      public static void getFeed(ActionRequest actionRequest) throws Exception {
89          HttpServletRequest request = PortalUtil.getHttpServletRequest(
90              actionRequest);
91  
92          getFeed(request);
93      }
94  
95      public static void getFeed(RenderRequest renderRequest) throws Exception {
96          HttpServletRequest request = PortalUtil.getHttpServletRequest(
97              renderRequest);
98  
99          getFeed(request);
100     }
101 
102     public static void getFeed(HttpServletRequest request) throws Exception {
103         long groupId = ParamUtil.getLong(request, "groupId");
104         String feedId = ParamUtil.getString(request, "feedId");
105 
106         JournalFeed feed = null;
107 
108         if (Validator.isNotNull(feedId)) {
109             feed = JournalFeedServiceUtil.getFeed(groupId, feedId);
110         }
111 
112         request.setAttribute(WebKeys.JOURNAL_FEED, feed);
113     }
114 
115     public static void getStructure(ActionRequest actionRequest)
116         throws Exception {
117 
118         HttpServletRequest request = PortalUtil.getHttpServletRequest(
119             actionRequest);
120 
121         getStructure(request);
122 
123         JournalStructure structure =
124             (JournalStructure)actionRequest.getAttribute(
125                 WebKeys.JOURNAL_STRUCTURE);
126 
127         JournalUtil.addRecentStructure(actionRequest, structure);
128     }
129 
130     public static void getStructure(RenderRequest renderRequest)
131         throws Exception {
132 
133         HttpServletRequest request = PortalUtil.getHttpServletRequest(
134             renderRequest);
135 
136         getStructure(request);
137 
138         JournalStructure structure =
139             (JournalStructure)renderRequest.getAttribute(
140                 WebKeys.JOURNAL_STRUCTURE);
141 
142         JournalUtil.addRecentStructure(renderRequest, structure);
143     }
144 
145     public static void getStructure(HttpServletRequest request)
146         throws Exception {
147 
148         long groupId = ParamUtil.getLong(request, "groupId");
149         String structureId = ParamUtil.getString(request, "structureId");
150 
151         JournalStructure structure = null;
152 
153         if (Validator.isNotNull(structureId)) {
154             structure = JournalStructureServiceUtil.getStructure(
155                 groupId, structureId);
156         }
157 
158         request.setAttribute(WebKeys.JOURNAL_STRUCTURE, structure);
159     }
160 
161     public static void getTemplate(ActionRequest actionRequest)
162         throws Exception {
163 
164         HttpServletRequest request = PortalUtil.getHttpServletRequest(
165             actionRequest);
166 
167         getTemplate(request);
168 
169         JournalTemplate template = (JournalTemplate)actionRequest.getAttribute(
170             WebKeys.JOURNAL_TEMPLATE);
171 
172         JournalUtil.addRecentTemplate(actionRequest, template);
173     }
174 
175     public static void getTemplate(RenderRequest renderRequest)
176         throws Exception {
177 
178         HttpServletRequest request = PortalUtil.getHttpServletRequest(
179             renderRequest);
180 
181         getTemplate(request);
182 
183         JournalTemplate template = (JournalTemplate)renderRequest.getAttribute(
184             WebKeys.JOURNAL_TEMPLATE);
185 
186         JournalUtil.addRecentTemplate(renderRequest, template);
187     }
188 
189     public static void getTemplate(HttpServletRequest request)
190         throws Exception {
191 
192         long groupId = ParamUtil.getLong(request, "groupId");
193         String templateId = ParamUtil.getString(request, "templateId");
194 
195         JournalTemplate template = null;
196 
197         if (Validator.isNotNull(templateId)) {
198             template = JournalTemplateServiceUtil.getTemplate(
199                 groupId, templateId);
200         }
201 
202         request.setAttribute(WebKeys.JOURNAL_TEMPLATE, template);
203     }
204 
205 }