package rocks.inspectit.server.service; import javax.annotation.PostConstruct; import org.slf4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import rocks.inspectit.server.util.AgentStatusDataProvider; import rocks.inspectit.shared.all.cmr.service.IKeepAliveService; import rocks.inspectit.shared.all.spring.logger.Log; /** * Service to keep track of the online-status of registered agents. * * @author Marius Oehler * */ @Service public class KeepAliveService implements IKeepAliveService { /** * Logger for the class. */ @Log Logger log; /** * {@link AgentStatusDataProvider}. */ @Autowired AgentStatusDataProvider agentStatusDataProvider; /** * {@inheritDoc} */ @Override public void sendKeepAlive(long platformId) { if (log.isDebugEnabled()) { log.debug("Received keep-alive signal from platform " + platformId); } agentStatusDataProvider.handleKeepAliveSignal(platformId); } /** * Starts a continuous thread to be able to detect dead agents. */ @PostConstruct public void postConstruct() { if (log.isInfoEnabled()) { log.info("|-Keep Alive Service active..."); } } }