001: /*
002: * $Header: /export/home/cvsroot/MyPersonalizerRepository/MyPersonalizer/Subsystems/Portal/Sources/es/udc/mypersonalizer/portal/model/types/user/SignInEvent.java,v 1.1.1.1 2004/03/25 12:08:40 fbellas Exp $
003: * $Revision: 1.1.1.1 $
004: * $Date: 2004/03/25 12:08:40 $
005: *
006: * =============================================================================
007: *
008: * Copyright (c) 2003, The MyPersonalizer Development Group
009: * (http://www.tic.udc.es/~fbellas/mypersonalizer/index.html) at
010: * University Of A Coruna
011: * All rights reserved.
012: *
013: * Redistribution and use in source and binary forms, with or without
014: * modification, are permitted provided that the following conditions are met:
015: *
016: * - Redistributions of source code must retain the above copyright notice,
017: * this list of conditions and the following disclaimer.
018: *
019: * - Redistributions in binary form must reproduce the above copyright notice,
020: * this list of conditions and the following disclaimer in the documentation
021: * and/or other materials provided with the distribution.
022: *
023: * - Neither the name of the University Of A Coruna nor the names of its
024: * contributors may be used to endorse or promote products derived from
025: * this software without specific prior written permission.
026: *
027: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
028: * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
029: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
030: * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
031: * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
032: * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
033: * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
034: * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
035: * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
036: * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
037: * POSSIBILITY OF SUCH DAMAGE.
038: *
039: */
040:
041: package es.udc.mypersonalizer.portal.model.types.user;
042:
043: import es.udc.mypersonalizer.portal.model.permissions.UserCredentials;
044: import es.udc.mypersonalizer.portal.model.types.PortalEvent;
045:
046: /**
047: * This class defines an event suitable for user as parameter to a model
048: * SignInAction. It contains, besides the user's credentials (it's a subclass
049: * of PortalEvent), the password the user has typed at sign in and a boolean
050: * which determines if that password comes in encrypted or non-encrypted
051: * form.<p>
052: *
053: * Non-encrypted passwords usually come from sign in forms; encrypted passwords
054: * can come, for example, from a browser cookie sent to the system for
055: * automatic sign in (when the user has checked "remember my password" before).
056: *
057: * @author Daniel Fernandez
058: * @since 1.0
059: */
060: public class SignInEvent extends PortalEvent {
061:
062: /**
063: * The password the user has typed (or which is stored somewhere for him)
064: */
065: private String typedPassword;
066:
067: /**
068: * Whether the password is encrypted or not
069: */
070: private boolean passwordEncrypted;
071:
072: /**
073: * Creates an instance of this class. It needs the user's credentials, his
074: * password and the boolean which determines whether the password is
075: * encrypted or not.
076: *
077: * @param userCredentials the user's credentials
078: * @param typedPassword the user's password
079: * @param passwordEncrypted determines whether the password comes in
080: * encrypted form
081: */
082: public SignInEvent(UserCredentials userCredentials,
083: String typedPassword, boolean passwordEncrypted) {
084: super (userCredentials);
085: this .typedPassword = typedPassword;
086: this .passwordEncrypted = passwordEncrypted;
087: }
088:
089: /**
090: * Returns the user's password
091: *
092: * @return a String with the user's password
093: */
094: public String getTypedPassword() {
095: return typedPassword;
096: }
097:
098: /**
099: * Sets a new value for the user's password
100: *
101: * @param typedPassword a new value for the user's password
102: */
103: public void setTypedPassword(String typedPassword) {
104: this .typedPassword = typedPassword;
105: }
106:
107: /**
108: * Determines whether the password specified for this user is in encrypted
109: * or non-encrypted form
110: *
111: * @return a boolean with TRUE if the password is encrypted, FALSE if not
112: */
113: public boolean isPasswordEncrypted() {
114: return passwordEncrypted;
115: }
116:
117: /**
118: * Sets the value which determines if the password is encrypted to
119: * TRUE or FALSE
120: *
121: * @param passwordEncrypted TRUE if the password is to be set as
122: * "encrypted". FALSE if it to be set as "non-encrypted".
123: */
124: public void setPasswordEncrypted(boolean passwordEncrypted) {
125: this.passwordEncrypted = passwordEncrypted;
126: }
127:
128: }
|