/* 
* Copyright 2016 Agencia Estatal de Administración Tibutaria
*
* Licencia con arreglo a la EUPL, Versión 1.1 o –en cuanto
* sean aprobadas por la Comisión Europea– versiones
* posteriores de la EUPL (la «Licencia»);
* Solo podrá usarse esta obra si se respeta la Licencia.
* Puede obtenerse una copia de la Licencia en:
*  
* https://joinup.ec.europa.eu/software/page/eupl
*  
* Salvo cuando lo exija la legislación aplicable o se acuerde
* por escrito, el programa distribuido con arreglo a la
* Licencia se distribuye «TAL CUAL», SIN GARANTÍAS NI CONDICIONES
* DE NINGÚN TIPO, ni expresasni implícitas.
*
* Véase la Licencia en el idioma concreto que rige los permisos y 
* limitaciones que establece la Licencia.
*/ 

package monitor.utiles;

import java.util.*;

public class colaBase {

   List<datosMensaje> lista;

   public colaBase() {
      lista = Collections.synchronizedList(new LinkedList<datosMensaje>());
   }

   public int size() {
      return lista.size();
   }

   public void encola(datosMensaje o) {
      lista.add(o);
   }

   public Object desencola() {
      if (lista.isEmpty()) {
         return null;
      }
      return lista.remove(0);
   }

   public Object siguiente() {
      if (lista.isEmpty()) {
         return null;
      }
      return lista.get(0);
   }

   public void vacia() {
      lista.clear();
   }

   public void clear() {
      vacia();
   }

   public void elimina(datosMensaje o) {
      lista.remove(o);
   }
}

