View Javadoc
1 /* 2 * Scope: a generic MVC framework. 3 * Copyright (c) 2000-2002, The Scope team 4 * All rights reserved. 5 * 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 11 * Redistributions of source code must retain the above copyright 12 * notice, this list of conditions and the following disclaimer. 13 * 14 * Redistributions in binary form must reproduce the above copyright 15 * notice, this list of conditions and the following disclaimer in the 16 * documentation and/or other materials provided with the distribution. 17 * 18 * Neither the name "Scope" nor the names of its contributors 19 * may be used to endorse or promote products derived from this software 20 * without specific prior written permission. 21 * 22 * 23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 26 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR 27 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 28 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 29 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 30 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 31 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 32 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 33 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 34 * 35 * 36 * $Id: LoginController.java,v 1.4 2002/09/05 15:41:48 ludovicc Exp $ 37 */ 38 package samples.helloworld3; 39 40 41 import org.scopemvc.controller.basic.BasicController; 42 import org.scopemvc.core.Control; 43 import org.scopemvc.core.ControlException; 44 45 /*** 46 * @author <A HREF="mailto:smeyfroi@users.sourceforge.net">Steve Meyfroidt</A> 47 * @created 05 September 2002 48 * @version $Revision: 1.4 $ $Date: 2002/09/05 15:41:48 $ 49 */ 50 public class LoginController extends BasicController { 51 52 /*** 53 * A Control ID. 54 */ 55 public final static String VALIDATE_LOGIN = "Login"; 56 57 /*** 58 * A Control ID to be recognised by parent Controller. 59 */ 60 public final static String LOGIN_OK = "login_ok"; 61 62 63 /*** 64 * Constructor for the LoginController object 65 */ 66 public LoginController() { 67 setModel(new LoginModel()); 68 setView(new LoginView()); 69 } 70 71 72 /*** 73 * TODO: document the method 74 */ 75 public void startup() { 76 showView(); 77 } 78 79 80 /*** 81 * Respond to VALIDATE_LOGIN. 82 * 83 * @param inControl TODO: Describe the Parameter 84 * @throws ControlException TODO: Describe the Exception 85 */ 86 protected void doHandleControl(Control inControl) throws ControlException { 87 if (inControl.matchesID(VALIDATE_LOGIN)) { 88 doValidateLogin(); 89 } 90 } 91 92 93 /*** 94 * On VALIDATE_LOGIN check the username/password and either throw a 95 * ControlException or issue a LOGIN_OK Control to be caught by this 96 * Controller's parent up the chain of responsibility. Consider Controls 97 * that issue from a Controller in this way to be part of the public API of 98 * the Controller. 99 * 100 * @throws ControlException TODO: Describe the Exception 101 */ 102 protected void doValidateLogin() throws ControlException { 103 // Delay to see busy cursor 104 try { 105 Thread.currentThread().sleep(1000); 106 } catch (InterruptedException e) {} 107 108 if (((LoginModel) getModel()).isValidUser()) { 109 hideView(); 110 handleControl(new Control(LOGIN_OK)); 111 } else { 112 showError("Failed validation", "Incorrect username and/or password.\nTry again with username 'Trevor' and password 'Cat'"); 113 } 114 } 115 } 116

This page was automatically generated by Maven