KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > j2biz > blogunity > web > actions > my > FavoriteBlogAddExecAction


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

25
26 package com.j2biz.blogunity.web.actions.my;
27
28 import javax.servlet.http.HttpServletRequest JavaDoc;
29 import javax.servlet.http.HttpServletResponse JavaDoc;
30
31 import com.j2biz.blogunity.dao.BlogDAO;
32 import com.j2biz.blogunity.dao.UserDAO;
33 import com.j2biz.blogunity.exception.BlogunityException;
34 import com.j2biz.blogunity.pojo.Blog;
35 import com.j2biz.blogunity.web.ActionResultFactory;
36 import com.j2biz.blogunity.web.FormError;
37 import com.j2biz.blogunity.web.FormErrorList;
38 import com.j2biz.blogunity.web.IActionResult;
39
40 /**
41  *
42  * @author michelson
43  * @version $$
44  * @since 0.1
45  *
46  *
47  */

48 public class FavoriteBlogAddExecAction extends MyAbstractAction {
49
50     private static final IActionResult ADD_SUCCESS_REDIRECT = ActionResultFactory
51             .buildRedirect("/my/manageFavoriteBlogs");
52
53     private static final IActionResult ADD_ERROR_FORWARD = ActionResultFactory
54             .buildForward("/jsp/my/manageFavoriteBlogs.jsp");
55
56     /*
57      * (non-Javadoc)
58      *
59      * @see com.j2biz.blogunity.web.actions.AbstractAction#execute(javax.servlet.http.HttpServletRequest,
60      * javax.servlet.http.HttpServletResponse)
61      */

62     public IActionResult execute(HttpServletRequest JavaDoc request, HttpServletResponse JavaDoc response)
63             throws BlogunityException {
64
65         String JavaDoc blogName = request.getParameter("blogname");
66         FormErrorList errors = new FormErrorList();
67
68         Blog b;
69         try {
70             b = (new BlogDAO()).getBlogByUrlName(blogName);
71         } catch (Exception JavaDoc e) {
72             b = null;
73         }
74
75         if (b == null) {
76             errors.add(new FormError("blogname", "Blog '" + blogName + "' not found!"));
77         } else if (user.getFavoriteBlogs().contains(b)) {
78             errors.add(new FormError("blogname", "This blog is already in your favorites!"));
79         }
80
81         if (errors.size() > 0) {
82             request.setAttribute("errors", errors);
83             return ADD_ERROR_FORWARD;
84         }
85
86         user.getFavoriteBlogs().add(b);
87         (new UserDAO()).updateUser(user);
88
89         return ADD_SUCCESS_REDIRECT;
90
91     }
92
93 }
Popular Tags