package org.apereo.cas.monitor; import org.apache.commons.lang3.StringUtils; /** * Base class for all monitors that support configurable naming. * * @author Marvin S. Addison * @since 3.5.0 */ public abstract class AbstractNamedMonitor<S extends Status> implements Monitor<S> { /** Monitor name. */ protected final String name; public AbstractNamedMonitor(final String name) { this.name = name; } /** * @return Monitor name. */ @Override public String getName() { return StringUtils.defaultIfEmpty(this.name, getClass().getSimpleName()); } }