public abstract class Analyzer
extends java.lang.Object
AuditContext
object passed to them. Besides implementing the
visitor methods, an analyzer subclass exposes its rules and metrics to the
framework to be configured. Analyzers, rules, and metrics are registered
with the Audit framework by IDE extensions by <audit-hook> elements in
their extension manifests.
Analyzer Configuration
For each Audit run, the Audit framework creates an instance of each
registered analyzer subclass and configures the rule, metric, and
suppression scheme fields that are annotated with the {@link
Constructor and Description |
---|
Analyzer() |
Modifier and Type | Method and Description |
---|---|
void |
cancel()
Notifies this analyzer that the audit that created it has been cancelled.
|
boolean |
isApplicationContentSupported()
Gets whether this analyzer supports analyzing application content files.
|
boolean |
isCancelled()
Gets whether
cancel() has been invoked. |
boolean |
isEnabled()
Gets whether this analyzer is enabled.
|
void |
review(AuditContext context,
Violation issue)
Review a reported issue.
|
void |
setEnabled(boolean enabled)
Sets whether this analyzer is enabled.
|
boolean |
startTask(AuditTaskContext context)
Executes a post-traversal background task.
|
public void review(AuditContext context, Violation issue)
AuditContext.report(SuppressionScheme, Violation)
but cannot invoke any
other suppress methods; it can report additional issues, for which it will
invoked again after it returns.context
- The Audit context for the construct of the issue.issue
- The reported issue to review.public boolean startTask(AuditTaskContext context)
cancel()
to
allow the background task to be cancelled. The task should report issues
using the AuditTaskContext
report methods, and should report
completion using the AuditTaskContext.taskCompleted()
method.public void cancel()
Analyzer
implementation ensures that isCancelled()
returns true after it is invoked. Analyzers that override startTask(oracle.jdeveloper.audit.analyzer.AuditTaskContext)
should also override cancel()
to cancel the background
task.AuditContext.isCancelled()
public boolean isCancelled()
cancel()
has been invoked.public boolean isApplicationContentSupported()
Analyzer
implementation returns false.public boolean isEnabled()
setEnabled(boolean)
public void setEnabled(boolean enabled)
Note that calling setEnabled(false) from an exit method is pointless (it will be reenabled as soon as the exit method returns), and calling setEnabled(true) from an enter or an exit method is also pointless (if the analyzer is not enabled, the enter or exit method will not be invoked in the first place).
isEnabled()