package com.limegroup.gnutella.connection; import com.limegroup.gnutella.messages.Message; /** * A queue of messages. */ public interface MessageQueue { /** Adds a new message */ public void add(Message m); /** Removes the next message */ public Message removeNext(); /** Resets the amount of messages dropped, returning the current value. */ public int resetDropped(); /** Gets the current size of queued messages. Does not guarantee one will be returned. */ public int size(); /** Resets the number of messages in the cycle. Optional operation. */ public void resetCycle(); /** Determines if this is empty. */ public boolean isEmpty(); }