package edu.cmu.sphinx.util.props; /** * Describes all methods necessary to process change events of a <code>ConfigurationManager</code>. * * @author Holger Brandl * @see edu.cmu.sphinx.util.props.ConfigurationManager */ public interface ConfigurationChangeListener { /** * Called if the configuration of a registered compoenent named <code>configurableName</code> was changed. * * @param configurableName The name of the changed configurable. * @param propertyName The name of the property which was changed * @param cm The <code>ConfigurationManager</code>-instance this component is registered to */ public void configurationChanged(String configurableName, String propertyName, ConfigurationManager cm); /** * Called if a new compoenent defined by <code>ps</code> was registered to the ConfigurationManager * <code>cm</code>. * @param cm Configuration manager * @param ps Property sheet */ public void componentAdded(ConfigurationManager cm, PropertySheet ps); /** * Called if a compoenent defined by <code>ps</code> was unregistered (removed) from the ConfigurationManager * <code>cm</code>. * @param cm Configuration manager * @param ps Property sheet */ public void componentRemoved(ConfigurationManager cm, PropertySheet ps); /** * Called if a compoenent was renamed. * @param cm Configuration manager * @param ps Property sheet * @param oldName Old name */ public void componentRenamed(ConfigurationManager cm, PropertySheet ps, String oldName); }