001: /******************************************************************************
002: * JBoss, a division of Red Hat *
003: * Copyright 2006, Red Hat Middleware, LLC, and individual *
004: * contributors as indicated by the @authors tag. See the *
005: * copyright.txt in the distribution for a full listing of *
006: * individual contributors. *
007: * *
008: * This is free software; you can redistribute it and/or modify it *
009: * under the terms of the GNU Lesser General Public License as *
010: * published by the Free Software Foundation; either version 2.1 of *
011: * the License, or (at your option) any later version. *
012: * *
013: * This software is distributed in the hope that it will be useful, *
014: * but WITHOUT ANY WARRANTY; without even the implied warranty of *
015: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
016: * Lesser General Public License for more details. *
017: * *
018: * You should have received a copy of the GNU Lesser General Public *
019: * License along with this software; if not, write to the Free *
020: * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
021: * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
022: ******************************************************************************/package org.jboss.portal.migration.model22.model;
023:
024: import java.util.Date;
025: import java.util.Locale;
026: import java.util.Set;
027:
028: /**
029: * A user.
030: *
031: * @author <a href="mailto:julien@jboss.org">Julien Viet</a>
032: * @author <a href="mailto:theute@jboss.org">Thomas Heute</a>
033: * @version $Revision: 8784 $
034: */
035: public interface User {
036: /** The user identifier. */
037: Object getId();
038:
039: /** The user name. */
040: String getUserName();
041:
042: /** The given name (firstname). */
043: String getGivenName();
044:
045: /**
046: *
047: */
048: void setGivenName(String givenName);
049:
050: /** The family name. */
051: String getFamilyName();
052:
053: /**
054: *
055: */
056: void setFamilyName(String familyName);
057:
058: /**
059: *
060: */
061: String getRealEmail();
062:
063: /**
064: *
065: */
066: void setRealEmail(String realEmail);
067:
068: /**
069: *
070: */
071: String getFakeEmail();
072:
073: /**
074: *
075: */
076: void setFakeEmail(String fakeEmail);
077:
078: /**
079: *
080: */
081: Date getRegistrationDate();
082:
083: /**
084: *
085: */
086: void setRegistrationDate(Date registrationDate);
087:
088: /**
089: *
090: */
091: boolean getViewRealEmail();
092:
093: /**
094: *
095: */
096: void setViewRealEmail(boolean viewRealEmail);
097:
098: /**
099: *
100: */
101: String getPassword();
102:
103: /**
104: *
105: */
106: void setPassword(String password);
107:
108: /**
109: *
110: */
111: boolean getEnabled();
112:
113: /**
114: *
115: */
116: void setEnabled(boolean enable);
117:
118: /** Return the last time the user logged in or null if this date is not known. */
119: Date getLastVisitDate();
120:
121: /** Set the last visit date on this user. */
122: void setLastVisitDate(Date date);
123:
124: /** Return the user preferred locale. */
125: Locale getPreferredLocale();
126:
127: /** Set the user preferred locale. */
128: void setPreferredLocale(Locale locale);
129:
130: /** Returns the signature. */
131: String getSignature();
132:
133: /** Set the signature. */
134: void setSignature(String signature);
135:
136: /** Returns the roles related to this user. */
137: Set getRoles();
138:
139: /** Update the roles. */
140: void setRoles(Set roles);
141:
142: /** Return all the role names of the user. */
143: Set getRoleNames();
144:
145: /** Returns the user properties. */
146: PropertyMap getProperties();
147: }
|