KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > j2biz > blogunity > web > actions > blog > YearAction


1 /*
2  * $Id: YearAction.java,v 1.3 2005/01/17 21:36:04 michelson Exp $
3  *
4  * Copyright (c) 2005 j2biz Group, http://www.j2biz.com Koeln / Duesseldorf ,
5  * Germany
6  *
7  * @author Max Kalina
8  *
9  *
10  * This program is free software; you can redistribute it and/or modify it under
11  * the terms of the GNU General Public License as published by the Free Software
12  * Foundation; either version 2 of the License, or (at your option) any later
13  * version.
14  *
15  * This program is distributed in the hope that it will be useful, but WITHOUT
16  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17  * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
18  * details.
19  *
20  * You should have received a copy of the GNU General Public License along with
21  * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
22  * Place, Suite 330, Boston, MA 02111-1307 USA
23  *
24  */

25
26 package com.j2biz.blogunity.web.actions.blog;
27
28 import java.util.Calendar JavaDoc;
29 import java.util.List JavaDoc;
30
31 import javax.servlet.http.HttpServletRequest JavaDoc;
32 import javax.servlet.http.HttpServletResponse JavaDoc;
33
34 import com.j2biz.blogunity.dao.CalendarEntryDAO;
35 import com.j2biz.blogunity.exception.BlogunityException;
36 import com.j2biz.blogunity.i18n.I18N;
37 import com.j2biz.blogunity.i18n.I18NStatusFactory;
38 import com.j2biz.blogunity.pojo.Blog;
39 import com.j2biz.blogunity.web.ActionResultFactory;
40 import com.j2biz.blogunity.web.IActionResult;
41 import com.j2biz.blogunity.web.actions.AbstractAction;
42
43 public class YearAction extends AbstractAction {
44
45     private static final IActionResult BLOG_YEARLY_FORWARD = ActionResultFactory
46             .buildForward("/yearlyView.vm");
47
48     private Blog blog;
49
50     private String JavaDoc year;
51
52     public YearAction(Blog blog, String JavaDoc year) {
53         this.blog = blog;
54         this.year = year;
55     }
56
57     /*
58      * (non-Javadoc)
59      *
60      * @see com.j2biz.blogunity.web.actions.AbstractAction#execute(javax.servlet.http.HttpServletRequest,
61      * javax.servlet.http.HttpServletResponse)
62      */

63     public IActionResult execute(HttpServletRequest JavaDoc request, HttpServletResponse JavaDoc response)
64             throws BlogunityException {
65
66         Calendar JavaDoc yearObj = Calendar.getInstance();
67         int _year;
68         try {
69             _year = Integer.parseInt(year);
70             if (_year < 2000)
71                     throw new BlogunityException(I18NStatusFactory
72                             .create(I18N.ERRORS.ENTRY_BY_YEAR));
73             yearObj.set(_year, 0, 1, 0, 0, 0);
74         } catch (NumberFormatException JavaDoc e) {
75             throw new BlogunityException(I18NStatusFactory.create(I18N.ERRORS.ENTRY_BY_YEAR));
76         }
77
78         List JavaDoc list = ( new CalendarEntryDAO()).getYearArchives(blog.getUrlName(), _year);
79
80         request.setAttribute("months", list);
81         request.setAttribute("requestedYear", yearObj);
82
83         return BLOG_YEARLY_FORWARD;
84     }
85
86 }
Popular Tags