⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chatnotifyimpl.java

📁 This is the simple Chat application use RMI
💻 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 + -