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

📄 communicationeventobservable.java

📁 自己写的一个聊天的小程序 请多多指教
💻 JAVA
字号:
/* * Copyright (c) 2003 - 2007, Silvio Meier and Tobias Reinhard * * All rights reserved. *  * Redistribution and use in source and binary forms,  * with or without modification, are permitted provided  * that the following conditions are met: * *   o Redistributions of source code must retain the above  *     copyright notice, this list of conditions and the  *     following disclaimer. *   o Redistributions in binary form must reproduce the above  *     copyright notice, this list of conditions and the  *     following disclaimer in the documentation and/or other  *     materials provided with the distribution. *   o The names of its contributors may not be used to endorse  *     or promote products derived from this software without  *     specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */package net.sf.cscc;import java.util.Enumeration;import java.util.Vector;/** *  This class provides the functionality for observing the communication *  events. * *	@author             Silvio Meier (SM) *	@copyright          Silvio Meier, Tobias Reinhard, 2003 *	@history            2003-05-14 SM First Version *                      2003-05-14 SM working on additional methods and events, *                      correction of some comments. *                      2003-05-20 TR Comments corrected *	@version            $Date: 2007/07/01 17:04:05 $, $Author: reode_orm $, $Revision: 1.1 $ */class CommunicationEventObservable {    /**     * Holds all registerd observers.     * @directed     * @label notifies     */    private Vector observers;    /**     *   This constructor initializes the observable object.     *     *   @pre true     *   @post observers != null     */    public CommunicationEventObservable() {        observers = new Vector();    }    /**     *   Removes a given observer from the list of communication event observers. If the given     *   observer is not contained in the observer list, nothing happens.     *   @pre o != null     *   @post ((observers.size())@pre == (observers.size())@post + 1 &&     *          (obervers.contains(o))@pre) || (!(observers.contains(o))     *   @param o Observer which should be eliminated from the observer list.     */    public synchronized  void removeCommunicationEventObserver(CommunicationEventObserver o) {        observers.remove(o);    }    /**     *   Notifies all observers in the observer list by sending them the event.     *   The observers have to implement the     *   {@link net.sf.cscc.CommunicationEventObserver}     *   interface.     *     *   @pre ce != null     *   @post true     *   @param ce CommunicationEvent object which is sent to the observers.     */    public synchronized  void notifyCommunicationEventObservers(CommunicationEvent ce) {        Enumeration e = observers.elements();        while (e.hasMoreElements()) {            Object o = e.nextElement();            ((CommunicationEventObserver)o).receiveEvent(ce);        }    }    /**     *   Adds an observer to the communication observer list. If the observer is already     *   in the list, it is added again, so that multiple event notifications     *   can happen. The observer may not be null!     *   @pre  o != null     *   @post ((observers.size())@pre == (observers.size())@post - 1     *   @param o Observer to add to the list     */    public synchronized void addCommunicationEventObserver(CommunicationEventObserver o) {        observers.add(o);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -