void drain(List<Object> queue) {
            if (queue == null) {
                return;
            }
            for (Object o : queue) {