SMSLib 3.5.3

org.smslib.queues
Class AbstractQueueManager

java.lang.Object
  extended by org.smslib.queues.AbstractQueueManager
Direct Known Subclasses:
DefaultQueueManager

public abstract class AbstractQueueManager
extends java.lang.Object

Base class for all Queue Management implementations. Queue Managers are used to save OutboundMessage that are scheduled for delivery in the future. Gateways also use Queue Managers in order to send pending OutboundMessage.

Since:
3.5
Author:
Bassam Al-Sarori

Constructor Summary
AbstractQueueManager()
           
AbstractQueueManager(int queueDelay)
           
 
Method Summary
abstract  int delayedQueueSize(java.lang.String gatewayId)
           
abstract  java.util.Collection<OutboundMessage> getDelayedMessages()
           
abstract  java.util.Collection<OutboundMessage> getPendingMessages(java.lang.String gatewayId)
           
 int getQueueDelay()
           
 void pause()
           
abstract  int pendingQueueSize(java.lang.String gatewayId)
           
abstract  OutboundMessage pollDelayedMessage()
           
abstract  OutboundMessage pollPendingMessage(java.lang.String gatewayId)
           
abstract  boolean queueMessage(OutboundMessage message)
          Queues the message.
abstract  boolean removeAllDelayedMessages()
           
abstract  boolean removeAllPendingMessages()
           
abstract  boolean removeAllPendingMessages(java.lang.String gatewayId)
           
abstract  boolean removeDelayedMessage(OutboundMessage message)
           
abstract  boolean removeDelayedMessage(java.lang.String messageUUID)
           
abstract  boolean removePendingMessage(OutboundMessage message)
           
abstract  boolean removePendingMessage(java.lang.String messageUUID)
           
 void resume()
           
 void setQueueDelay(int queueDelay)
           
 void start()
           
 void stop()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractQueueManager

public AbstractQueueManager()

AbstractQueueManager

public AbstractQueueManager(int queueDelay)
Method Detail

queueMessage

public abstract boolean queueMessage(OutboundMessage message)
Queues the message. If message.getDeliveryDelay > 0 then it is queued for later delivery else it is added to the gateway's pending queue specified by message.getGatewayId.

Parameters:
message -
Returns:
if the message was queued, false otherwise.

removePendingMessage

public abstract boolean removePendingMessage(OutboundMessage message)

removePendingMessage

public abstract boolean removePendingMessage(java.lang.String messageUUID)

removeDelayedMessage

public abstract boolean removeDelayedMessage(OutboundMessage message)

removeDelayedMessage

public abstract boolean removeDelayedMessage(java.lang.String messageUUID)

removeAllPendingMessages

public abstract boolean removeAllPendingMessages(java.lang.String gatewayId)

removeAllPendingMessages

public abstract boolean removeAllPendingMessages()

removeAllDelayedMessages

public abstract boolean removeAllDelayedMessages()

pollDelayedMessage

public abstract OutboundMessage pollDelayedMessage()

pollPendingMessage

public abstract OutboundMessage pollPendingMessage(java.lang.String gatewayId)

getPendingMessages

public abstract java.util.Collection<OutboundMessage> getPendingMessages(java.lang.String gatewayId)

pendingQueueSize

public abstract int pendingQueueSize(java.lang.String gatewayId)

getDelayedMessages

public abstract java.util.Collection<OutboundMessage> getDelayedMessages()

delayedQueueSize

public abstract int delayedQueueSize(java.lang.String gatewayId)

getQueueDelay

public int getQueueDelay()

setQueueDelay

public void setQueueDelay(int queueDelay)

start

public void start()

stop

public void stop()

pause

public void pause()

resume

public void resume()

SMSLib 3.5.3

(c) 2002-2011, http://smslib.org