blob: 3c9487bff2ab7284df81819c788ff9a65b34e0ca [file] [log] [blame]
package org.apache.ant.debugger;
import java.util.List;
import org.apache.tools.ant.Project;
/**
* Audits all calls to change property values
*
* Right now only properties are audited: We can try to figure a way to audit
* other data-types if it adds any value.
*/
public interface Auditor {
/**
* Marks a property to be tracked for attempted changes.
*
* @param property
*/
public void addPropertyForAudits(String property, Project project);
/**
* Audits change to a property by name <code>property</code>.
*
* @param property
* @param value
* @param project
*/
public void auditPropertyChange(String property, Object value,
Project project);
/**
* Returns all records for the key.
*
* @param key
* @return
*/
public List getAuditsForProperty(String key);
/**
* Provide a hook for debuggers to attach to this auditor so that it may be
* able to pass back the control to the Debugger in case of a Property
* Breakpoint.
*
* @param debugger
*/
public void setPrompt(DebugPrompt debugger);
}