KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > campware > cream > modules > actions > ImportSQL


1 package org.campware.cream.modules.actions;
2
3 /* ====================================================================
4  * Copyright (C) 2003-2005 Media Development Loan Fund
5  *
6  * * contact: contact@campware.org - http://www.campware.org
7  * Campware encourages further development. Please let us know.
8  *
9  * This program is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License
11  * as published by the Free Software Foundation; either version 2
12  * of the License, or (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software
21  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22  *
23  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
24  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
25  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26  * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
27  * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
30  * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
31  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
32  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
33  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34  * SUCH DAMAGE.
35  * ====================================================================
36  *
37  * This software consists of voluntary contributions made by many
38  * individuals on behalf of the Apache Software Foundation. For more
39  * information on the Apache Software Foundation, please see
40  * <http://www.apache.org/>.
41  */

42
43 import org.apache.velocity.context.Context;
44 import org.apache.turbine.Turbine;
45 import org.apache.turbine.util.RunData;
46 import org.apache.turbine.util.security.AccessControlList;
47 import org.campware.cream.modules.upload.UploadHandler;
48 /**
49  * This class provides a simple set of methods to
50  * insert/update/delete records in a database.
51  */

52 public class ImportSQL extends CreamAction
53 {
54
55     /**
56      * Update a record in the database with the
57      * information present in the web form.
58      *
59      * Again, this is merely an example. The data
60      * should be checked before being allowed
61      * into the database.
62      */

63     public void doUpdate(RunData data, Context context)
64         throws Exception JavaDoc
65     {
66             String JavaDoc out = UploadHandler.doPost(data);
67             data.setMessage(out == null || out.length() == 0 ? "No Input!" : out);
68             this.setTemplate( data, "CreamError.vm");
69     }
70
71     protected boolean isAuthorized( RunData data ) throws Exception JavaDoc
72     {
73         boolean isAuthorized = false;
74
75         AccessControlList acl = data.getACL();
76         
77         if (data.getUser().hasLoggedIn())
78         {
79             int imptype = data.getParameters().getInt("type");
80             
81             if (imptype==10 && (acl.hasPermission( "CUSTOMER_MODIFY") || acl.hasRole("turbine_root")))
82             {
83                 isAuthorized = true;
84             }
85             else if (imptype==20 && (acl.hasPermission( "PRODUCT_MODIFY") || acl.hasRole("turbine_root")))
86             {
87                 isAuthorized = true;
88             }
89             else
90             {
91                 isAuthorized = false;
92                 data.setMessage("Sorry, you don't have permission for this operation!");
93                 data.setScreenTemplate("CreamError.vm");
94
95             }
96         }
97         else
98         {
99             data.setScreenTemplate(Turbine.getConfiguration().getString("template.login"));
100
101             isAuthorized = false;
102         }
103
104         return isAuthorized;
105     }
106
107     
108 }
109
Popular Tags