1 /** 2 * $Revision$ 3 * $Date$ 4 * 5 * Copyright 2003-2007 Jive Software. 6 * 7 * All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); 8 * you may not use this file except in compliance with the License. 9 * You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, software 14 * distributed under the License is distributed on an "AS IS" BASIS, 15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 * See the License for the specific language governing permissions and 17 * limitations under the License. 18 */ 19 20 package org.jivesoftware.smackx.workgroup.user; 21 22 /** 23 * Listener interface for those that wish to be notified of workgroup queue events. 24 * 25 * @see Workgroup#addQueueListener(QueueListener) 26 * @author loki der quaeler 27 */ 28 public interface QueueListener { 29 30 /** 31 * The user joined the workgroup queue. 32 */ 33 public void joinedQueue(); 34 35 /** 36 * The user departed the workgroup queue. 37 */ 38 public void departedQueue(); 39 40 /** 41 * The user's queue position has been updated to a new value. 42 * 43 * @param currentPosition the user's current position in the queue. 44 */ 45 public void queuePositionUpdated(int currentPosition); 46 47 /** 48 * The user's estimated remaining wait time in the queue has been updated. 49 * 50 * @param secondsRemaining the estimated number of seconds remaining until the 51 * the user is routed to the agent. 52 */ 53 public void queueWaitTimeUpdated(int secondsRemaining); 54 55 } 56