Add private method to remove duplication

This commit is contained in:
Rossen Stoyanchev 2014-12-02 15:26:50 -05:00
parent fa89ae244f
commit ed4cd9947f
1 changed files with 13 additions and 15 deletions

View File

@ -148,15 +148,11 @@ public class SimpleBrokerMessageHandler extends AbstractBrokerMessageHandler {
}
if (SimpMessageType.MESSAGE.equals(messageType)) {
if (logger.isDebugEnabled()) {
logger.debug("Processing " + accessor.getShortLogMessage(message.getPayload()));
}
logMessage(message);
sendMessageToSubscribers(destination, message);
}
else if (SimpMessageType.CONNECT.equals(messageType)) {
if (logger.isDebugEnabled()) {
logger.debug("Processing " + accessor.getShortLogMessage(EMPTY_PAYLOAD));
}
logMessage(message);
SimpMessageHeaderAccessor connectAck = SimpMessageHeaderAccessor.create(SimpMessageType.CONNECT_ACK);
initHeaders(connectAck);
connectAck.setSessionId(sessionId);
@ -166,9 +162,7 @@ public class SimpleBrokerMessageHandler extends AbstractBrokerMessageHandler {
getClientOutboundChannel().send(messageOut);
}
else if (SimpMessageType.DISCONNECT.equals(messageType)) {
if (logger.isDebugEnabled()) {
logger.debug("Processing " + accessor.getShortLogMessage(EMPTY_PAYLOAD));
}
logMessage(message);
this.subscriptionRegistry.unregisterAllSubscriptions(sessionId);
SimpMessageHeaderAccessor disconnectAck = SimpMessageHeaderAccessor.create(SimpMessageType.DISCONNECT_ACK);
initHeaders(disconnectAck);
@ -178,19 +172,23 @@ public class SimpleBrokerMessageHandler extends AbstractBrokerMessageHandler {
getClientOutboundChannel().send(messageOut);
}
else if (SimpMessageType.SUBSCRIBE.equals(messageType)) {
if (logger.isDebugEnabled()) {
logger.debug("Processing " + accessor.getShortLogMessage(EMPTY_PAYLOAD));
}
logMessage(message);
this.subscriptionRegistry.registerSubscription(message);
}
else if (SimpMessageType.UNSUBSCRIBE.equals(messageType)) {
if (logger.isDebugEnabled()) {
logger.debug("Processing " + accessor.getShortLogMessage(EMPTY_PAYLOAD));
}
logMessage(message);
this.subscriptionRegistry.unregisterSubscription(message);
}
}
private void logMessage(Message<?> message) {
if (logger.isDebugEnabled()) {
SimpMessageHeaderAccessor accessor = MessageHeaderAccessor.getAccessor(message, SimpMessageHeaderAccessor.class);
accessor = (accessor != null ? accessor : SimpMessageHeaderAccessor.wrap(message));
logger.debug("Processing " + accessor.getShortLogMessage(message.getPayload()));
}
}
private void initHeaders(SimpMessageHeaderAccessor accessor) {
if (getHeaderInitializer() != null) {
getHeaderInitializer().initHeaders(accessor);