Simplify DoNotUseThreads rule
- No point in filterint out constructor calls, and then immediately search for them - If we already checked for the fiel / local var declaration type, no need to do it again
This commit is contained in:
1 parent
c93f4cad9b
commit
c2601b37b7
1 file changed
+2
-7
@@ -159,14 +159,9 @@ Also, EJBs might be moved between machines in a cluster and only managed resourc
|
||||
]
|
||||
)]
|
||||
(: exclude duplicated types on the same line :)
|
||||
[not((parent::FieldDeclaration|parent::LocalVariableDeclaration)/VariableDeclarator/*[2][pmd-java:typeIs('java.lang.Thread') or pmd-java:typeIs('java.util.concurrent.ExecutorService')])
|
||||
[not((parent::FieldDeclaration|parent::LocalVariableDeclaration)/VariableDeclarator/*[2][pmd-java:typeIs('java.lang.Thread') or pmd-java:typeIs('java.util.concurrent.ExecutorService')])
|
||||
or
|
||||
@BeginLine != (parent::FieldDeclaration|parent::LocalVariableDeclaration)/VariableDeclarator/ConstructorCall/ClassOrInterfaceType[pmd-java:typeIs('java.lang.Thread') or pmd-java:typeIs('java.util.concurrent.ExecutorService')]/@BeginLine]
|
||||
|
||||
(: exclude constructor call chains :)
|
||||
[not(parent::ConstructorCall)]
|
||||
|
|
||||
//ConstructorCall/ClassOrInterfaceType[pmd-java:typeIs('java.lang.Thread')]
|
||||
@BeginLine != (parent::FieldDeclaration|parent::LocalVariableDeclaration)/VariableDeclarator/ConstructorCall/ClassOrInterfaceType/@BeginLine]
|
||||
|
|
||||
//MethodCall[*[1][not(pmd-java:nodeIs('MethodCall'))][pmd-java:nodeIs('Expression') and (pmd-java:typeIs('java.util.concurrent.Executors')
|
||||
or pmd-java:typeIs('java.util.concurrent.ExecutorService'))]]
|
||||
|
||||
Reference in new issue
Block a user