package rocks.inspectit.shared.cs.cmr.service; import rocks.inspectit.shared.all.cmr.service.ServiceExporterType; import rocks.inspectit.shared.all.cmr.service.ServiceInterface; /** * This interface is used to retrieve the status of the CMR. * * @author Patrice Bouillet * */ @ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IServerStatusService { /** * Enumeration that denotes the server status. * * @author Ivan Senic * */ public enum ServerStatus { /** * Server offline. */ SERVER_OFFLINE, /** * Server online. */ SERVER_ONLINE, /** * Server starting. */ SERVER_STARTING, /** * Server stopping. */ SERVER_STOPPING; /** * The key that denotes the current state of the IDs in the registration database. The * cached data service must check against this key and refresh the cache if the key is not * the same as on the last check of the key. */ private String registrationIdsValidationKey; /** * Gets {@link #registrationIdsValidationKey}. * * @return {@link #registrationIdsValidationKey} */ public String getRegistrationIdsValidationKey() { return registrationIdsValidationKey; } /** * Sets {@link #registrationIdsValidationKey}. * * @param registrationIdsValidationKey * New value for {@link #registrationIdsValidationKey} */ public void setRegistrationIdsValidationKey(String registrationIdsValidationKey) { this.registrationIdsValidationKey = registrationIdsValidationKey; } } /** * Returns the current server status. * * @return The server status. */ ServerStatus getServerStatus(); /** * Returns the current version of the server. * * @return the current version of the server. */ String getVersion(); }