org.mobicents.slee.resource.diameter.cca.handlers
Class CreditControlSessionFactory

java.lang.Object
  extended by org.mobicents.slee.resource.diameter.cca.handlers.CreditControlSessionFactory
All Implemented Interfaces:
org.jdiameter.api.app.StateChangeListener, org.jdiameter.api.cca.ClientCCASessionListener, org.jdiameter.api.cca.ServerCCASessionListener, org.jdiameter.common.api.app.cca.ICCAMessageFactory, org.jdiameter.common.api.app.cca.IClientCCASessionContext, org.jdiameter.common.api.app.cca.IServerCCASessionContext, org.jdiameter.common.api.app.IAppSessionFactory

public class CreditControlSessionFactory
extends java.lang.Object
implements org.jdiameter.common.api.app.IAppSessionFactory, org.jdiameter.api.cca.ClientCCASessionListener, org.jdiameter.api.cca.ServerCCASessionListener, org.jdiameter.api.app.StateChangeListener, org.jdiameter.common.api.app.cca.ICCAMessageFactory, org.jdiameter.common.api.app.cca.IServerCCASessionContext, org.jdiameter.common.api.app.cca.IClientCCASessionContext

CreditControlSessionFactory.java
Super project: mobicents
3:19:55 AM Dec 30, 2008

Author:
Bartosz Baranowski , Alexandre Mendonca

Field Summary
protected  int defaultCreditControlFailureHandling
           
protected  int defaultDirectDebitingFailureHandling
           
protected  long defaultTxTimerValue
           
protected  long defaultValidityTime
           
protected  org.apache.log4j.Logger logger
           
protected  long messageTimeout
           
protected  CCAResourceAdaptor resourceAdaptor
           
protected  org.jdiameter.api.SessionFactory sessionFactory
           
 
Constructor Summary
CreditControlSessionFactory(org.jdiameter.api.SessionFactory sessionFactory, CCAResourceAdaptor resourceAdaptor, long messageTimeout)
           
CreditControlSessionFactory(org.jdiameter.api.SessionFactory sessionFactory, CCAResourceAdaptor resourceAdaptor, long messageTimeout, int defaultDirectDebitingFailureHandling, int defaultCreditControlFailureHandling, long defaultValidityTime, long defaultTxTimerValue)
           
 
Method Summary
 org.jdiameter.api.cca.events.JCreditControlAnswer createCreditControlAnswer(org.jdiameter.api.Answer answer)
           
 org.jdiameter.api.cca.events.JCreditControlRequest createCreditControlRequest(org.jdiameter.api.Request req)
           
 org.jdiameter.api.auth.events.ReAuthAnswer createReAuthAnswer(org.jdiameter.api.Answer answer)
           
 org.jdiameter.api.auth.events.ReAuthRequest createReAuthRequest(org.jdiameter.api.Request req)
           
 void denyAccessOnDeliverFailure(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl, org.jdiameter.api.Message request)
           
 void denyAccessOnFailureMessage(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
           
 void denyAccessOnTxExpire(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
           
 void doAbortSessionAnswer(org.jdiameter.api.cca.ClientCCASession session, org.jdiameter.api.auth.events.AbortSessionRequest request, org.jdiameter.api.auth.events.AbortSessionAnswer answer)
           
 void doAbortSessionAnswer(org.jdiameter.api.cca.ServerCCASession session, org.jdiameter.api.auth.events.AbortSessionRequest request, org.jdiameter.api.auth.events.AbortSessionAnswer answer)
           
 void doAbortSessionRequest(org.jdiameter.api.cca.ClientCCASession session, org.jdiameter.api.auth.events.AbortSessionRequest request)
           
 void doAbortSessionRequest(org.jdiameter.api.cca.ServerCCASession session, org.jdiameter.api.auth.events.AbortSessionRequest request)
           
 void doAccountingAnswer(org.jdiameter.api.cca.ClientCCASession session, org.jdiameter.api.acc.events.AccountRequest request, org.jdiameter.api.acc.events.AccountAnswer answer)
           
 void doAccountingAnswer(org.jdiameter.api.cca.ServerCCASession session, org.jdiameter.api.acc.events.AccountRequest request, org.jdiameter.api.acc.events.AccountAnswer answer)
           
 void doAccountingRequest(org.jdiameter.api.cca.ClientCCASession session, org.jdiameter.api.acc.events.AccountRequest request)
           
 void doAccountingRequest(org.jdiameter.api.cca.ServerCCASession session, org.jdiameter.api.acc.events.AccountRequest request)
           
 void doCreditControlAnswer(org.jdiameter.api.cca.ClientCCASession session, org.jdiameter.api.cca.events.JCreditControlRequest request, org.jdiameter.api.cca.events.JCreditControlAnswer answer)
           
 void doCreditControlRequest(org.jdiameter.api.cca.ServerCCASession session, org.jdiameter.api.cca.events.JCreditControlRequest request)
           
 void doOtherEvent(org.jdiameter.api.app.AppSession session, org.jdiameter.api.app.AppRequestEvent request, org.jdiameter.api.app.AppAnswerEvent answer)
           
 void doReAuthAnswer(org.jdiameter.api.cca.ServerCCASession session, org.jdiameter.api.auth.events.ReAuthRequest request, org.jdiameter.api.auth.events.ReAuthAnswer answer)
           
 void doReAuthRequest(org.jdiameter.api.cca.ClientCCASession session, org.jdiameter.api.auth.events.ReAuthRequest request)
           
 void doSessionTerminationAnswer(org.jdiameter.api.cca.ClientCCASession session, org.jdiameter.api.auth.events.SessionTermRequest request, org.jdiameter.api.auth.events.SessionTermAnswer answer)
           
 void doSessionTerminationAnswer(org.jdiameter.api.cca.ServerCCASession session, org.jdiameter.api.auth.events.SessionTermRequest request, org.jdiameter.api.auth.events.SessionTermAnswer answer)
           
 void doSessionTerminationRequest(org.jdiameter.api.cca.ClientCCASession session, org.jdiameter.api.auth.events.SessionTermRequest request)
           
 void doSessionTerminationRequest(org.jdiameter.api.cca.ServerCCASession session, org.jdiameter.api.auth.events.SessionTermRequest request)
           
 long[] getApplicationIds()
           
 int getDefaultCCFHValue()
           
 int getDefaultDDFHValue()
           
 long getDefaultTxTimerValue()
           
 long getDefaultValidityTime()
           
 org.jdiameter.api.app.AppSession getNewSession(java.lang.String sessionId, java.lang.Class<? extends org.jdiameter.api.app.AppSession> aClass, org.jdiameter.api.ApplicationId applicationId, java.lang.Object[] args)
           
 void grantAccessOnDeliverFailure(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl, org.jdiameter.api.Message request)
           
 void grantAccessOnFailureMessage(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
           
 void grantAccessOnTxExpire(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
           
 void indicateServiceError(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
           
 void sessionSupervisionTimerExpired(org.jdiameter.api.cca.ServerCCASession session)
           
 void sessionSupervisionTimerReStarted(org.jdiameter.api.cca.ServerCCASession session, java.util.concurrent.ScheduledFuture future)
           
 void sessionSupervisionTimerStarted(org.jdiameter.api.cca.ServerCCASession session, java.util.concurrent.ScheduledFuture future)
           
 void sessionSupervisionTimerStopped(org.jdiameter.api.cca.ServerCCASession session, java.util.concurrent.ScheduledFuture future)
           
 void stateChanged(java.lang.Enum oldState, java.lang.Enum newState)
           
 void timeoutExpired(org.jdiameter.api.Request request)
           
 void txTimerExpired(org.jdiameter.api.cca.ClientCCASession session)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sessionFactory

protected org.jdiameter.api.SessionFactory sessionFactory

resourceAdaptor

protected CCAResourceAdaptor resourceAdaptor

messageTimeout

protected long messageTimeout

defaultDirectDebitingFailureHandling

protected int defaultDirectDebitingFailureHandling

defaultCreditControlFailureHandling

protected int defaultCreditControlFailureHandling

defaultValidityTime

protected long defaultValidityTime

defaultTxTimerValue

protected long defaultTxTimerValue

logger

protected org.apache.log4j.Logger logger
Constructor Detail

CreditControlSessionFactory

public CreditControlSessionFactory(org.jdiameter.api.SessionFactory sessionFactory,
                                   CCAResourceAdaptor resourceAdaptor,
                                   long messageTimeout)

CreditControlSessionFactory

public CreditControlSessionFactory(org.jdiameter.api.SessionFactory sessionFactory,
                                   CCAResourceAdaptor resourceAdaptor,
                                   long messageTimeout,
                                   int defaultDirectDebitingFailureHandling,
                                   int defaultCreditControlFailureHandling,
                                   long defaultValidityTime,
                                   long defaultTxTimerValue)
Method Detail

getNewSession

public org.jdiameter.api.app.AppSession getNewSession(java.lang.String sessionId,
                                                      java.lang.Class<? extends org.jdiameter.api.app.AppSession> aClass,
                                                      org.jdiameter.api.ApplicationId applicationId,
                                                      java.lang.Object[] args)
Specified by:
getNewSession in interface org.jdiameter.common.api.app.IAppSessionFactory

doCreditControlRequest

public void doCreditControlRequest(org.jdiameter.api.cca.ServerCCASession session,
                                   org.jdiameter.api.cca.events.JCreditControlRequest request)
                            throws org.jdiameter.api.InternalException
Specified by:
doCreditControlRequest in interface org.jdiameter.api.cca.ServerCCASessionListener
Throws:
org.jdiameter.api.InternalException

doCreditControlAnswer

public void doCreditControlAnswer(org.jdiameter.api.cca.ClientCCASession session,
                                  org.jdiameter.api.cca.events.JCreditControlRequest request,
                                  org.jdiameter.api.cca.events.JCreditControlAnswer answer)
                           throws org.jdiameter.api.InternalException
Specified by:
doCreditControlAnswer in interface org.jdiameter.api.cca.ClientCCASessionListener
Throws:
org.jdiameter.api.InternalException

doReAuthRequest

public void doReAuthRequest(org.jdiameter.api.cca.ClientCCASession session,
                            org.jdiameter.api.auth.events.ReAuthRequest request)
                     throws org.jdiameter.api.InternalException
Specified by:
doReAuthRequest in interface org.jdiameter.api.cca.ClientCCASessionListener
Throws:
org.jdiameter.api.InternalException

doReAuthAnswer

public void doReAuthAnswer(org.jdiameter.api.cca.ServerCCASession session,
                           org.jdiameter.api.auth.events.ReAuthRequest request,
                           org.jdiameter.api.auth.events.ReAuthAnswer answer)
                    throws org.jdiameter.api.InternalException
Specified by:
doReAuthAnswer in interface org.jdiameter.api.cca.ServerCCASessionListener
Throws:
org.jdiameter.api.InternalException

doOtherEvent

public void doOtherEvent(org.jdiameter.api.app.AppSession session,
                         org.jdiameter.api.app.AppRequestEvent request,
                         org.jdiameter.api.app.AppAnswerEvent answer)
                  throws org.jdiameter.api.InternalException
Specified by:
doOtherEvent in interface org.jdiameter.api.cca.ClientCCASessionListener
Specified by:
doOtherEvent in interface org.jdiameter.api.cca.ServerCCASessionListener
Throws:
org.jdiameter.api.InternalException

doAbortSessionRequest

public void doAbortSessionRequest(org.jdiameter.api.cca.ClientCCASession session,
                                  org.jdiameter.api.auth.events.AbortSessionRequest request)
                           throws org.jdiameter.api.InternalException
Specified by:
doAbortSessionRequest in interface org.jdiameter.api.cca.ClientCCASessionListener
Throws:
org.jdiameter.api.InternalException

doAbortSessionAnswer

public void doAbortSessionAnswer(org.jdiameter.api.cca.ClientCCASession session,
                                 org.jdiameter.api.auth.events.AbortSessionRequest request,
                                 org.jdiameter.api.auth.events.AbortSessionAnswer answer)
                          throws org.jdiameter.api.InternalException
Specified by:
doAbortSessionAnswer in interface org.jdiameter.api.cca.ClientCCASessionListener
Throws:
org.jdiameter.api.InternalException

doAccountingRequest

public void doAccountingRequest(org.jdiameter.api.cca.ClientCCASession session,
                                org.jdiameter.api.acc.events.AccountRequest request)
                         throws org.jdiameter.api.InternalException
Specified by:
doAccountingRequest in interface org.jdiameter.api.cca.ClientCCASessionListener
Throws:
org.jdiameter.api.InternalException

doAccountingAnswer

public void doAccountingAnswer(org.jdiameter.api.cca.ClientCCASession session,
                               org.jdiameter.api.acc.events.AccountRequest request,
                               org.jdiameter.api.acc.events.AccountAnswer answer)
                        throws org.jdiameter.api.InternalException
Specified by:
doAccountingAnswer in interface org.jdiameter.api.cca.ClientCCASessionListener
Throws:
org.jdiameter.api.InternalException

doSessionTerminationRequest

public void doSessionTerminationRequest(org.jdiameter.api.cca.ClientCCASession session,
                                        org.jdiameter.api.auth.events.SessionTermRequest request)
                                 throws org.jdiameter.api.InternalException
Specified by:
doSessionTerminationRequest in interface org.jdiameter.api.cca.ClientCCASessionListener
Throws:
org.jdiameter.api.InternalException

doSessionTerminationAnswer

public void doSessionTerminationAnswer(org.jdiameter.api.cca.ClientCCASession session,
                                       org.jdiameter.api.auth.events.SessionTermRequest request,
                                       org.jdiameter.api.auth.events.SessionTermAnswer answer)
                                throws org.jdiameter.api.InternalException
Specified by:
doSessionTerminationAnswer in interface org.jdiameter.api.cca.ClientCCASessionListener
Throws:
org.jdiameter.api.InternalException

doAbortSessionRequest

public void doAbortSessionRequest(org.jdiameter.api.cca.ServerCCASession session,
                                  org.jdiameter.api.auth.events.AbortSessionRequest request)
                           throws org.jdiameter.api.InternalException
Specified by:
doAbortSessionRequest in interface org.jdiameter.api.cca.ServerCCASessionListener
Throws:
org.jdiameter.api.InternalException

doAbortSessionAnswer

public void doAbortSessionAnswer(org.jdiameter.api.cca.ServerCCASession session,
                                 org.jdiameter.api.auth.events.AbortSessionRequest request,
                                 org.jdiameter.api.auth.events.AbortSessionAnswer answer)
                          throws org.jdiameter.api.InternalException
Specified by:
doAbortSessionAnswer in interface org.jdiameter.api.cca.ServerCCASessionListener
Throws:
org.jdiameter.api.InternalException

doAccountingRequest

public void doAccountingRequest(org.jdiameter.api.cca.ServerCCASession session,
                                org.jdiameter.api.acc.events.AccountRequest request)
                         throws org.jdiameter.api.InternalException
Specified by:
doAccountingRequest in interface org.jdiameter.api.cca.ServerCCASessionListener
Throws:
org.jdiameter.api.InternalException

doAccountingAnswer

public void doAccountingAnswer(org.jdiameter.api.cca.ServerCCASession session,
                               org.jdiameter.api.acc.events.AccountRequest request,
                               org.jdiameter.api.acc.events.AccountAnswer answer)
                        throws org.jdiameter.api.InternalException
Specified by:
doAccountingAnswer in interface org.jdiameter.api.cca.ServerCCASessionListener
Throws:
org.jdiameter.api.InternalException

doSessionTerminationRequest

public void doSessionTerminationRequest(org.jdiameter.api.cca.ServerCCASession session,
                                        org.jdiameter.api.auth.events.SessionTermRequest request)
                                 throws org.jdiameter.api.InternalException
Specified by:
doSessionTerminationRequest in interface org.jdiameter.api.cca.ServerCCASessionListener
Throws:
org.jdiameter.api.InternalException

doSessionTerminationAnswer

public void doSessionTerminationAnswer(org.jdiameter.api.cca.ServerCCASession session,
                                       org.jdiameter.api.auth.events.SessionTermRequest request,
                                       org.jdiameter.api.auth.events.SessionTermAnswer answer)
                                throws org.jdiameter.api.InternalException
Specified by:
doSessionTerminationAnswer in interface org.jdiameter.api.cca.ServerCCASessionListener
Throws:
org.jdiameter.api.InternalException

createCreditControlAnswer

public org.jdiameter.api.cca.events.JCreditControlAnswer createCreditControlAnswer(org.jdiameter.api.Answer answer)
Specified by:
createCreditControlAnswer in interface org.jdiameter.common.api.app.cca.ICCAMessageFactory

createCreditControlRequest

public org.jdiameter.api.cca.events.JCreditControlRequest createCreditControlRequest(org.jdiameter.api.Request req)
Specified by:
createCreditControlRequest in interface org.jdiameter.common.api.app.cca.ICCAMessageFactory

createReAuthAnswer

public org.jdiameter.api.auth.events.ReAuthAnswer createReAuthAnswer(org.jdiameter.api.Answer answer)
Specified by:
createReAuthAnswer in interface org.jdiameter.common.api.app.cca.ICCAMessageFactory

createReAuthRequest

public org.jdiameter.api.auth.events.ReAuthRequest createReAuthRequest(org.jdiameter.api.Request req)
Specified by:
createReAuthRequest in interface org.jdiameter.common.api.app.cca.ICCAMessageFactory

stateChanged

public void stateChanged(java.lang.Enum oldState,
                         java.lang.Enum newState)
Specified by:
stateChanged in interface org.jdiameter.api.app.StateChangeListener

sessionSupervisionTimerExpired

public void sessionSupervisionTimerExpired(org.jdiameter.api.cca.ServerCCASession session)
Specified by:
sessionSupervisionTimerExpired in interface org.jdiameter.common.api.app.cca.IServerCCASessionContext

sessionSupervisionTimerReStarted

public void sessionSupervisionTimerReStarted(org.jdiameter.api.cca.ServerCCASession session,
                                             java.util.concurrent.ScheduledFuture future)
Specified by:
sessionSupervisionTimerReStarted in interface org.jdiameter.common.api.app.cca.IServerCCASessionContext

sessionSupervisionTimerStarted

public void sessionSupervisionTimerStarted(org.jdiameter.api.cca.ServerCCASession session,
                                           java.util.concurrent.ScheduledFuture future)
Specified by:
sessionSupervisionTimerStarted in interface org.jdiameter.common.api.app.cca.IServerCCASessionContext

sessionSupervisionTimerStopped

public void sessionSupervisionTimerStopped(org.jdiameter.api.cca.ServerCCASession session,
                                           java.util.concurrent.ScheduledFuture future)
Specified by:
sessionSupervisionTimerStopped in interface org.jdiameter.common.api.app.cca.IServerCCASessionContext

timeoutExpired

public void timeoutExpired(org.jdiameter.api.Request request)
Specified by:
timeoutExpired in interface org.jdiameter.common.api.app.cca.IServerCCASessionContext

denyAccessOnDeliverFailure

public void denyAccessOnDeliverFailure(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl,
                                       org.jdiameter.api.Message request)
Specified by:
denyAccessOnDeliverFailure in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

denyAccessOnFailureMessage

public void denyAccessOnFailureMessage(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
Specified by:
denyAccessOnFailureMessage in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

denyAccessOnTxExpire

public void denyAccessOnTxExpire(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
Specified by:
denyAccessOnTxExpire in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

getDefaultCCFHValue

public int getDefaultCCFHValue()
Specified by:
getDefaultCCFHValue in interface org.jdiameter.api.cca.ClientCCASessionListener
Specified by:
getDefaultCCFHValue in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

getDefaultDDFHValue

public int getDefaultDDFHValue()
Specified by:
getDefaultDDFHValue in interface org.jdiameter.api.cca.ClientCCASessionListener
Specified by:
getDefaultDDFHValue in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

getDefaultTxTimerValue

public long getDefaultTxTimerValue()
Specified by:
getDefaultTxTimerValue in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

grantAccessOnDeliverFailure

public void grantAccessOnDeliverFailure(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl,
                                        org.jdiameter.api.Message request)
Specified by:
grantAccessOnDeliverFailure in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

grantAccessOnFailureMessage

public void grantAccessOnFailureMessage(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
Specified by:
grantAccessOnFailureMessage in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

grantAccessOnTxExpire

public void grantAccessOnTxExpire(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
Specified by:
grantAccessOnTxExpire in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

indicateServiceError

public void indicateServiceError(org.jdiameter.api.cca.ClientCCASession clientCCASessionImpl)
Specified by:
indicateServiceError in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

txTimerExpired

public void txTimerExpired(org.jdiameter.api.cca.ClientCCASession session)
Specified by:
txTimerExpired in interface org.jdiameter.common.api.app.cca.IClientCCASessionContext

getApplicationIds

public long[] getApplicationIds()
Specified by:
getApplicationIds in interface org.jdiameter.common.api.app.cca.ICCAMessageFactory

getDefaultValidityTime

public long getDefaultValidityTime()
Specified by:
getDefaultValidityTime in interface org.jdiameter.common.api.app.cca.IServerCCASessionContext


Copyright © 2009. All Rights Reserved.