Skip to content

Instantly share code, notes, and snippets.

@jmnarloch
Last active August 28, 2015 10:04
Show Gist options
  • Save jmnarloch/2baa4d0eff22570f5a76 to your computer and use it in GitHub Desktop.
Save jmnarloch/2baa4d0eff22570f5a76 to your computer and use it in GitHub Desktop.
MessageHandlerHealthIndicator
public class MessageHandlerHealthIndicator extends AbstractHealthIndicator {
private final AbstractBrokerMessageHandler abstractBrokerMessageHandler;
public MessageHandlerHealthIndicator(AbstractBrokerMessageHandler messageHandler) {
Assert.notNull(messageHandler, "MessageHandler can not be null");
this.abstractBrokerMessageHandler = messageHandler;
}
@Override
protected void doHealthCheck(Health.Builder builder) throws Exception {
if (abstractBrokerMessageHandler.isRunning() && abstractBrokerMessageHandler.isBrokerAvailable()) {
builder.up();
} else {
builder.down();
}
}
}
@Configuration
protected static class WebsocketBrokerHealthIndicatorConfiguration {
@Autowired(required = false)
private AbstractBrokerMessageHandler stompBrokerRelayMessageHandler;
@Bean
@ConditionalOnMissingBean(name = "stompBrokerRelayHealthIndicator")
public HealthIndicator stompBrokerRelayHealthIndicator() {
return new MessageHandlerHealthIndicator(stompBrokerRelayMessageHandler);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment