@Override protected boolean process() throws IOException, InterruptedException { // Only connect the transmitter if lazy-connect is false. if (!getConfig().isLazyTransmitterConnect()) { channelConnect(); } final T data = messageQueue.poll(tickTimeout.getPeriod(), tickTimeout.getUnit()); if (data != null) { final PublisherData publisherData = publisherCallback.publish(data); if (publisherData != null) { publish(publisherData); return getChannel().isOpen() && publisherData.isHealthy(); } } return true; }