KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > campware > cream > modules > screens > SecureScreen


1 package org.campware.cream.modules.screens;
2
3 /* ====================================================================
4  * Copyright (C) 2003 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.turbine.modules.screens.VelocitySecureScreen;
44 import org.apache.turbine.util.RunData;
45 import org.apache.turbine.Turbine;
46
47 import org.apache.velocity.context.Context;
48
49 /**
50  * Grab all the records in a table using a Peer, and
51  * place the Vector of data objects in the context
52  * where they can be displayed by a #foreach loop.
53  *
54  * @author <a HREF="mailto:jvanzyl@periapt.com">Jason van Zyl</a>
55  */

56 public class SecureScreen extends VelocitySecureScreen
57 {
58
59     public static final int ENTITY=1001;
60     public static final int DOCUMENT=1002;
61     public static final int LOOKUP=1003;
62     public static final int SYSTEM=1004;
63     public static final int REPORT=1005;
64     public static final int UTIL=1006;
65
66     public void doBuildTemplate(RunData data, Context context)
67     {
68     }
69
70     /**
71      * Overide this method to perform the security check needed.
72      *
73      * @param data Turbine information.
74      * @return True if the user is authorized to access the screen.
75      * @exception Exception, a generic exception.
76      */

77     protected boolean isAuthorized( RunData data ) throws Exception JavaDoc
78     {
79         boolean isAuthorized = false;
80         
81         if (data.getUser().hasLoggedIn())
82         {
83             isAuthorized = true;
84         }
85         else
86         {
87 // data.setMessage("Please Login first!");
88
data.setScreenTemplate(Turbine.getConfiguration().getString("template.login"));
89
90             isAuthorized = false;
91         }
92         
93 // AccessControlList acl = data.getACL();
94

95 // if (acl==null || ! acl.hasRole("turbine_root"))
96
// {
97
// data.setScreenTemplate(
98
// TurbineResources.getString("template.login"));
99
//
100
// isAuthorized = false;
101
// }
102
// else if(acl.hasRole("turbine_root"))
103
// {
104
// isAuthorized = true;
105
// }
106
return isAuthorized;
107     }
108 }
109
Popular Tags