📄 loginobserver.java
字号:
/**
* 文件名:UserLoginObserver.java
* <p />
* 作者:Cigarette Ash
* <p />
*/
package com.ciash.bms.observer.impl;
import java.util.Iterator;
import java.util.Vector;
import com.ciash.bms.gui.uiInter.LoginUI;
import com.ciash.bms.gui.updater.LoginUpdater;
import com.ciash.bms.model.LoginModel;
import com.ciash.bms.observer.Observer;
import com.ciash.bms.observer.UserLoginObserver;
/**
* 类描述:
* <p />
* 公司: Cigarette Ash Inc.
* <p />
* 版权: Copyright (c) Cigarette Ash 2009
* <p />
*
* @author Cigarette Ash
* @version 1.0
*/
public class LoginObserver implements UserLoginObserver{
private LoginModel loginModel;
private Vector loginUpdaters = new Vector();
private LoginUI loginUI;
public LoginObserver(){
}
public LoginObserver(LoginModel loginModel, LoginUI loginUI){
this.loginModel = loginModel;
this.loginUI = loginUI;
}
public void update() {
Iterator it = loginUpdaters.iterator();
while (it.hasNext()) {
LoginUpdater updater = (LoginUpdater) it.next();
if (loginModel.isLogin()) {
updater.updateLogin(loginModel.getLoginUser(), loginModel
.getLoginPopedom());
} else {
updater.updateQuit();
}
}
}
public void login() {
int result;
String id;
String psw;
do {
result = loginUI.showDialog();
id = loginUI.getId();
psw = loginUI.getPassword();
} while (result == LoginUI.OK_OPTION && !loginModel.login(id, psw));
// 点击确定并登陆失败时,循环
update();
}
public void quit() {
loginModel.quit();
update();
}
public void addLoginUpdater(LoginUpdater updater) {
loginUpdaters.add(updater);
}
public void removeLoginUpdater(LoginUpdater updater) {
loginUpdaters.remove(updater);
}
public int loginUpdaterCount(){
return loginUpdaters.size();
}
public LoginModel getLoginModel() {
return loginModel;
}
public void setLoginModel(LoginModel loginModel) {
this.loginModel = loginModel;
}
public LoginUI getLoginUI() {
return loginUI;
}
public void setLoginUI(LoginUI loginUI) {
this.loginUI = loginUI;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -