use of org.jdiameter.api.app.StateChangeListener in project jain-slee.diameter by RestComm.
the class DiameterS6aResourceAdaptor method stateChanged.
/* (non-Javadoc)
* @see org.mobicents.slee.resource.diameter.s6a.handlers.S6aSessionCreationListener#stateChanged(org.jdiameter.api.app.AppSession, java.lang.Enum, java.lang.Enum)
*/
public void stateChanged(AppSession source, Enum oldState, Enum newState) {
DiameterActivityHandle dah = getActivityHandle(source.getSessionId());
Object activity = getActivity(dah);
if (activity != null) {
if (source instanceof ServerShSession) {
try {
// damn, no common, do something unexpected
StateChangeListener<AppSession> scl = (StateChangeListener<AppSession>) activity;
scl.stateChanged(source, oldState, newState);
} catch (Exception e) {
tracer.warning("Failed to deliver state, for: " + dah + " on stateChanged( " + source + ", " + oldState + ", " + newState + " )", e);
}
}
} else {
tracer.warning("No activity for: " + dah + " on stateChanged( " + source + ", " + oldState + ", " + newState + " )");
}
}
use of org.jdiameter.api.app.StateChangeListener in project jain-slee.diameter by RestComm.
the class DiameterS13ResourceAdaptor method stateChanged.
/* (non-Javadoc)
* @see org.mobicents.slee.resource.diameter.s13.handlers.S13SessionCreationListener#stateChanged(org.jdiameter.api.app.AppSession, java.lang.Enum, java.lang.Enum)
*/
public void stateChanged(AppSession source, Enum oldState, Enum newState) {
DiameterActivityHandle dah = getActivityHandle(source.getSessionId());
Object activity = getActivity(dah);
if (activity != null) {
if (source instanceof ServerShSession) {
try {
// damn, no common, do something unexpected
StateChangeListener<AppSession> scl = (StateChangeListener<AppSession>) activity;
scl.stateChanged(source, oldState, newState);
} catch (Exception e) {
tracer.warning("Failed to deliver state, for: " + dah + " on stateChanged( " + source + ", " + oldState + ", " + newState + " )", e);
}
}
} else {
tracer.warning("No activity for: " + dah + " on stateChanged( " + source + ", " + oldState + ", " + newState + " )");
}
}
use of org.jdiameter.api.app.StateChangeListener in project jain-slee.diameter by RestComm.
the class DiameterCxDxResourceAdaptor method stateChanged.
/* (non-Javadoc)
* @see org.mobicents.slee.resource.diameter.cxdx.handlers.CxDxSessionCreationListener#stateChanged(org.jdiameter.api.app.AppSession, java.lang.Enum, java.lang.Enum)
*/
public void stateChanged(AppSession source, Enum oldState, Enum newState) {
DiameterActivityHandle dah = getActivityHandle(source.getSessionId());
Object activity = getActivity(dah);
if (activity != null) {
if (source instanceof ServerShSession) {
try {
// damn, no common, do something unexpected
StateChangeListener<AppSession> scl = (StateChangeListener<AppSession>) activity;
scl.stateChanged(source, oldState, newState);
} catch (Exception e) {
tracer.warning("Failed to deliver state, for: " + dah + " on stateChanged( " + source + ", " + oldState + ", " + newState + " )", e);
}
}
} else {
tracer.warning("No activity for: " + dah + " on stateChanged( " + source + ", " + oldState + ", " + newState + " )");
}
}
Aggregations