package queues;

public class QueueNode <E>
{
   /**
    * Each QueueNode has a data field of type E
    * and a next field to support a singly-linked list
    */
   private E data;
   private QueueNode<E> next;

   /**
    * The default construtor sets the data and next fields to null
    */
   public QueueNode ()
   {
      data = null;
      next = null;
   }

   /**
    * An alternative constructor has both data and next parameters
    */
   public QueueNode (E origData, QueueNode<E> origNext)
   {
      data = origData;
      next = origNext;
   }

    /** 
     * getters and setters
     */

    public E getData () {
        return data;
    }
                       
    public void setData (E element) {
        data = element;
    }

    public QueueNode <E> getNext () {
        return next;
    }
    
    public void setNext (QueueNode<E> newNext) {
        next = newNext;
    }

}
