Constructor and Description |
---|
RuleSet() |
Modifier and Type | Method and Description |
---|---|
void |
addExcludePattern(String aPattern)
Adds a new file exclusion pattern.
|
void |
addExcludePatterns(Collection<String> someExcludePatterns)
Adds new file exclusion patterns.
|
void |
addIncludePattern(String aPattern)
Adds a new inclusion pattern.
|
void |
addIncludePatterns(Collection<String> someIncludePatterns)
Adds new inclusion patterns.
|
void |
addRule(Rule rule)
Add a new rule to this ruleset.
|
void |
addRuleByReference(String ruleSetFileName,
Rule rule)
Add a new rule by reference to this ruleset.
|
boolean |
addRuleIfNotExists(Rule rule)
Only adds a rule to the ruleset if no rule with the same name for the
same language was added before, so that the existent rule configuration
won't be overridden.
|
boolean |
addRuleReplaceIfExists(Rule rule)
Adds a rule.
|
void |
addRuleSet(RuleSet ruleSet)
Add a whole RuleSet to this RuleSet
|
void |
addRuleSetByReference(RuleSet ruleSet,
boolean allRules)
Add all rules by reference from one RuleSet to this RuleSet.
|
void |
addRuleSetByReference(RuleSet ruleSet,
boolean allRules,
String... excludes)
Add all rules by reference from one RuleSet to this RuleSet.
|
boolean |
applies(File file)
Check if a given source file should be checked by rules in this RuleSet.
|
static boolean |
applies(Rule rule,
LanguageVersion languageVersion)
Does the given Rule apply to the given LanguageVersion? If so, the
Language must be the same and be between the minimum and maximums
versions on the Rule.
|
void |
apply(List<? extends Node> acuList,
RuleContext ctx)
Executes the rules in this ruleset against each of the given nodes.
|
static RuleSet |
createFor(String name,
Rule... theRules)
A convenience constructor
|
void |
end(RuleContext ctx)
Triggers the end lifecycle event on each rule in the ruleset.
|
boolean |
equals(Object o)
Two rulesets are equals, if they have the same name and contain the same
rules.
|
String |
getDescription() |
List<String> |
getExcludePatterns() |
String |
getFileName() |
List<String> |
getIncludePatterns() |
String |
getName() |
Rule |
getRuleByName(String ruleName)
Returns the first Rule found with the given name (case-sensitive).
|
Collection<Rule> |
getRules()
Returns the actual Collection of rules in this ruleset
|
int |
hashCode() |
void |
removeDysfunctionalRules(Collection<Rule> collector)
Remove and collect any misconfigured rules.
|
void |
setDescription(String description) |
void |
setExcludePatterns(Collection<String> theExcludePatterns)
Replaces the existing exclusion patterns with the given patterns.
|
void |
setFileName(String fileName) |
void |
setIncludePatterns(Collection<String> theIncludePatterns)
Replaces the existing inclusion patterns with the given patterns.
|
void |
setName(String name) |
int |
size()
Returns the number of rules in this ruleset
|
void |
start(RuleContext ctx)
Triggers that start lifecycle event on each rule in this ruleset.
|
boolean |
usesDFA(Language language)
Does any Rule for the given Language use the DFA layer?
|
boolean |
usesTypeResolution(Language language)
Does any Rule for the given Language use Type Resolution?
|
public static RuleSet createFor(String name, Rule... theRules)
name
- the rule set nametheRules
- the rules to add to the rule setpublic int size()
public void addRule(Rule rule)
rule
- the rule to be addedpublic boolean addRuleReplaceIfExists(Rule rule)
rule
- the new rule to addtrue
if the new rule replaced an existing one,
otherwise false
.public boolean addRuleIfNotExists(Rule rule)
rule
- the new rule to addtrue
if the rule was added, false
otherwisepublic void addRuleByReference(String ruleSetFileName, Rule rule)
ruleSetFileName
- the ruleset which contains the rulerule
- the rule to be addedpublic Collection<Rule> getRules()
Rule
public boolean usesDFA(Language language)
language
- The Language.true
if a Rule for the Language uses the DFA layer,
false
otherwise.public Rule getRuleByName(String ruleName)
ruleName
- the exact name of the rule to findpublic void addRuleSet(RuleSet ruleSet)
ruleSet
- the RuleSet to addpublic void addRuleSetByReference(RuleSet ruleSet, boolean allRules)
ruleSet
- the RuleSet to addallRules
- true
if the ruleset should be added
collectively or false
to add individual
references for each rule.public void addRuleSetByReference(RuleSet ruleSet, boolean allRules, String... excludes)
ruleSet
- the RuleSet to addallRules
- true
if the ruleset should be added
collectively or false
to add individual
references for each rule.excludes
- names of the rules that should be excluded.public boolean applies(File file)
exclude
pattern
which matches the file, unless there is an include
pattern
which also matches the file. In other words, include
patterns override exclude
patterns.file
- the source file to checktrue
if the file should be checked,
false
otherwisepublic void start(RuleContext ctx)
ctx
- the current contextpublic void apply(List<? extends Node> acuList, RuleContext ctx)
acuList
- the node list, usually the root nodes like compilation
unitsctx
- the current contextpublic static boolean applies(Rule rule, LanguageVersion languageVersion)
rule
- The rule.languageVersion
- The language version.true
if the given rule matches the given language,
which means, that the rule would be executed.public void end(RuleContext ctx)
ctx
- the current contextpublic boolean equals(Object o)
public String getFileName()
public void setFileName(String fileName)
public String getName()
public void setName(String name)
public String getDescription()
public void setDescription(String description)
public void addExcludePattern(String aPattern)
aPattern
- the patternpublic void addExcludePatterns(Collection<String> someExcludePatterns)
someExcludePatterns
- the patternspublic void setExcludePatterns(Collection<String> theExcludePatterns)
theExcludePatterns
- the new patternspublic void addIncludePattern(String aPattern)
aPattern
- the patternpublic void addIncludePatterns(Collection<String> someIncludePatterns)
someIncludePatterns
- the patternspublic void setIncludePatterns(Collection<String> theIncludePatterns)
theIncludePatterns
- the new patternspublic boolean usesTypeResolution(Language language)
language
- The Language.true
if a Rule for the Language uses Type
Resolution, false
otherwise.public void removeDysfunctionalRules(Collection<Rule> collector)
collector
- the removed rules will be added to this collectionCopyright © 2002-2016 InfoEther. All Rights Reserved.