Package net.sourceforge.pmd.cache
Class NoopAnalysisCache
- java.lang.Object
-
- net.sourceforge.pmd.cache.NoopAnalysisCache
-
- All Implemented Interfaces:
AnalysisCache
,ThreadSafeReportListener
public class NoopAnalysisCache extends java.lang.Object implements AnalysisCache
A NOOP analysis cache. Easier / safer than null-checking.
-
-
Constructor Summary
Constructors Constructor Description NoopAnalysisCache()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
analysisFailed(java.io.File sourceFile)
Notifies the cache that analysis of the given file has failed and should not be cachedvoid
checkValidity(RuleSets ruleSets, java.lang.ClassLoader classLoader)
Checks if the cache is valid for the configured rulesets and class loader.java.util.List<RuleViolation>
getCachedViolations(java.io.File sourceFile)
Retrieves cached violations for the given file.boolean
isUpToDate(java.io.File sourceFile)
Check if a given file is up to date in the cache and can be skipped from analysisvoid
metricAdded(Metric metric)
A new metric point has been reported.void
persist()
Persist the analysis results on whatever means is used by the cachevoid
ruleViolationAdded(RuleViolation ruleViolation)
A new violation has been found.
-
-
-
Method Detail
-
ruleViolationAdded
public void ruleViolationAdded(RuleViolation ruleViolation)
Description copied from interface:ThreadSafeReportListener
A new violation has been found.- Specified by:
ruleViolationAdded
in interfaceThreadSafeReportListener
- Parameters:
ruleViolation
- the found violation.
-
metricAdded
public void metricAdded(Metric metric)
Description copied from interface:ThreadSafeReportListener
A new metric point has been reported.- Specified by:
metricAdded
in interfaceThreadSafeReportListener
- Parameters:
metric
- the metric
-
persist
public void persist()
Description copied from interface:AnalysisCache
Persist the analysis results on whatever means is used by the cache- Specified by:
persist
in interfaceAnalysisCache
-
isUpToDate
public boolean isUpToDate(java.io.File sourceFile)
Description copied from interface:AnalysisCache
Check if a given file is up to date in the cache and can be skipped from analysis- Specified by:
isUpToDate
in interfaceAnalysisCache
- Parameters:
sourceFile
- The file to check in the cache- Returns:
- True if the cache is a hit, false otherwise
-
analysisFailed
public void analysisFailed(java.io.File sourceFile)
Description copied from interface:AnalysisCache
Notifies the cache that analysis of the given file has failed and should not be cached- Specified by:
analysisFailed
in interfaceAnalysisCache
- Parameters:
sourceFile
- The file whose analysis failed
-
checkValidity
public void checkValidity(RuleSets ruleSets, java.lang.ClassLoader classLoader)
Description copied from interface:AnalysisCache
Checks if the cache is valid for the configured rulesets and class loader.- Specified by:
checkValidity
in interfaceAnalysisCache
- Parameters:
ruleSets
- The rulesets configured for this analysis.classLoader
- The class loader for auxclasspath configured for this analysis.
-
getCachedViolations
public java.util.List<RuleViolation> getCachedViolations(java.io.File sourceFile)
Description copied from interface:AnalysisCache
Retrieves cached violations for the given file. Make sure to callAnalysisCache.isUpToDate(File)
first.- Specified by:
getCachedViolations
in interfaceAnalysisCache
- Parameters:
sourceFile
- The file to check in the cache- Returns:
- The list of cached violations.
-
-