KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > jaspersoft > jasperserver > api > metadata > user > domain > impl > client > MetadataUserDetails


1 /*
2  * Copyright (C) 2006 JasperSoft http://www.jaspersoft.com
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed WITHOUT ANY WARRANTY; and without the
10  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11  * See the GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
15  * or write to:
16  *
17  * Free Software Foundation, Inc.,
18  * 59 Temple Place - Suite 330,
19  * Boston, MA USA 02111-1307
20  */

21
22 package com.jaspersoft.jasperserver.api.metadata.user.domain.impl.client;
23
24 import java.util.Iterator JavaDoc;
25 import java.util.List JavaDoc;
26 import java.util.Set JavaDoc;
27
28 import org.acegisecurity.GrantedAuthority;
29 import org.acegisecurity.GrantedAuthorityImpl;
30 import org.acegisecurity.userdetails.UserDetails;
31
32 import com.jaspersoft.jasperserver.api.metadata.user.domain.Role;
33 import com.jaspersoft.jasperserver.api.metadata.user.domain.User;
34
35 /**
36  * @author swood
37  *
38  */

39 public class MetadataUserDetails implements UserDetails, User {
40
41     private Set JavaDoc roleSet;
42     private String JavaDoc username = null;
43     private String JavaDoc password = null;
44     private boolean enabled = false;
45     private String JavaDoc fullName = null;
46     private String JavaDoc emailAddress = null;
47     private boolean externallyDefined = false;
48     private UserDetails originalUserDetails = null;
49
50     /**
51      *
52      */

53     public MetadataUserDetails(User u) {
54         super();
55         
56         setUsername(u.getUsername());
57         setPassword(u.getPassword());
58         setFullName(u.getFullName());
59         setEmailAddress(u.getEmailAddress());
60         setExternallyDefined(u.isExternallyDefined());
61         setEnabled(u.isEnabled());
62         setRoles(u.getRoles());
63     }
64
65     /* (non-Javadoc)
66      * @see org.acegisecurity.userdetails.UserDetails#getAuthorities()
67      */

68     public GrantedAuthority[] getAuthorities() {
69         Set JavaDoc currentRoles = getRoles();
70         
71         GrantedAuthority[] authorities = currentRoles == null ? new GrantedAuthority[0] : new GrantedAuthority[currentRoles.size()];
72         
73         if (currentRoles == null) {
74             return authorities;
75         }
76         
77         Iterator JavaDoc it = currentRoles.iterator();
78         int i = 0;
79         while (it.hasNext()) {
80             Role aRole = (Role) it.next();
81             authorities[i++] = new GrantedAuthorityImpl(aRole.getRoleName());
82         }
83         return authorities;
84     }
85
86     /* (non-Javadoc)
87      * @see org.acegisecurity.userdetails.UserDetails#getPassword()
88      */

89     public String JavaDoc getPassword() {
90         return password;
91     }
92
93     /**
94      * @param password The password to set.
95      */

96     public void setPassword(String JavaDoc password) {
97         this.password = password;
98     }
99
100     /* (non-Javadoc)
101      * @see org.acegisecurity.userdetails.UserDetails#getUsername()
102      */

103     public String JavaDoc getUsername() {
104         return username;
105     }
106
107     /**
108      * @param username The username to set.
109      */

110     public void setUsername(String JavaDoc username) {
111         this.username = username;
112     }
113
114     /**
115      * @return Returns the emailAddress.
116      */

117     public String JavaDoc getEmailAddress() {
118         return emailAddress;
119     }
120
121     /**
122      * @param emailAddress The emailAddress to set.
123      */

124     public void setEmailAddress(String JavaDoc emailAddress) {
125         this.emailAddress = emailAddress;
126     }
127
128     /**
129      * @return Returns the externallyDefined.
130      */

131     public boolean isExternallyDefined() {
132         return externallyDefined;
133     }
134
135     /**
136      * @param externallyDefined The externallyDefined to set.
137      */

138     public void setExternallyDefined(boolean externallyDefined) {
139         this.externallyDefined = externallyDefined;
140     }
141
142     /**
143      * @return Returns the fullName.
144      */

145     public String JavaDoc getFullName() {
146         return fullName;
147     }
148
149     /**
150      * @param fullName The fullName to set.
151      */

152     public void setFullName(String JavaDoc fullName) {
153         this.fullName = fullName;
154     }
155
156     /* (non-Javadoc)
157      * @see org.acegisecurity.userdetails.UserDetails#isAccountNonExpired()
158      */

159     public boolean isAccountNonExpired() {
160         return enabled;
161     }
162
163     /* (non-Javadoc)
164      * @see org.acegisecurity.userdetails.UserDetails#isAccountNonLocked()
165      */

166     public boolean isAccountNonLocked() {
167         return enabled;
168     }
169
170     /* (non-Javadoc)
171      * @see org.acegisecurity.userdetails.UserDetails#isCredentialsNonExpired()
172      */

173     public boolean isCredentialsNonExpired() {
174         return enabled;
175     }
176
177     /* (non-Javadoc)
178      * @see org.acegisecurity.userdetails.UserDetails#isEnabled()
179      */

180     public boolean isEnabled() {
181         return enabled;
182     }
183     /**
184      * @param enabled The enabled to set.
185      */

186     public void setEnabled(boolean enabled) {
187         this.enabled = enabled;
188     }
189
190     public Set JavaDoc getRoles() {
191         return roleSet;
192     }
193     
194     public void setRoles(Set JavaDoc newRoleSet) {
195         roleSet = newRoleSet;
196     }
197     
198     /**
199      * @return Returns the originalUserDetails.
200      */

201     public UserDetails getOriginalUserDetails() {
202         return originalUserDetails;
203     }
204
205     /**
206      * @param originalUserDetails The originalUserDetails to set.
207      */

208     public void setOriginalUserDetails(UserDetails originalUserDetails) {
209         this.originalUserDetails = originalUserDetails;
210     }
211
212     /* (non-Javadoc)
213      * @see com.jaspersoft.jasperserver.api.common.domain.AttributedObject#getAttributes()
214      */

215     public List JavaDoc getAttributes() {
216         return null;
217     }
218
219     /* (non-Javadoc)
220      * @see com.jaspersoft.jasperserver.api.metadata.user.domain.User#addRole(com.jaspersoft.jasperserver.api.metadata.user.domain.Role)
221      */

222     public void addRole(Role aRole) {
223     }
224
225     /* (non-Javadoc)
226      * @see com.jaspersoft.jasperserver.api.metadata.user.domain.User#removeRole(com.jaspersoft.jasperserver.api.metadata.user.domain.Role)
227      */

228     public void removeRole(Role aRole) {
229     }
230     
231     public String JavaDoc toString() {
232         return "MetadataUserDetails: " + getUsername();
233     }
234
235 }
236
Popular Tags