Class QueueTemplate.Queue

java.lang.Object
sunlabs.brazil.template.QueueTemplate.Queue
Enclosing class:
QueueTemplate

public static class QueueTemplate.Queue extends Object
Create an object queue. "Getters" wait 'till something appears in the queue.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static int
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    Create a new Q of a maximum possible size
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Clear the queue.
    long
    Return the total number of items Q'd.
    get(int timeout)
    Return the next item on the queue, waiting for up to "timeout" seconds or for an interrupt.
    long
    Return creation time (ms since epoch).
    long
    Get the expiration period of the Queue (in ms).
    boolean
    Get the closed state.
    void
    Send a notify: for debugging
    long
    Return the last time a Q insertion was attempted.
    long
    Return the last time a Q removal was attempted.
    boolean
    put(Object item)
    Put an item on the queue if it's open and not full.
    boolean
    put(Object item, boolean force)
    Put an item on the queue if it's not full.
    boolean
    setClosed(boolean closed)
    Set the closed state.
    void
    setExpires(long expires)
    Set the expiration period of the Queue (in ms).
    int
    How many items are queue'd.
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • max

      public static int max
  • Constructor Details

    • Queue

      public Queue()
      Create a new Q of a maximum possible size
  • Method Details

    • get

      public Object get(int timeout)
      Return the next item on the queue, waiting for up to "timeout" seconds or for an interrupt.
      Returns:
      the top of the Q, or null.
    • put

      public boolean put(Object item)
      Put an item on the queue if it's open and not full.
    • put

      public boolean put(Object item, boolean force)
      Put an item on the queue if it's not full. If "force" is true, override the "closed" flag.
    • size

      public int size()
      How many items are queue'd.
    • kick

      public void kick()
      Send a notify: for debugging
    • lastIn

      public long lastIn()
      Return the last time a Q insertion was attempted.
      Returns:
      -1 if no attempts were made.
    • lastOut

      public long lastOut()
      Return the last time a Q removal was attempted.
      Returns:
      -1 if no attempts were made.
    • count

      public long count()
      Return the total number of items Q'd.
      Returns:
      The # of Q'd items.
    • getExpires

      public long getExpires()
      Get the expiration period of the Queue (in ms). The notion of when a queue expires is application dependent. Applications can look at count() lastIn(), lastOut(). and created() to determine when the Q is expired for them.
    • setExpires

      public void setExpires(long expires)
      Set the expiration period of the Queue (in ms).
    • getCreated

      public long getCreated()
      Return creation time (ms since epoch).
    • clear

      public void clear()
      Clear the queue.
    • setClosed

      public boolean setClosed(boolean closed)
      Set the closed state.
    • isClosed

      public boolean isClosed()
      Get the closed state.
    • toString

      public String toString()
      Overrides:
      toString in class Object