1 ////////////////////////////////////////////////////////////////////////////// 2 // dexterIM - Instant Messaging Framework 3 // Copyright (C) 2003 Christoph Walcher 4 // 5 // This program is free software; you can redistribute it and/or modify 6 // it under the terms of the GNU General Public License as published by 7 // the Free Software Foundation; either version 2 of the License, or 8 // (at your option) any later version. 9 // 10 // This program is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 // GNU General Public License for more details. 14 // 15 // You should have received a copy of the GNU General Public License 16 // along with this program; if not, write to the Free Software 17 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 ////////////////////////////////////////////////////////////////////////////// 19 package net.sf.dexterim.core; 20 21 /*** 22 * 23 * @author Christoph Walcher 24 */ 25 public interface ContactState { 26 /*** Convenience method the see wheater a contact is online or offline 27 * @return true if this is an online state or false if it is not. 28 */ 29 boolean isOnline(); 30 31 /*** Convenience method the see wheater a contact is online or offline 32 * @return true if this is an Offline state or false if it is not. 33 */ 34 boolean isOffline(); 35 36 /*** Is called when the im system receives a state change command for a given 37 * contact and returns the new state. 38 * @param state the new state of the contact 39 * @return new State object 40 */ 41 ContactState changeState(Object state); 42 }