Java 类org.jivesoftware.smackx.workgroup.packet.DepartQueuePacket 实例源码

项目:EIM    文件:Workgroup.java   
/**
 * Departs the workgroup queue. If the user is not currently in the queue, this
 * method will do nothing.<p>
 * <p/>
 * Normally, the user would not manually leave the queue. However, they may wish to
 * under certain circumstances -- for example, if they no longer wish to be routed
 * to an agent because they've been waiting too long.
 *
 * @throws XMPPException if an error occured trying to send the depart queue
 *                       request to the server.
 */
public void departQueue() throws XMPPException {
    // If not in the queue ignore the depart request.
    if (!inQueue) {
        return;
    }

    DepartQueuePacket departPacket = new DepartQueuePacket(this.workgroupJID);
    PacketCollector collector = this.connection.createPacketCollector(new PacketIDFilter(departPacket.getPacketID()));

    connection.sendPacket(departPacket);

    IQ response = (IQ)collector.nextResult(5000);
    collector.cancel();
    if (response == null) {
        throw new XMPPException("No response from the server.");
    }
    if (response.getError() != null) {
        throw new XMPPException(response.getError());
    }

    // Notify listeners that we're no longer in the queue.
    fireQueueDepartedEvent();
}
项目:androidPN-client.    文件:Workgroup.java   
/**
 * Departs the workgroup queue. If the user is not currently in the queue, this
 * method will do nothing.<p>
 * <p/>
 * Normally, the user would not manually leave the queue. However, they may wish to
 * under certain circumstances -- for example, if they no longer wish to be routed
 * to an agent because they've been waiting too long.
 *
 * @throws XMPPException if an error occured trying to send the depart queue
 *                       request to the server.
 */
public void departQueue() throws XMPPException {
    // If not in the queue ignore the depart request.
    if (!inQueue) {
        return;
    }

    DepartQueuePacket departPacket = new DepartQueuePacket(this.workgroupJID);
    PacketCollector collector = this.connection.createPacketCollector(new PacketIDFilter(departPacket.getPacketID()));

    connection.sendPacket(departPacket);

    IQ response = (IQ)collector.nextResult(5000);
    collector.cancel();
    if (response == null) {
        throw new XMPPException("No response from the server.");
    }
    if (response.getError() != null) {
        throw new XMPPException(response.getError());
    }

    // Notify listeners that we're no longer in the queue.
    fireQueueDepartedEvent();
}
项目:java-bells    文件:Workgroup.java   
/**
 * Departs the workgroup queue. If the user is not currently in the queue, this
 * method will do nothing.<p>
 * <p/>
 * Normally, the user would not manually leave the queue. However, they may wish to
 * under certain circumstances -- for example, if they no longer wish to be routed
 * to an agent because they've been waiting too long.
 *
 * @throws XMPPException if an error occured trying to send the depart queue
 *                       request to the server.
 */
public void departQueue() throws XMPPException {
    // If not in the queue ignore the depart request.
    if (!inQueue) {
        return;
    }

    DepartQueuePacket departPacket = new DepartQueuePacket(this.workgroupJID);
    PacketCollector collector = this.connection.createPacketCollector(new PacketIDFilter(departPacket.getPacketID()));

    connection.sendPacket(departPacket);

    IQ response = (IQ)collector.nextResult(5000);
    collector.cancel();
    if (response == null) {
        throw new XMPPException("No response from the server.");
    }
    if (response.getError() != null) {
        throw new XMPPException(response.getError());
    }

    // Notify listeners that we're no longer in the queue.
    fireQueueDepartedEvent();
}
项目:telegraph    文件:Workgroup.java   
/**
 * Departs the workgroup queue. If the user is not currently in the queue, this
 * method will do nothing.<p>
 * <p/>
 * Normally, the user would not manually leave the queue. However, they may wish to
 * under certain circumstances -- for example, if they no longer wish to be routed
 * to an agent because they've been waiting too long.
 *
 * @throws XMPPException if an error occured trying to send the depart queue
 *                       request to the server.
 */
public void departQueue() throws XMPPException {
    // If not in the queue ignore the depart request.
    if (!inQueue) {
        return;
    }

    DepartQueuePacket departPacket = new DepartQueuePacket(this.workgroupJID);
    PacketCollector collector = this.connection.createPacketCollector(new PacketIDFilter(departPacket.getPacketID()));

    connection.sendPacket(departPacket);

    IQ response = (IQ)collector.nextResult(5000);
    collector.cancel();
    if (response == null) {
        throw new XMPPException("No response from the server.");
    }
    if (response.getError() != null) {
        throw new XMPPException(response.getError());
    }

    // Notify listeners that we're no longer in the queue.
    fireQueueDepartedEvent();
}
项目:NewCommunication-Android    文件:Workgroup.java   
/**
 * Departs the workgroup queue. If the user is not currently in the queue, this
 * method will do nothing.<p>
 * <p/>
 * Normally, the user would not manually leave the queue. However, they may wish to
 * under certain circumstances -- for example, if they no longer wish to be routed
 * to an agent because they've been waiting too long.
 *
 * @throws XMPPException if an error occured trying to send the depart queue
 *                       request to the server.
 */
public void departQueue() throws XMPPException {
    // If not in the queue ignore the depart request.
    if (!inQueue) {
        return;
    }

    DepartQueuePacket departPacket = new DepartQueuePacket(this.workgroupJID);
    PacketCollector collector = this.connection.createPacketCollector(new PacketIDFilter(departPacket.getPacketID()));

    connection.sendPacket(departPacket);

    IQ response = (IQ)collector.nextResult(5000);
    collector.cancel();
    if (response == null) {
        throw new XMPPException("No response from the server.");
    }
    if (response.getError() != null) {
        throw new XMPPException(response.getError());
    }

    // Notify listeners that we're no longer in the queue.
    fireQueueDepartedEvent();
}
项目:xmppsupport_v2    文件:Workgroup.java   
/**
 * Departs the workgroup queue. If the user is not currently in the queue,
 * this method will do nothing.
 * <p>
 * <p/>
 * Normally, the user would not manually leave the queue. However, they may
 * wish to under certain circumstances -- for example, if they no longer
 * wish to be routed to an agent because they've been waiting too long.
 * 
 * @throws XMPPException
 *             if an error occured trying to send the depart queue request
 *             to the server.
 */
public void departQueue() throws XMPPException {
    // If not in the queue ignore the depart request.
    if (!inQueue) {
        return;
    }

    DepartQueuePacket departPacket = new DepartQueuePacket(
            this.workgroupJID);
    PacketCollector collector = this.connection
            .createPacketCollector(new PacketIDFilter(departPacket
                    .getPacketID()));

    connection.sendPacket(departPacket);

    IQ response = (IQ) collector.nextResult(5000);
    collector.cancel();
    if (response == null) {
        throw new XMPPException("No response from the server.");
    }
    if (response.getError() != null) {
        throw new XMPPException(response.getError());
    }

    // Notify listeners that we're no longer in the queue.
    fireQueueDepartedEvent();
}
项目:Smack    文件:AgentSession.java   
/**
 * Removes a user from the workgroup queue. This is an administrative action that the
 * <p/>
 * The agent is not guaranteed of having privileges to perform this action; an exception
 * denying the request may be thrown.
 *
 * @param userID the ID of the user to remove.
 * @throws XMPPException if an exception occurs.
 * @throws NotConnectedException 
 */
public void dequeueUser(String userID) throws XMPPException, NotConnectedException {
    // todo: this method simply won't work right now.
    DepartQueuePacket departPacket = new DepartQueuePacket(this.workgroupJID);

    // PENDING
    this.connection.sendStanza(departPacket);
}
项目:Smack    文件:Workgroup.java   
/**
 * Departs the workgroup queue. If the user is not currently in the queue, this
 * method will do nothing.<p>
 * <p/>
 * Normally, the user would not manually leave the queue. However, they may wish to
 * under certain circumstances -- for example, if they no longer wish to be routed
 * to an agent because they've been waiting too long.
 *
 * @throws XMPPErrorException if an error occured trying to send the depart queue
 *                       request to the server.
 * @throws NoResponseException 
 * @throws NotConnectedException 
 */
public void departQueue() throws NoResponseException, XMPPErrorException, NotConnectedException {
    // If not in the queue ignore the depart request.
    if (!inQueue) {
        return;
    }

    DepartQueuePacket departPacket = new DepartQueuePacket(this.workgroupJID);
    connection.createPacketCollectorAndSend(departPacket).nextResultOrThrow();

    // Notify listeners that we're no longer in the queue.
    fireQueueDepartedEvent();
}