📄 chatnotifyimpl.java
字号:
package chat.share;
import java.rmi.*;
import java.rmi.server.*;
import java.util.*;
import javax.swing.event.EventListenerList;
public class ChatNotifyImpl extends UnicastRemoteObject implements ChatNotify {
// 夋柺儊僢僙乕僕張棟梡Listener
private transient EventListenerList eventList = new EventListenerList();
/**
* 昁梫偺Constructor
*/
public ChatNotifyImpl() throws RemoteException {
super();
}
/**
* 儊僢僙乕僕張棟(僀儀儞僩Transfer)
*
*/
public void notifyMessage(String msg) throws RemoteException {
fireMessageTransferEvent(msg);
}
/**
* 儐乕僓儕僗僩Refresh
*
*/
public void refreshUserList(Vector users) throws RemoteException {
fireRefreshUserListEvent(users);
}
/**
* 僋儔僀儞alive敾抐
*
*/
public void pingUser() throws RemoteException {
}
/**
* 捛壛僀儀儞僩
*/
public void addMessageTransferListener(MessageTransferListener listener) {
eventList.add(MessageTransferListener.class, listener);
}
/**
* 嶍彍僀儀儞僩
*/
public void removeMessageTransferListener(MessageTransferListener listener) {
eventList.remove(MessageTransferListener.class, listener);
}
/**
* 儊僢僙乕僕Transfer張棟
*/
private void fireMessageTransferEvent(String msg) {
EventListener array[] = eventList.getListeners(MessageTransferListener.class);
MessageTransferEvent transferEvent = new MessageTransferEvent(this);
transferEvent.setMessage(msg);
for (int i=array.length-1; i>=0; i--) {
if (array[i] instanceof MessageTransferListener) {
((MessageTransferListener) array[i]).messageTransfered(transferEvent);
}
}
}
/**
* 儐乕僓儕僗僩Refresh張棟
*/
private void fireRefreshUserListEvent(Vector users) {
EventListener array[] = eventList.getListeners(MessageTransferListener.class);
MessageTransferEvent userRefreshEvent = new MessageTransferEvent(this);
userRefreshEvent.setUsers(users);
for (int i=array.length-1; i>=0; i--) {
if (array[i] instanceof MessageTransferListener) {
((MessageTransferListener) array[i]).UserlistRefreshed(userRefreshEvent);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -