Class SubscriptionVisitorCheck
- java.lang.Object
-
- org.sonar.plugins.javascript.api.visitors.SubscriptionVisitor
-
- org.sonar.plugins.javascript.api.visitors.SubscriptionVisitorCheck
-
- All Implemented Interfaces:
JavaScriptCheck,TreeVisitor
- Direct Known Subclasses:
SeChecksDispatcher
@Beta public abstract class SubscriptionVisitorCheck extends SubscriptionVisitor implements JavaScriptCheck
-
-
Constructor Summary
Constructors Constructor Description SubscriptionVisitorCheck()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description PreciseIssueaddIssue(Tree tree, String message)Returns new issue which is instance ofPreciseIssue.<T extends Issue>
TaddIssue(T issue)Use this method only to add specific kind of issue.LineIssueaddLineIssue(Tree tree, String message)Deprecated.List<Issue>scanFile(TreeVisitorContext context)-
Methods inherited from class org.sonar.plugins.javascript.api.visitors.SubscriptionVisitor
getContext, isSubscribed, leaveFile, leaveNode, nodesToVisit, scanTree, scanTree, visitFile, visitNode
-
-
-
-
Method Detail
-
scanFile
public List<Issue> scanFile(TreeVisitorContext context)
- Specified by:
scanFilein interfaceJavaScriptCheck
-
addLineIssue
@Deprecated public LineIssue addLineIssue(Tree tree, String message)
Deprecated.Description copied from interface:JavaScriptCheckReturns new issue which is located on first line oftree- Specified by:
addLineIssuein interfaceJavaScriptCheck
-
addIssue
public PreciseIssue addIssue(Tree tree, String message)
Description copied from interface:JavaScriptCheckReturns new issue which is instance ofPreciseIssue. Then you can chain this method with following method calls to provide more information about issue:PreciseIssue.secondary(Tree, String),PreciseIssue.secondary(Tree)(without message) orPreciseIssue.secondary(IssueLocation)to add secondary locationPreciseIssue.cost(double)to add cost
See example
To create new issue you also can usenewIssue(functionDeclaration, "Remove this function declaration") .secondary(call, "Function call") .secondary(redefinition, "Function redefinition") .cost(functionDeclaration.parameters().parameters().size());JavaScriptCheck.addIssue(Issue):getContext().addIssue(new FileIssue(this, "Some message"))
- Specified by:
addIssuein interfaceJavaScriptCheck- Parameters:
tree- primary location of issuemessage- primary message- Returns:
- new issue
-
addIssue
public <T extends Issue> T addIssue(T issue)
Description copied from interface:JavaScriptCheckUse this method only to add specific kind of issue. E.g. you can use this method to add issue on file level, line issue or precise issue with sophisticated primary location.Otherwise please use
JavaScriptCheck.addIssue(Tree, String)- Specified by:
addIssuein interfaceJavaScriptCheck
-
-