Search in sources :

Example 26 with RecoverablePduException

use of com.cloudhopper.smpp.type.RecoverablePduException in project load-balancer by RestComm.

the class MServerConnectionImpl method sendUnbindResponse.

@Override
public void sendUnbindResponse(Pdu packet) {
    enquireRunnable.cancel();
    enquireTimer.cancel(false);
    if (packetMap.containsKey(packet.getSequenceNumber())) {
        TimerData data = packetMap.remove(packet.getSequenceNumber());
        if (data != null) {
            data.getRunnable().cancel();
            data.getScheduledFuture().cancel(false);
        }
    }
    ChannelBuffer buffer = null;
    try {
        buffer = transcoder.encode(packet);
    } catch (UnrecoverablePduException e) {
        logger.error("Encode error: ", e);
    } catch (RecoverablePduException e) {
        logger.error("Encode error: ", e);
    }
    serverState = ServerState.CLOSED;
    packetMap.clear();
    sequenceMap.clear();
    if (logger.isDebugEnabled())
        logger.debug("LB sent  unbind response (" + packet + ") to server " + channel.getRemoteAddress().toString() + ". session ID : " + sessionId);
    channel.write(buffer);
}
Also used : TimerData(org.mobicents.tools.smpp.balancer.timers.TimerData) RecoverablePduException(com.cloudhopper.smpp.type.RecoverablePduException) UnrecoverablePduException(com.cloudhopper.smpp.type.UnrecoverablePduException) ChannelBuffer(org.jboss.netty.buffer.ChannelBuffer)

Aggregations

RecoverablePduException (com.cloudhopper.smpp.type.RecoverablePduException)26 UnrecoverablePduException (com.cloudhopper.smpp.type.UnrecoverablePduException)26 ChannelBuffer (org.jboss.netty.buffer.ChannelBuffer)26 TimerData (org.mobicents.tools.smpp.balancer.timers.TimerData)10 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)8 EnquireLink (com.cloudhopper.smpp.pdu.EnquireLink)4 Pdu (com.cloudhopper.smpp.pdu.Pdu)4 BaseBind (com.cloudhopper.smpp.pdu.BaseBind)2 BindReceiver (com.cloudhopper.smpp.pdu.BindReceiver)2 BindTransceiver (com.cloudhopper.smpp.pdu.BindTransceiver)2 BindTransmitter (com.cloudhopper.smpp.pdu.BindTransmitter)2 GenericNack (com.cloudhopper.smpp.pdu.GenericNack)2 ServerTimerConnectionCheck (org.mobicents.tools.smpp.balancer.timers.ServerTimerConnectionCheck)1