Example usage for org.apache.commons.collections.buffer CircularFifoBuffer isEmpty

List of usage examples for org.apache.commons.collections.buffer CircularFifoBuffer isEmpty

Introduction

In this page you can find the example usage for org.apache.commons.collections.buffer CircularFifoBuffer isEmpty.

Prototype

public boolean isEmpty() 

Source Link

Document

Returns true if this buffer is empty; false otherwise.

Usage

From source file:edu.umn.msi.tropix.webgui.server.messages.MessageManager.java

public Collection<T> drainQueue() {
    final HttpSession session = httpSessionSupplier.get();
    final String sessionId = session.getId();
    final String userId = userSession.getGridId();
    final List<T> objects = Lists.newArrayList();
    if (userId == null) {
        return objects;
    }//from   ww w. j a  v a  2 s. c  om
    CircularFifoBuffer queue;
    synchronized (userToSessionMap) {
        if (!userToSessionMap.containsEntry(userId, sessionId)) {
            final CloseWithSession finalizer = new CloseWithSession(userId, sessionId);
            session.setAttribute("messageManagerFinalizingObject", finalizer);
            userToSessionMap.put(userId, sessionId);
            sessionToUserMap.put(sessionId, userId);
        }
        if (!bufferMap.containsKey(sessionId)) {
            final CircularFifoBuffer objectBuffer = new CircularFifoBuffer(25);
            bufferMap.put(sessionId, objectBuffer);
        }
        queue = bufferMap.get(sessionId);
    }
    synchronized (queue) {
        while (!queue.isEmpty()) {
            @SuppressWarnings("unchecked")
            final T object = (T) queue.remove();
            if (object == null) {
                break;
            }
            objects.add(object);
        }
    }
    return objects;
}