org.mobicents.slee.sipevent.server.subscription.pojo
Class Subscription

java.lang.Object
  extended by org.mobicents.slee.sipevent.server.subscription.pojo.Subscription
All Implemented Interfaces:
java.io.Serializable

public class Subscription
extends java.lang.Object
implements java.io.Serializable

Subscription: A subscription is a set of application state associated with a dialog. This application state includes a pointer to the associated dialog, the event package name, and possibly an identification token. Event packages will define additional subscription state information. By definition, subscriptions exist in both a subscriber and a notifier. This class is JPA pojo for a subscription.

Author:
eduardomartins
See Also:
Serialized Form

Nested Class Summary
static class Subscription.Event
          last event that occurred in the subscription
static class Subscription.Status
          the current status of the subscription
 
Field Summary
protected  SubscriptionKey key
          the subscription key
 
Constructor Summary
Subscription()
           
Subscription(SubscriptionKey key, java.lang.String subscriber, java.lang.String notifier, Subscription.Status status, java.lang.String subscriberDisplayName, int expires)
           
 
Method Summary
 boolean changeStatus(Subscription.Event event)
           
 boolean equals(java.lang.Object obj)
           
 long getCreationDate()
           
static java.util.List getDialogSubscriptions(javax.persistence.EntityManager entityManager, java.lang.String callId, java.lang.String remoteTag)
          retrieves subscriptions associated with the specified dialog
 int getExpires()
           
 SubscriptionKey getKey()
           
 Subscription.Event getLastEvent()
           
 long getLastRefreshDate()
           
 java.lang.String getNotifier()
           
 int getRemainingExpires()
           
 Subscription.Status getStatus()
           
 java.lang.String getSubscriber()
           
 java.lang.String getSubscriberDisplayName()
           
static Subscription getSubscription(javax.persistence.EntityManager entityManager, java.lang.String callId, java.lang.String remoteTag, java.lang.String eventPackage, java.lang.String eventId)
           
 int getSubscriptionDuration()
           
 javax.slee.facilities.TimerID getTimerID()
           
 int getVersion()
           
 int hashCode()
           
 void incrementVersion()
           
 void refresh(int expires)
           
 void setCreationDate(long creationDate)
           
 void setExpires(int expires)
           
 void setKey(SubscriptionKey key)
           
 void setLastEvent(Subscription.Event lastEvent)
           
 void setLastRefreshDate(long lastRefreshDate)
           
 void setNotifier(java.lang.String notifier)
           
 void setStatus(Subscription.Status status)
           
 void setSubscriber(java.lang.String subscriber)
           
 void setSubscriberDisplayName(java.lang.String subscriberDisplayName)
           
 void setTimerID(javax.slee.facilities.TimerID timerID)
           
 void setVersion(int version)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

key

protected SubscriptionKey key
the subscription key

Constructor Detail

Subscription

public Subscription()

Subscription

public Subscription(SubscriptionKey key,
                    java.lang.String subscriber,
                    java.lang.String notifier,
                    Subscription.Status status,
                    java.lang.String subscriberDisplayName,
                    int expires)
Method Detail

getRemainingExpires

public int getRemainingExpires()

getSubscriptionDuration

public int getSubscriptionDuration()

refresh

public void refresh(int expires)

changeStatus

public boolean changeStatus(Subscription.Event event)

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

getKey

public SubscriptionKey getKey()

setKey

public void setKey(SubscriptionKey key)

getSubscriber

public java.lang.String getSubscriber()

setSubscriber

public void setSubscriber(java.lang.String subscriber)

getNotifier

public java.lang.String getNotifier()

setNotifier

public void setNotifier(java.lang.String notifier)

getStatus

public Subscription.Status getStatus()

setStatus

public void setStatus(Subscription.Status status)

getCreationDate

public long getCreationDate()

setCreationDate

public void setCreationDate(long creationDate)

getLastRefreshDate

public long getLastRefreshDate()

setLastRefreshDate

public void setLastRefreshDate(long lastRefreshDate)

getExpires

public int getExpires()

setExpires

public void setExpires(int expires)

getSubscriberDisplayName

public java.lang.String getSubscriberDisplayName()

setSubscriberDisplayName

public void setSubscriberDisplayName(java.lang.String subscriberDisplayName)

getLastEvent

public Subscription.Event getLastEvent()

setLastEvent

public void setLastEvent(Subscription.Event lastEvent)

getTimerID

public javax.slee.facilities.TimerID getTimerID()

setTimerID

public void setTimerID(javax.slee.facilities.TimerID timerID)

getVersion

public int getVersion()

setVersion

public void setVersion(int version)

incrementVersion

public void incrementVersion()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getSubscription

public static Subscription getSubscription(javax.persistence.EntityManager entityManager,
                                           java.lang.String callId,
                                           java.lang.String remoteTag,
                                           java.lang.String eventPackage,
                                           java.lang.String eventId)

getDialogSubscriptions

public static java.util.List getDialogSubscriptions(javax.persistence.EntityManager entityManager,
                                                    java.lang.String callId,
                                                    java.lang.String remoteTag)
retrieves subscriptions associated with the specified dialog

Parameters:
entityManager -
dialog -
Returns:


Copyright © 2008. All Rights Reserved.