CodeNarc-0.23/ 0000775 0001750 0001750 00000000000 12623571301 012446 5 ustar ebourg ebourg CodeNarc-0.23/docs/ 0000775 0001750 0001750 00000000000 12623571301 013376 5 ustar ebourg ebourg CodeNarc-0.23/docs/codenarc-rules-serialization.html 0000644 0001750 0001750 00000037445 12471222417 022062 0 ustar ebourg ebourg
Since CodeNarc 0.19
Checks for enums that define writeObject() or writeReplace() methods, or declare serialPersistentFields or serialVersionUID fields, all of which are ignored for enums.
From the javadoc for ObjectOutputStream:
The process by which enum constants are serialized cannot be customized; any class-specific writeObject and writeReplace methods defined by enum types are ignored during serialization. Similarly, any serialPersistentFields or serialVersionUID field declarations are also ignored--all enum types have a fixed serialVersionUID of 0L.
Example of violations:
enum MyEnum { ONE, TWO, THREE private static final long serialVersionUID = 1234567L // violation private static final ObjectStreamField[] serialPersistentFields = // violation { new ObjectStreamField("name", String.class) } String name; Object writeReplace() throws ObjectStreamException { .. } // violation private void writeObject(ObjectOutputStream stream) { .. } // violation }
New in CodeNarc 0.14
To use a Serializable object's serialPersistentFields correctly, it must be declared private, static, and final.
The Java Object Serialization Specification allows developers to manually define Serializable fields for a class by specifying them in the serialPersistentFields array. This feature will only work if serialPersistentFields is declared as private, static, and final. Also, specific to Groovy, the field must be of type ObjectStreamField[], and cannot be Object.
References:
Example of violations:
class MyClass implements Serializable { public ObjectStreamField[] serialPersistentFields = [ new ObjectStreamField("myField", List.class) ] as ObjectStreamField[] } // the JVM sees the field type as Object, which won't work class MyOtherClass implements Serializable { private static final serialPersistentFields = [ new ObjectStreamField("myField", List.class) ] as ObjectStreamField[] }
Since CodeNarc 0.11
A serialVersionUID is normally intended to be used with Serialization. It needs to be of type long, static, and final. Also, it should be declared private. Providing no modifier creates a Property and Groovy generates a getter, which is probably not intended.
From API javadoc for java.io.Serializable: It is also strongly advised that explicit serialVersionUID declarations use the private modifier where possible, since such declarations apply only to the immediately declaring class--serialVersionUID fields are not useful as inherited members.
New in CodeNarc 0.13
Classes that implement Serializable should define a serialVersionUID. Deserialization uses this number to ensure that a loaded class corresponds exactly to a serialized object. If you don't define serialVersionUID, the system will make one by hashing most of your class's features. Then if you change anything, the UID will change and Java won't let you reload old data.
An example of a missing serialVersionUID:
class MyClass imlements Serializable { // missing serialVersionUID }
Since CodeNarc 0.12
Checks for catching a ArrayIndexOutOfBoundsException. Catching ArrayIndexOutOfBoundsException should be avoided in the first place by checking the array size before accessing an array element. Catching the exception may mask underlying errors.
Checks for catching a Error. In most cases that is much too broad, and is also dangerous because it can catch exceptions such as ThreadDeath and OutOfMemoryError.
Checks for catching a Exception. In most cases that is too broad or general. It should usually be restricted to framework or infrastructure code, rather than application code.
Since CodeNarc 0.11
Dubious catching of IllegalMonitorStateException. IllegalMonitorStateException is generally only thrown in case of a design flaw in your code (calling wait or notify on an object you do not hold a lock on).
Since CodeNarc 0.12
Checks for catching a IndexOutOfBoundsException. Catching IndexOutOfBoundsException should be avoided in the first place by checking for a valid index before accessing an indexed element. Catching the exception may mask underlying errors.
Checks for catching a NullPointerException. Catching NullPointerException is never appropriate. It should be avoided in the first place with proper null checking, and it can mask underlying errors.
Checks for catching a RuntimeException. In most cases that is too broad or general. It should usually be restricted to framework or infrastructure code, rather than application code.
Checks for catching a Throwable. In most cases that is much too broad, and is also dangerous because it can catch exceptions such as ThreadDeath and OutOfMemoryError.
Since CodeNarc 0.11
This class is not derived from another exception, but ends with 'Exception'. This will be confusing to users of this class.
New in CodeNarc 0.13
Errors are system exceptions. Do not extend them.
Examples:
class MyError extends Error { } // violation class MyError extends java.lang.Error { } // violation class MyException extends Exception { } // OK
Since CodeNarc 0.21
Checks for classes that extend Throwable. Custom exception classes should subclass Exception or one of its descendants.
Example of violations:
class MyException extends Throwable { } // violation
Since CodeNarc 0.18
Checks for an exception constructor call without a throw as the last statement within a catch block. This rule treats any constructor call for a class named xxxException as an exception constructor call.
Example of violations:
void execute() { try { } catch(Exception e) { new Exception(e) } // violation } try { doStuff() } catch(DaoException e) { log.warning("Ooops", e) new ServiceException(e) // violation } catch(Exception e) { new SystemException(e) // violation } try { doStuff() } catch(Exception e) { throw new DaoException(e) } // ok
Since CodeNarc 0.12
A common Groovy mistake when throwing exceptions is to forget the new keyword. For instance, throw RuntimeException() instead of throw new RuntimeException(). If the error path is not unit tested then the production system will throw a Method Missing exception and hide the root cause. This rule finds constructs like throw RuntimeException() that look like a new keyword was meant to be used but forgotten.
The following code will all cause violations:
throw RuntimeException() // ends in Exceptions, first letter Capitalized throw RuntimeFailure() // ends in Failure, first letter Capitalized throw RuntimeFault(foo) // ends in Fault, first letter Capitalized
The following code will not cause any exceptions:
throw new RuntimeException() throw runtimeFailure() // first letter lowercase, assumed to be method call
Since CodeNarc 0.11
Returning null from a catch block often masks errors and requires the client to handle error codes. In some coding styles this is discouraged. This rule ignores methods with void return type.
New in CodeNarc 0.14 Detects code that catches java.lang.ThreadDeath without re-throwing it.
Example of violations:
try { def a = 0 } catch (ThreadDeath td) { td.printStackTrace() }
Checks for throwing an instance of java.lang.Error. This is not appropriate within normal application code. Throw an instance of a more specific exception subclass instead.
Checks for throwing an instance of java.lang.Exception. Throw an instance of a more specific exception subclass instead.
Checks for throwing an instance of java.lang.NullPointerException. Applications should never throw a NullPointerException.
Checks for throwing an instance of java.lang.RuntimeException. Throw an instance of a more specific exception subclass instead.
Checks for throwing an instance of java.lang.Throwable. Throw an instance of a more specific exception subclass instead.
The org.codenarc.report.XmlReportWriter class (type="xml") produces an XML report of the CodeNarc results.
Note: This XML format is still being refined and is subject to change. Contact me if you have specific requirements or suggestions.
See a Sample XML Report. Also see the mrhaki blog post about creating custom CodeNarc HTML reports using XSLT.
The option element is a child of the report element and defines a report-specific option for a report.
org.codenarc.report.XmlReportWriter supports the following options:
Attribute | Description | Required |
outputFile | The path and filename for the output report file. | No |
title | The title for the output report. | No |
writeToStandardOut | Set to "true" or true to write out the report to stdout (System.out) instead of writing to a file. | No |
Here is an example Ant XML build file illustrating configuration of org.codenarc.report.XmlReportWriter. Note that the report type is specified as "xml".
<taskdef name="codenarc" classname="org.codenarc.ant.CodeNarcTask"/> <target name="runCodeNarc"> <codenarc ruleSetFiles="rulesets/basic.xml,rulesets/exceptions.xml,rulesets/imports.xml" maxPriority1Violations="0"> <report type="xml"> <option name="outputFile" value="reports/CodeNarcXmlReport.xml" /> <option name="title" value="My Sample Code" /> </report> <fileset dir="src"> <include name="**/*.groovy"/> </fileset> </codenarc> </target>
The org.codenarc.report.HtmlReportWriter class (type="html") produces an HTML report containing a table with summary results by package and a separate section for each package containing violations, and then a table of the rules applied, along with their descriptions.
See a Sample Report.
Alternatively, see the mrhaki blog post about creating custom CodeNarc HTML reports using XSLT.
The option element is a child of the report element and defines a report-specific option for a report.
org.codenarc.report.HtmlReportWriter supports the following options:
Attribute | Description | Required |
maxPriority | The maximum priority level for violations in the report. For instance, setting maxPriority to 2 will result in the report containing only priority 1 and 2 violations (and omitting violations with priority 3). | 3 |
outputFile | The path and filename for the output report file. | No |
title | The title for the output report. | No |
writeToStandardOut | Set to true to write out the report to stdout (System.out) instead of writing to a file. | No |
includeSummaryByPackage | Set to false to exclude the violation summary for each package within the "Summary" section of the report. It defaults to true. |
Here is an example Ant XML build file illustrating configuration of org.codenarc.report.HtmlReportWriter. Note that the report type is specified as "html".
<taskdef name="codenarc" classname="org.codenarc.ant.CodeNarcTask"/> <target name="runCodeNarc"> <codenarc ruleSetFiles="rulesets/basic.xml,rulesets/exceptions.xml,rulesets/imports.xml" maxPriority1Violations="0"> <report type="html"> <option name="outputFile" value="reports/CodeNarcAntReport.html" /> <option name="title" value="My Sample Code" /> </report> <fileset dir="src"> <include name="**/*.groovy"/> </fileset> </codenarc> </target>
New in CodeNarc 0.13
Finds empty string literals which are being added. This is an inefficient way to convert any type to a String.
Examples:
// do not add empty strings to things def a = '' + 123 def b = method('' + property) // these examples are OK and do not trigger violations def c = 456.toString() def d = property?.toString() ?: ""
New in CodeNarc 0.13
Violations occur when method calls to append(Object) are chained together with literals as parameters. The chained calls can be joined into one invocation.
Example of violations:
writer.append('foo').append('bar') // strings can be joined writer.append('foo').append(5) // string and number can be joined writer.append('Hello').append("$World") // GString can be joined
Example of passing code:
// usage not chained invocation writer.append('Hello') writer.append('World') writer.append(null).append(5) // nulls cannot be joined writer.append().append('Hello') // no arg append is unknown writer.append('a', 'b').append('Hello') // two arg append is unknown
New in CodeNarc 0.13
Catches concatenation of two string literals on the same line. These can safely by joined. In Java, the Java compiler will join two String literals together and place them in the Constant Pool. However, Groovy will not because the plus() method may override the + operator.
Examples:
// Violations def a = 'Hello' + 'World' // should be 'HelloWorld' def b = "$Hello" + 'World' // should be "${Hello}World" def c = 'Hello' + "$World" // should be "Hello${World}" def d = 'Hello' + 5 // should be 'Hello5' def e = 'Hello' + ''' world // should be joined ''' def f = '''Hello ''' + 'world' // should be joined // Not Violations def g = 'Hello' + // OK because of line break 'World' def h = 'Hello' + null // OK because not a string def i = 'Hello' + method() // OK because not a string def j = 'Hello' - "$World" // OK because not +
Since CodeNarc 0.12
It is unnecessary to instantiate BigDecimal objects. Instead just use the decimal literal or the 'G' identifier to force the type, such as 123.45 or 123.45G.
This rule does not produce violations when the parameter evaluates to an integer/long, e.g. new BigDecimal(42), new BigDecimal(42L) or new BigDecimal("42"), because using the "G" suffix on an integer value produces a BigInteger, rather than a BigDecimal, e.g. 45G. So that means there is no way to produce a BigDecimal with exactly that value using a literal.
This rule also does not produce violations when the parameter is a double, e.g. new BigDecimal(12.3). That scenario is covered by the BigDecimalInstantiation rule, because that produces an unpredictable (double) value (and so it is unsafe, rather than unnecessary).
Since CodeNarc 0.12
It is unnecessary to instantiate BigInteger objects. Instead just use the literal with the 'G' identifier to force the type, such as 8G or 42G.
Checks for unnecessary boolean expressions, including ANDing (&&) or ORing (||) with true, false, null, or a Map/List/String/Number literal.
This rule also checks for negation (!) of true, false, null, or a Map/List/String/Number literal.
Examples of violations include:
result = value && true // AND or OR with boolean constants if (false || value) { .. } return value && Boolean.FALSE result = null && value // AND or OR with null result = value && "abc" // AND or OR with String literal result = value && 123 // AND or OR with Number literal result = 678.123 || true result = value && [x, y] // AND or OR with List literal result = [a:123] && value // AND or OR with Map literal result = !true // Negation of boolean constants result = !false result = !Boolean.TRUE result = !null // Negation of null result = !"abc" // Negation of String literal result = ![a:123] // Negation of Map literal result = ![a,b] // Negation of List literal
Since CodeNarc 0.12 (formerly BooleanInstantiation Rule in the "basic" rule set)
Checks for direct call to a Boolean constructor. Use Boolean.valueOf() or the Boolean.TRUE and Boolean.FALSE constants instead of calling the Boolean() constructor directly.
Also checks for Boolean.valueOf(true) or Boolean.valueOf(false). Use the Boolean.TRUE or Boolean.FALSE constants instead.
Here is an example of code that produces a violation:
def b1 = new Boolean(true) // violation def b2 = new java.lang.Boolean(false) // violation def b3 = Boolean.valueOf(true) // violation def b4 = Boolean.valueOf(false) // violation
Since CodeNarc 0.12
This rule checks for excessively verbose methods of accessing the last element of an array or list. For instance, it is possible to access the last element of an array by performing array[array.length - 1], in Groovy it is simpler to either call array.last() or array[-1]. The same is true for lists. This violation is triggered whenever a get, getAt, or array-style access is used with an object size check.
Code like this all cause violations.
def x = [0, 1, 2] def a = x.get(x.size() -1) def b = x.get(x.length -1) def c = x.getAt(x.size() -1) def d = x.getAt(x.length -1) def f = x[(x.size() -1] def d = x[(x.length -1]
All of this code is fine though:
def x = [0, 1, 2] def a = x.last() def b = x[-1] def c = x.getAt(-1) def d = x.get(z.size() -1) // different objects def e = x.get(z.length -1) // different objects def f = x.getAt(z.size() -1) // different objects
New in CodeNarc 0.13
Calling String.substring(0) always returns the original string. This code is meaningless.
Examples:
string.substring(0) // violation method().substring(0) // violation prop.substring(1) // OK, not constant 0 prop.substring(0, 1) // OK, end is specified
Since CodeNarc 0.21
Checks for unnecessary cast operations.
Example of violations:
int count = (int)123 // violation def longValue = (long)123456L // violation def bigDecimal = (BigDecimal)1234.56 // violation String name = (String) "Joe" // violation def list = (List)[1, 2, 3] // violation def map = (Map)[a:1] // violation
Since CodeNarc 0.12
Violations are triggered when a catch block does nothing but throw the original exception. In this scenario there is usually no need for a catch block, just let the exception be thrown from the original code. This condition frequently occurs when catching an exception for debugging purposes but then forgetting to take the catch statement out.
Since CodeNarc 0.12
Some method calls to Object.collect(Closure) can be replaced with the spread operator. For instance, list.collect it.multiply(2) can be replaced by list*.multiply(2).
Examples of violations include:
assert [1, 2, 3].collect { it.multiply(2) } assert [1, 2, 3].collect { x -> x.multiply(2) } ["1", "2", "3"].collect { it.bytes }
The following code does not produce violations:
[1, 2, 3].collect { it * it } // OK, closure parameter is referenced twice [1, 2, 3].mapMethod { it.multiply(5) } // OK, method call is not collect [1, 2, 3].collect(5) // OK, collect parameter is not a closure // OK, the closure is not a simple one line statement [1, 2, 3].collect { println it; it.multiply(5) } // OK, closure has too many arguments [1, 2, 3].collect { a, b -> a.multiply(b) } // OK, closure statement references parameter multiple times [1, 2, 3].collect { it.multiply(it) } // OK, it is referenced several times in the closure [1, 2, 3].collect { it.multiply(2).multiply(it) } ["1", "2", "3"].collect { it.bytes.foo(it) } // OK, chained methods are too complex to analyze at this point [1, 2, 3].collect { it.multiply(2).multiply(4) } // in general the above examples can be rewritten like this: [1, 2, 3]*.multiply(2) ["1", "2", "3"]*.bytes
Since CodeNarc 0.11
Checks for useless calls to collections. For any collection c, calling c.containsAll(c) should always be true, and c.retainAll(c) should have no effect.
Since CodeNarc 0.11
This rule detects when a constructor is not necessary; i.e., when there's only one constructor, it's public, has an empty body, and takes no arguments, or else contains only a single call to super().
Example of violations:
class MyClass { public MyClass() { // violation; constructor is not necessary } } class MyClass2 extends OtherClass { MyClass2() { // violation; constructor is not necessary super() } }
New in CodeNarc 0.16
If a field has a visibility modifier or a type declaration, then the def keyword is unneeded. For instance, 'static def constraints = ' is redundant and can be simplified to 'static constraints = .
Example of violations:
class MyClass { // def is redundant static def constraints = { } // def and private is redundant def private field1 = { } // def and protected is redundant def protected field2 = { } // def and public is redundant def public field3 = { } // def and static is redundant def static field4 = { } // def and type is redundant def Object field5 = { } }
New in CodeNarc 0.13
If a method has a visibility modifier or a type declaration, then the def keyword is unneeded. For instance 'def private method() ' is redundant and can be simplified to 'private method() '.
Examples of violations:
// def and private is redundant def private method1() { return 4 } // def and protected is redundant def protected method2() { return 4 } // def and public is redundant def public method3() { return 4 } // def and static is redundant def static method4() { return 4 } // def and type is redundant def Object method5() { return 4 } class MyClass { def MyClass() {} // def is redundant }
New in CodeNarc 0.15
If a variable has a visibility modifier or a type declaration, then the def keyword is unneeded. For instance 'def private n = 2' is redundant and can be simplified to 'private n = 2'.
Examples of violations:
// def and private is redundant def private string1 = 'example' // def and protected is redundant def protected string2 = 'example' // def and public is redundant def public string3 = 'example' // def and static is redundant def static string4 = 'example' // def and final is redundant def final string5 = 'example' // def and a type is redundant def String string6 = 'example'
New in CodeNarc 0.15
To make a reference to a class, it is unnecessary to specify the '.class' identifier. For instance String.class can be shortened to String.
Example of violations:
// The '.class' identifier is unnecessary, violation occurs def x = String.class // Ok, unnecessary '.class' identifier has been excluded def x = String
Since CodeNarc 0.12
It is unnecessary to instantiate Double objects. Instead just use the double literal with 'D' identifier to force the type, such as 123.45d or 0.42d.
New in CodeNarc 0.14
When an if statement block ends with a return statement, then the else is unnecessary. The logic in the else branch can be run without being in a new scope.
Example of violations:
if(value){ println 'Executing if logic...' return true } else { println 'Executing else logic...' } // can be replaced by: if(value){ println 'Executing if logic...' return true } println 'Executing else logic...'
New in CodeNarc 0.14
A private method is marked final. Private methods cannot be overridden, so marking it final is unnecessary.
Example of violations:
private final method() {}
Since CodeNarc 0.12
It is unnecessary to instantiate Float objects. Instead just use the float literal with the 'F' identifier to force the type, such as 123.45F or 0.42f.
Since CodeNarc 0.12
Checks for explicit calls to getter/accessor methods which can, for the most part, be replaced by property access. A getter is defined as a method call that matches get[A-Z] but not getClass() or get[A-Z][A-Z] such as getURL(). Getters do not take method arguments.
These bits of code produce violations:
x.getProperty() x.getFirst() x.getFirstName() x.getA()
These bits of code do not:
x.property x.first x.firstName x.a x.getURL() x.getClass() x.getProperty('key')
New in CodeNarc 0.13
String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
Example of violations:
def a = "I am a string" // violation // violation def b = """ I am a string """ def c = "I am a ' string" // OK def d = """I am a ' string""" // OK def e = """I am a ' string""" // OK def f = "I am a \$ string" // OK // OK def g = """ I am a \$ string """ // OK def h = """ I am a $string """ def i = 'i am a string' def j = '''i am a string '''
Checks for unnecessary if statements. The entire if statement, or at least the if or else block, are considered unnecessary for the four scenarios described below.
(1) When the if and else blocks contain only an explicit return of true and false constants. These cases can be replaced by a simple return statement. Examples of violations include:
if (someExpression) // can be replaced by: return someExpression return true else return false if (someExpression) { // can be replaced by: return !someExpression return false } else { return true } if (someExpression) { // can be replaced by: return someExpression return Boolean.TRUE } else { return Boolean.FALSE }
(2) When the if statement is the last statement in a block and the if and else blocks are only true and false expressions. This is an implicit return of true/false. For example, the if statement in the following code can be replaced by someExpression or someExpression as boolean:
def myMethod() { doSomething() if (someExpression) true else false }
(3) When the second-to-last statement in a block is an if statement with no else, where the block contains a single return statement, and the last statement in the block is a return statement, and one return statement returns a true expression and the other returns a false expression. This check is disabled by setting checkLastStatementImplicitElse to false. For example, the if statement in the following code can be replaced by return expression1:
def myMethod() { doSomething() if (expression1) { return true } return false }
(4) When either the if block or else block of an if statement that is not the last statement in a block contain only a single constant or literal expression. For example, the if statement in the following code has no effect and can be removed:
def myMethod() { if (someExpression) { 123 } doSomething() }
New in CodeNarc 0.15
This rule finds instanceof checks that cannot possibly evaluate to true. For instance, checking that (!variable instanceof String) will never be true because the result of a not expression is always a boolean.
Example of violations:
if (!variable instanceof String) { ... } // always false def x = !variable instanceof String // always false if (!variable instanceof Boolean) { ... } // always true def x = !variable instanceof Boolean // always true // this code is OK if (!(variable instanceof String)) { ... }
Since in CodeNarc 0.12
Avoid instantiating an object just to call getClass() on it; use the .class public member instead.
public class Foo { // Replace this Class c = new String().getClass(); // with this: Class c = String.class; }
Since CodeNarc 0.12
It is unnecessary to instantiate Integer objects. Instead just use the literal with the 'I' identifier to force the type, such as 8I or 42i.
Since CodeNarc 0.12
It is unnecessary to instantiate Long objects. Instead just use the literal with the 'L' identifier to force the type, such as 8L or 42L.
New in CodeNarc 0.13
Any expression mod 1 (exp % 1) is guaranteed to always return zero. This code is probably an error, and should be either (exp & 1) or (exp % 2).
Examples:
if (exp % 1) {} // violation if (method() % 1) {} // violation if (exp & 1) {} // ok if (exp % 2) {} // ok
Since CodeNarc 0.12
Violations are triggered when an excessive set of consecutive statements all reference the same variable. This can be made more readable by using a with or identity block. By default, 5 references are allowed. You can override this property using the maxReferencesAllowed> property on the rule.
These two bits of code produce violations:
def p1 = new Person() p1.firstName = 'Hamlet' p1.lastName = "D'Arcy" p1.employer = 'Canoo' p1.street = 'Kirschgaraten 5' p1.city = 'Basel' p1.zipCode = '4051' def p2 = new Person() p2.setFirstName('Hamlet') p2.setLastName("D'Arcy") p2.setEmployer('Canoo') p2.setStreet('Kirschgaraten 5') p2.setCity('Basel') p2.setZipCode('4051')
However, these two bits of code do not because they use either a with or identity block.
def p1 = new Person().with { firstName = 'Hamlet' lastName = "D'Arcy" employer = 'Canoo' street = 'Kirschgaraten 5' city = 'Basel' zipCode = '4051' } def p2 = new Person().identity { firstName = 'Hamlet' lastName = "D'Arcy" employer = 'Canoo' street = 'Kirschgaraten 5' city = 'Basel' zipCode = '4051' }
Since CodeNarc 0.12
Groovy contains the safe dereference operator. It can be used in boolean conditional statements to safely replace explicit x == null tests. Also, testing the 'this' or 'super' reference for null equality is pointless and can be removed.
Examples of violations:
if (obj != null && obj.method()) { } if (obj != null && obj.prop) { } // this is pointless and won't avoid NullPointerException if (obj.method() && obj != null ) { } if (this == null) { } if (null == this) { } if (this != null) { } if (null != this) { } if (super == null) { } if (null == super) { } if (super != null) { } if (null != super) { }
Examples of acceptable code:
// null check it OK if (obj != null) { } // null safe dereference in if is OK if (obj?.method()) { } // null safe dereference in ternary is OK (obj?.prop && obj?.prop2) ? x : y // obj is reused in a parameter list, so OK if (obj != null && obj.method() && isValid(obj)) { } // rule is not so complex yet... (obj != null && obj.prop && obj.method()) ? x : y
Since CodeNarc 0.12
There is no need to check for null before an instanceof; the instanceof keyword returns false when given a null argument.
Example:
if (x != null && x instanceof MyClass) { // should drop the "x != null" check } if (x instanceof MyClass && x != null) { // should drop the "x != null" check } // should drop the "x != null" check (x != null && x instanceof MyClass) ? foo : bar if (x != null && x instanceof MyClass && x.isValid()) { // this is OK and causes no violation because the x.isValid() requires a non null reference }
Since CodeNarc 0.11
Checks for an overriding method that merely calls the same method defined in a superclass. Remove it.
Since CodeNarc 0.14
Checks for explicit package reference for classes that Groovy imports by default, such as java.lang.String, java.util.Map and groovy.lang.Closure, as well as classes that were explicitly imported.
You do not need to specify the package for any classes from java.lang, java.util, java.io, java.net, groovy.lang and groovy.util, as well as the classes java.math.BigDecimal and java.math.BigInteger.
Examples of violations include:
// Field types class MyClass { java.math.BigDecimal amount = 42.10 // violation } // Within expressions if (value.class == java.math.BigInteger) { } // violation println "isClosure=${v instanceof groovy.lang.Closure}" // violation def p = java.lang.Runtime.availableProcessors() // violation // Constructor calls def url = new java.net.URL('http://abc@example.com') // violation // Variable types void doSomething() { java.math.BigInteger maxValue = 0 // violation java.net.URI uri // violation } // Method return types java.io.Reader getReader() { } // violation groovy.util.AntBuilder getAntBuilder() { } // violation // Method parameter types void writeCount(java.io.Writer writer, int count) { } // violation void init(String name, groovy.lang.Binding binding) { } // violation // Closure parameter types def writeCount = { java.io.Writer writer, int count -> } // violation // Extends and implements class MyHashMap extends java.util.HashMap { } // violation class MyList implements java.util.List { } // violation // Explicitly imported classes import javax.servlet.http.Cookie import javax.sql.DataSource class MyClass { void doStuff(javax.servlet.http.Cookie cookie) { // violation def dataSource = [:] as javax.sql.DataSource // violation } }
Known limitations:
New in CodeNarc 0.14
If a method is called and the only parameter to that method is an inline closure then the parentheses of the method call can be omitted.
Example of violations:
[1,2,3].each() { println it }
New in CodeNarc 0.13
The 'public' modifier is not required on methods, constructors or classes.
Example of violations:
// violation on class public class MyClass { // violation on constructor public MyClass() {} // violation on method public void myMethod() {} }
Since CodeNarc 0.11
In Groovy, the return keyword is often optional. If a statement is the last line in a method or closure then you do not need to have the return keyword.
Since CodeNarc 0.22
Check for the safe navigation operator (?.) applied to constants and literals, or this or super, or constructor calls, all of which can never be null.
Example of violations:
def myMethod() { "abc"?.bytes // violation [1,2]?.getSize() // violation [abc:123]?.name // violation [:]?.toString() // violation 123?.class // violation 123.45?.getClass() // violation Boolean.FALSE?.class // violation Boolean.TRUE?.class // violation this?.class // violation super?.getClass() // violation new Long(100)?.class // violation }
New in CodeNarc 0.13
Method contains a pointless self-assignment to a variable or property. Either the code is pointless or the equals()/get() method has been overridden to have a side effect, which is a terrible way to code getters and violates the contract of equals().
Examples:
x = x // violation def method(y) { y = y // violation } a.b.c = a.b.c // violation x = y // acceptable a.b = a.zz // acceptable a.b = a().b // acceptable
New in CodeNarc 0.13
Semicolons as line terminators are not required in Groovy: remove them. Do not use a semicolon as a replacement for empty braces on for and while loops; this is a confusing practice.
The rule contains a String property called 'excludePattern'. Any source code line matching this pattern will not trigger a violation. The default value is '\s?\*.*|/\*.*|.*//.*|.*\*/.*' This is to filter out comments. Any source line that even looks like it is a comment is ignored.
\s?*.* == whitespace plus star character plus anything /*.* == any line that contains the /* sequence .*//.* == any line that contains the // sequence .**/.* == any line that contains the */ sequence
Example of violations:
package my.company.server; // violation import java.lang.String; // violation println(value) ; // violation for (def x : list); // violation // this code is OK println(value); println (otherValue)
Since CodeNarc 0.15
This rule finds usages of String.substring(int) and String.substring(int, int) that can be replaced by use of the subscript operator. For instance, var.substring(5) can be replaced with var[5..-1].
Note that the String.substring(beginIndex,endIndex) method specifies a range of beginIndex..endIndex-1, while Groovy's String subscript specifies an inclusive range. So, "123456".substring(1, 5) is equivalent to "123456"[1..4].
Example of violations:
myVar.substring(5) // can use myVar[5..-1] instead myVar.substring(1, 5) // can use myVar[1..4] instead
Since CodeNarc 0.12 (formerly StringInstantiation Rule in the "basic" rule set)
Checks for direct call to the String constructor that accepts a String literal. In almost all cases, this is unnecessary. Use a String literal (e.g., "...") instead of calling the corresponding String constructor (new String("..")) directly.
Here is an example of code that produces a violation:
def s = new String('abc')
Checks for ternary expressions where the conditional expression always evaluates to a boolean and the true and false expressions are merely returning true and false constants. These cases can be replaced by a simple boolean expression. Examples of violations include:
x==99 ? true : false // can be replaced by: x==99 x && y ? true : false // can be replaced by: x && y x||y ? false : true // can be replaced by: !(x||y) x >= 1 ? true: false // can be replaced by: x >= 1 x < 99 ? Boolean.TRUE : Boolean.FALSE // can be replaced by: x < 99 !x ? true : false // can be replaced by: !x
The rule also checks for ternary expressions where the true and false expressions are the same constant or variable. Examples include:
x ? '123' : '123' // can be replaced by: '123' x ? null : null // can be replaced by: null x ? 23 : 23 // can be replaced by: 23 x ? MAX_VALUE : MAX_VALUE // can be replaced by: MAX_VALUE ready ? minValue : minValue // can be replaced by: minValue
New in CodeNarc 0.13
The field is marked as transient, but the class isn't Serializable, so marking it as transient has no effect. This may be leftover marking from a previous version of the code in which the class was transient, or it may indicate a misunderstanding of how serialization works.
Some Java frameworks change the semantics of the transient keyword. For instance, when using Terracotta the transient keyword may have slightly different semantics. You may need to turn this rule off depending on which Java frameworks are in use.
Examples:
class MyClass { // class not serializable, violation occurs transient String property } class MySerializableClass implements Serializable { // OK, class is serializable transient String property }
Since CodeNarc 0.21
Checks for unnecessary calls to toString(). This includes:
Property | Description | Default Value |
checkAssignments | If true, then check for calls to toString() for the value assigned to a String field or variable. | true |
Example of violations:
def name = "Joe".toString() // violation - string literal def groupId = ((String)row.get('GroupID')).toString() // violation - string expression class MyClass { String name = nameNode.toString() // violation - field String code = account.getCode().toString() // violation - field void run() { String name = nameNode.toString() // violation - variable String id = account.id.toString() // violation - variable } }
Since CodeNarc 0.15
Checks that Grails domain classes redefine equals().
Ignores classes annotated with @EqualsAndHashCode or @Canonical.
This rule sets the default value of applyToFilesMatching to only match files under the 'grails-app/domain' folder. You can override this with a different regular expression value if appropriate.
Since CodeNarc 0.15
Checks that Grails domain classes redefine toString().
Ignores classes annotated with @ToString or @Canonical.
This rule sets the default value of applyToFilesMatching to only match files under the 'grails-app/domain' folder. You can override this with a different regular expression value if appropriate.
Since CodeNarc 0.19
Forbids usage of SQL reserved keywords as class or field names in Grails domain classes. Naming a domain class (or its field) with such a keyword causes SQL schema creation errors and/or redundant table/column name mappings.
Note: due to limited type information available during CodeNarc's operation, this rule will report fields of type java.io.Serializable, but not of its implementations. Please specify any implementations used as domain properties in additionalHibernateBasicTypes.
Property | Description | Default Value |
additionalHibernateBasicTypes | Comma-separated list of simple class names of additional classes that Hibernate maps as basic types (creates a column for a field of such class). Add your custom basic types here. | '' |
additionalReservedSqlKeywords | Comma-separated list of additional reserved SQL keywords (just in case the 337 keywords of nowadays SQL-* standards weren't enough). | '' |
Since CodeNarc 0.19
Checks that Grails Domain classes do not have Service classes injected.
This rule sets the default value of applyToFilesMatching to only match files under the 'grails-app/domain' folder. You can override this with a different regular expression value if appropriate.
Since CodeNarc 0.18
Check for duplicate name in a Grails domain class constraints. Duplicate names/entries are legal, but can be confusing and error-prone.
NOTE: This rule does not check that the values of the entries are duplicated, only that there are two entries with the same name.
Example of violations:
class Person { String firstName String lastName static constraints = { firstName nullable:true lastName nullable:true, maxSize:30 firstName nullable:false // violation } }
Since CodeNarc 0.18
Check for duplicate name in a Grails domain class mapping. Duplicate names/entries are legal, but can be confusing and error-prone.
NOTE: This rule does not check that the values of the entries are duplicated, only that there are two entries with the same name.
Example of violations:
class Person { String firstName String lastName static mapping = { table 'people' firstName column: 'First_Name' lastName column: 'Last_Name' firstName column: 'First_Name' // violation table 'people2' // violation } }
Since CodeNarc 0.21
Untrusted input should not be allowed to set arbitrary object fields without restriction.
Example of violations:
// Person would be a grails domain object def person = new Person(params) person.save() // or using .properties def person = Person.get(1) person.properties = params person.save()
NOTE: This rule has been disabled by default (i.e., by setting its enabled property to false). Given that Grails 2.x allows and encourages controller actions to be defined as methods instead of closures, this rule makes no sense for Grails 2.x projects. |
Rule that checks for public methods on Grails controller classes. Static methods are ignored.
Grails controller actions and interceptors are defined as properties on the controller class. Public methods on a controller class are unnecessary. They break encapsulation and can be confusing.
Property | Description | Default Value |
ignoreMethodNames | Specifies one or more (comma-separated) method names that should be ignored (i.e., that should not cause a rule violation). The names may optionally contain wildcards (*,?). | null |
This rule sets the default value of applyToFilesMatching to only match files under the 'grails-app/controllers' folder. You can override this with a different regular expression value if appropriate.
This rule also sets the default value of applyToClassNames to only match class names ending in 'Controller'. You can override this with a different class name pattern (String with wildcards) if appropriate.
Rule that checks for references to the servletContext object from within Grails controller and taglib classes.
This rule is intended as a "governance" rule to enable monitoring and controlling access to the servletContext from within application source code. Storing objects in the servletContext may inhibit scalability and/or performance and should be carefully considered. Furthermore, access to the servletContext is not synchronized, so reading/writing objects from the servletConext must be manually synchronized, as described in The Definitive Guide to Grails (2nd edition).
Note that this rule does not check for direct access to the servletContext from within GSP (Groovy Server Pages) files.
Enabling this rule may make most sense in a team environment where team members exhibit a broad range of skill and experience levels. Appropriate servletContext access can be configured as exceptions to this rule by configuring either the doNotApplyToFilenames or doNotApplyToFilesMatching property of the rule. And, as always, it is easy to just turn off the rule if it does not make sense it your environment.
This rule sets the default value of applyToFilesMatching to only match files under the 'grails-app/controllers' or 'grails-app/taglib' folders. You can override this with a different regular expression value if appropriate.
NOTE: This rule has been DEPRECATED, and disabled by default (i.e., by setting its enabled property to false). Please email the CodeNarc User Mailing List if you have an opinion for/against deprecation and eventual removal of this rule. |
Rule that checks for references to the session object from within Grails controller and taglib classes.
This rule is intended as a "governance" rule to enable monitoring and controlling access to the session from within application source code. Storing objects in the session may inhibit scalability and/or performance and should be carefully considered.
Note that this rule does not check for direct access to the session from within GSP (Groovy Server Pages) files.
Enabling this rule may make most sense in a team environment where team members exhibit a broad range of skill and experience levels. Appropriate session access can be configured as exceptions to this rule by configuring either the doNotApplyToFilenames or doNotApplyToFilesMatching property of the rule. And, as always, it is easy to just turn off the rule if it does not make sense it your environment.
This rule sets the default value of applyToFilesMatching to only match files under the 'grails-app/controllers' or 'grails-app/taglib' folders. You can override this with a different regular expression value if appropriate.
Checks for non-final fields on a Grails service class. Grails service classes are singletons by default, and so they should be reentrant. In most cases, this implies (or at least encourages) that they should be stateless.
This rule ignores (i.e., does not cause violations for) the following:
The ignoreFieldNames property of this rule is preconfigured to ignore the standard Grails service configuration field names ('scope', 'transactional') and the standard injected bean names ('dataSource', 'sessionFactory'), as well as all other field names ending with 'Service'.
Property | Description | Default Value |
ignoreFieldNames | Specifies one or more (comma-separated) field names that should be ignored (i.e., that should not cause a rule violation). The names may optionally contain wildcards (*,?). | 'dataSource,scope,sessionFactory, transactional,*Service' |
addToIgnoreFieldNames | Specifies one or more (comma-separated) field names to be added to the ignoreFieldNames property value. This is a special write-only property, and each call to setAddIgnoreFieldNames() adds to (rather than overwrites) the list of field names to be ignored. | null |
ignoreFieldTypes | Specifies one or more (comma-separated) field types that should be ignored (i.e., that should not cause a rule violation). The names may optionally contain wildcards (*,?). | null |
This rule sets the default value of applyToFilesMatching to only match files under the 'grails-app/services' folder. You can override this with a different regular expression value if appropriate.
This rule also sets the default value of applyToClassNames to only match class names ending in 'Service'. You can override this with a different class name pattern (String with wildcards) if appropriate.
Suggestions or preferences? Create a Feature Request.
These are rules covering Groovy idiomatic usage, and Groovy-specific bad practices.
New in CodeNarc 0.15
The Collections.sort() method mutates the list and returns the list as a value. If you are assigning the result of sort() to a variable, then you probably don't realize that you're also modifying the original list as well. This is frequently the cause of subtle bugs. This violation is triggered when a sort() method call appears as the right hand side of an assignment, or when it appears as the first method call in a series of chained method calls.
Example of violations:
def a = myList.sort() def b = myList.sort() { it } def c = myList.sort().findAll { x < 1 }
New in CodeNarc 0.15
The Collections.unique() method mutates the list and returns the list as a value. If you are assigning the result of unique() to a variable, then you probably don't realize that you're also modifying the original list as well. This is frequently the cause of subtle bugs. This violation is triggered when a unique() method call appears as the right hand side of an assignment, or when it appears as the first method call in a series of chained method calls.
Example of violations:
def a = myList.unique() def b = myList.unique() { it } def c = myList.unique().findAll { x < 1 }
New in CodeNarc 0.14
If a method is called and the last parameter is an inline closure then it can be declared outside of the method call parentheses.
Example of violations:
// creates violation: poor Groovy style [1,2,3].each({ println it }) // no violation [1,2,3].each { println it }
New in CodeNarc 0.16
The collectAll method is deprecated since Groovy 1.8.1. Use collectNested instead.
Example of violations:
def list = [1, 2, [3, 4, [5, 6]], 7] list.collectAll { it * 2 } // deprecated list.collectNested { it * 2 } // replacement
New in CodeNarc 0.16
Multiple return values can be used to set several variables at once. To use multiple return values, the left hand side of the assignment must be enclosed in parenthesis. If not, then you are not using multiple return values, you're only assigning the last element.
Example of violations:
def a, b = [1, 2] // bad, b is null def c, d, e = [1, 2, 3] // bad, c and d are null class MyClass { def a, b, c = [1, 2, 3] // bad, a and b are null } def x = 1 // ok def (f, g) = [1, 2] // ok (a, b, c) = [1, 2, 3] // ok
Since CodeNarc 0.11
This rule checks for explicit calls to the no-argument constructor of ArrayList. In Groovy, it is best to write new ArrayList() as [], which creates the same object.
Since CodeNarc 0.11
This rule detects when the and(Object) method is called directly in code instead of using the & operator. A groovier way to express this: a.and(b) is this: a & b. This rule can be configured to ignore this.and(Object) using the ignoreThisReference property. It defaults to true, so even and(x) will not trigger a violation. The default is true because and appears commonly in Grails criteria.
This rule also ignores all calls to super.and(Object).
Since CodeNarc 0.11
This rule detects when the compareTo(Object) method is called directly in code instead of using the <=>, >, >=, <, and <= operators. A groovier way to express this: a.compareTo(b) is this: a <=> b, or using the other operators. Here are some other ways to write groovier code:
a.compareTo(b) == 0 // can be replaced by: a == b a.compareTo(b) // can be replaced by: a <=> b a.compareTo(b) > 0 // can be replaced by: a > b a.compareTo(b) >= 0 // can be replaced by: a >= b a.compareTo(b) < 0 // can be replaced by: a < b a.compareTo(b) <= 0 // can be replaced by: a <= b
This rule can be configured to ignore this.compareTo(Object) using the ignoreThisReference property. It defaults to false, so even compareTo(x) will trigger a violation.
This rule also ignores all calls to super.compareTo(Object).
Since CodeNarc 0.11
This rule detects when the div(Object) method is called directly in code instead of using the / operator. A groovier way to express this: a.div(b) is this: a / b. This rule can be configured to ignore div.xor(Object) using the ignoreThisReference property. It defaults to false, so even div(x) will trigger a violation.
This rule also ignores all calls to super.div(Object).
Since CodeNarc 0.11
This rule detects when the equals(Object) method is called directly in code instead of using the == or != operator. A groovier way to express this: a.equals(b) is this: a == b and a groovier way to express : !a.equals(b) is: a != b. This rule can be configured to ignore this.equals(Object) using the ignoreThisReference property. It defaults to false, so even equals(x) will trigger a violation.
This rule also ignores all calls to super.equals(Object).
Since CodeNarc 0.11
This rule detects when the getAt(Object) method is called directly in code instead of using the [] index operator. A groovier way to express this: a.getAt(b) is this: a[b]. This rule can be configured to ignore this.getAt(Object) using the ignoreThisReference property. It defaults to false, so even getAt(x) will trigger a violation.
This rule also ignores all calls to super.getAt(Object).
Since CodeNarc 0.11
This rule detects when the leftShift(Object) method is called directly in code instead of using the << operator. A groovier way to express this: a.leftShift(b) is this: a << b. This rule can be configured to ignore this.leftShift(Object) using the ignoreThisReference property. It defaults to false, so even leftShift(x) will trigger a violation.
This rule also ignores all calls to super.leftShift(Object).
Since CodeNarc 0.11
This rule detects when the minus(Object) method is called directly in code instead of using the - operator. A groovier way to express this: a.minus(b) is this: a - b. This rule can be configured to ignore minus.xor(Object) using the ignoreThisReference property. It defaults to false, so even minus(x) will trigger a violation.
This rule also ignores all calls to super.minus(Object).
Since CodeNarc 0.11
This rule detects when the multiply(Object) method is called directly in code instead of using the * operator. A groovier way to express this: a.multiply(b) is this: a * b. This rule can be configured to ignore this.multiply(Object) using the ignoreThisReference property. It defaults to false, so even multiply(x) will trigger a violation.
This rule also ignores all calls to super.multiply(Object).
Since CodeNarc 0.11
This rule detects when the mod(Object) method is called directly in code instead of using the % operator. A groovier way to express this: a.mod(b) is this: a % b. This rule can be configured to ignore this.mod(Object) using the ignoreThisReference property. It defaults to false, so even mod(x) will trigger a violation.
This rule also ignores all calls to super.mod(Object).
Since CodeNarc 0.11
This rule detects when the or(Object) method is called directly in code instead of using the | operator. A groovier way to express this: a.or(b) is this: a | b. This rule can be configured to ignore this.or(Object) using the ignoreThisReference property. It defaults to true, so even or(x) will not trigger a violation. This is the default because it is commonly used in Grails criteria.
This rule also ignores all calls to super.or(Object).
Since CodeNarc 0.11
This rule detects when the plus(Object) method is called directly in code instead of using the + operator. A groovier way to express this: a.plus(b) is this: a + b. This rule can be configured to ignore this.plus(Object) using the ignoreThisReference property. It defaults to false, so even plus(x) will trigger a violation.
This rule also ignores all calls to super.plus(Object).
Since CodeNarc 0.11
This rule detects when the power(Object) method is called directly in code instead of using the ** operator. A groovier way to express this: a.power(b) is this: a ** b. This rule can be configured to ignore this.power(Object) using the ignoreThisReference property. It defaults to false, so even power(x) will trigger a violation.
This rule also ignores all calls to super.power(Object).
Since CodeNarc 0.11
This rule detects when the rightShift(Object) method is called directly in code instead of using the >> operator. A groovier way to express this: a.rightShift(b) is this: a >> b. This rule can be configured to ignore this.rightShift(Object) using the ignoreThisReference property. It defaults to false, so even rightShift(x) will trigger a violation.
This rule also ignores all calls to super.rightShift(Object).
Since CodeNarc 0.11
This rule detects when the xor(Object) method is called directly in code instead of using the ^ operator. A groovier way to express this: a.xor(b) is this: a ^ b. This rule can be configured to ignore this.xor(Object) using the ignoreThisReference property. It defaults to false, so even xor(x) will trigger a violation.
This rule also ignores all calls to super.xor(Object).
Since CodeNarc 0.11
This rule checks for explicit calls to the no-argument constructor of HashMap. In Groovy, it is best to replace new HashMap() with [:], which creates (mostly) the same object. [:] is technically a LinkedHashMap but it is very rare that someone absolutely needs an instance of HashMap and not a subclass.
Since in CodeNarc 0.14
This rule checks for the explicit instantiation of a LinkedHashMap using the no-arg constructor. In Groovy, it is best to replace new LinkedHashMap() with [:], which creates the same object.
Since CodeNarc 0.11
This rule checks for explicit calls to the no-argument constructor of HashSet. In Groovy, it is best to replace new HashSet() with [] as Set, which creates the same object.
Since CodeNarc 0.11
This rule checks for explicit calls to the no-argument constructor of LinkedList. In Groovy, it is best to replace new LinkedList() with [] as Queue, which creates the same object.
Since CodeNarc 0.11
This rule checks for explicit calls to the no-argument constructor of Stack. In Groovy, it is best to replace new Stack() with [] as Stack, which creates the same object.
Since CodeNarc 0.11
This rule checks for explicit calls to the no-argument constructor of TreeSet. In Groovy, it is best to replace new TreeSet() with [] as SortedSet, which creates the same object.
New in CodeNarc 0.16
If a class defines a public method that follows the Java getter notation and that returns a constant, then it is cleaner to provide a Groovy property for the value rather than a Groovy method.
Example of violations:
interface Parent { String getSomething() String getSomethingElse() } class Child extends Parent { static VALUE = 'value' @Override String getSomething() { 'something' // this could be simplified } @Override String getSomethingElse() { VALUE // this could be simplified } int getOtherValue() { 123 } static String getName() { 'MyName' } } class Child2 extends Parent { static VALUE = 'value' final String something = 'something' // this is cleaner final String somethingElse = VALUE // this is cleaner final int otherValue = 123 // this is cleaner static final String name = 'MyName' // this is cleaner }
New in CodeNarc 0.13
The groovy.lang.Immutable annotation has been deprecated and replaced by groovy.transform.Immutable. Do not use the Immutable in groovy.lang.
Example of violations:
@Immutable class Person { } @groovy.lang.Immutable class Person { } import groovy.lang.Immutable as Imtl @Imtl class Person { } // the following code is OK @groovy.transform.Immutable class Person { } import groovy.transform.Immutable @Immutable class Person { } import groovy.transform.* @Immutable class Person { } import groovy.transform.Immutable as Imtl @Imtl class Person { }
Since CodeNarc 0.11
A GString should not be used as a map key since its hashcode is not guaranteed to be stable. Consider calling key.toString().
Here is an example of code that produces a violation:
Map map = ["${someRef}" : 'invalid' ] // violation
Since CodeNarc 0.19
Check for regular (single quote) strings containing a GString-type expression ($..).
Example of violations:
def str1 = 'total: ${count}' // violation def str2 = 'average: ${total / count}' // violation def str3 = "abc ${count}" // ok; GString def str4 = '$123' // ok def str5 = 'abc {123}' // ok
New in CodeNarc 0.16
In many case collectMany() yields the same result as collect.flatten(). It is easier to understand and more clearly conveys the intent.
Example of violations:
def l = [1, 2, 3, 4] l.collect{ [it, it*2] }.flatten() // suboptimal l.collectMany{ [it, it*2] } // same functionality, better readability
New in CodeNarc 0.16
Instead of nested collect calls use collectNested.
Example of violations:
def list = [1, 2, [3, 4, 5, 6], [7]] println list.collect { elem -> if (elem instanceof List) elem.collect {it *2} // violation else elem * 2 } println list.collect([8]) { if (it instanceof List) it.collect {it *2} // violation else it * 2 } println list.collectNested { it * 2 } // same functionality, better readability
Also see GrailsMassAssignment.
New in CodeNarc 0.14
The File.createTempFile() method is insecure, and has been deprecated by the ESAPI secure coding library. It has been replaced by the ESAPI Randomizer.getRandomFilename(String) method.
For more information see the ESAPI website: http://code.google.com/p/owasp-esapi-java/ and the Randomizer Javadoc: http://owasp-esapi-java.googlecode.com/svn/trunk_doc/latest/org/owasp/esapi/Randomizer.html
New in CodeNarc 0.14
Reports usages of java.util.Random, which can produce very predictable results. If two instances of Random are created with the same seed and sequence of method calls, they will generate the exact same results. Use java.security.SecureRandom instead, which provides a cryptographically strong random number generator. SecureRandom uses PRNG, which means they are using a deterministic algorithm to produce a pseudo-random number from a true random seed. SecureRandom produces non-deterministic output.
By default, this rule ignores test classes are ignored.
For more information see: http://www.klocwork.com/products/documentation/current/Checkers:SV.RANDOM
Example of violations:
def r1 = new Random() def r2 = new java.util.Random() Math.random() java.lang.Math.random() // this is OK new java.security.SecureRandom() new SecureRandom()
New in CodeNarc 0.14
This rule reports violations of the Enterprise JavaBeans specification by using the java.io package to access files or the file system.
The Enterprise JavaBeans specification requires that every bean provider follow a set of programming guidelines designed to ensure that the bean will be portable and behave consistently in any EJB container [1].
In this case, the program violates the following EJB guideline: "An enterprise bean must not use the java.io package to attempt to access files and directories in the file system."
A requirement that the specification justifies in the following way: "The file system APIs are not well-suited for business components to access data. Business components should use a resource manager API, such as JDBC, to store data."
REFERENCES
By default, this rule is not applied to tests and test cases.
Example of violations:
FileSystem.getFileSystem() // any method on FileSystem FileSystem.fileSystem.delete(aFile) // property access of FileSystem // shouldn't create files new File(name) new File(name, parent) // don't create file readers new FileReader(name) // don't create file output streams new FileOutputStream(name) new FileOutputStream(name, true) // don't create random access file new RandomAccessFile(name, parent)
New in CodeNarc 0.14
Finds code that violates secure coding principles for mobile code by declaring a member variable public but not final.
All public member variables in an Applet and in classes used by an Applet should be declared final to prevent an attacker from manipulating or gaining unauthorized access to the internal state of the Applet.
References:
New in CodeNarc 0.14
The permissions classes such as java.security.Permission and java.security.BasicPermission are designed to be extended. Classes that derive from these permissions classes, however, must prohibit extension. This prohibition ensures that malicious subclasses cannot change the properties of the derived class. Classes that implement sensitive interfaces such as java.security.PrivilegedAction and java.security.PrivilegedActionException must also be declared final for analogous reasons.
For more information see: https://www.securecoding.cert.org/confluence/display/java/SEC07-J.+Classes+that+derive+from+a+sensitive+class+or+implement+a+sensitive+interface+must+be+declared+final
Example of violations:
class MyPermission extends java.security.Permission { MyPermission(String name) { super(name) } boolean implies(Permission permission) { true } boolean equals(Object obj) { true } int hashCode() { 0 } String getActions() { "action" } } class MyBasicPermission extends BasicPermission { MyBasicPermission(String name) { super(name) } } class MyPrivilegedAction implements PrivilegedAction { Object run() { 0 } } class MyPrivilegedActionException extends PrivilegedActionException { MyPrivilegedActionException(Exception exception) { super(exception) } }
New in CodeNarc 0.14
Creates a violation when the program violates secure coding principles by declaring a finalize() method public.
A program should never call finalize explicitly, except to call super.finalize() inside an implementation of finalize(). In mobile code situations, the otherwise error prone practice of manual garbage collection can become a security threat if an attacker can maliciously invoke one of your finalize() methods because it is declared with public access. If you are using finalize() as it was designed, there is no reason to declare finalize() with anything other than protected access.
References:
New in CodeNarc 0.14
The finalize() method should only be called by the JVM after the object has been garbage collected.
While the Java Language Specification allows an object's finalize() method to be called from outside the finalizer, doing so is usually a bad idea. For example, calling finalize() explicitly means that finalize() will be called more than once: the first time will be the explicit call and the last time will be the call that is made after the object is garbage collected.
References: Standards Mapping - Common Weakness Enumeration - (CWE) CWE ID 586
New in CodeNarc 0.14
Web applications should never call System.exit(). A call to System.exit() is probably part of leftover debug code or code imported from a non-J2EE application.
New in CodeNarc 0.14
Triggers a violation when an array is declared public, final, and static.
In most cases an array declared public, final and static is a bug. Because arrays are mutable objects, the final constraint requires that the array object itself be assigned only once, but makes no guarantees about the values of the array elements. Since the array is public, a malicious program can change the values stored in the array. In most situations the array should be made private.
Example of violations:
class MyClass { public static final String[] myArray = init() public static final def myArray = [] as String[] }
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 10 | [SRC]import org.gradle.api.DefaultTask [MSG]The [org.gradle.api.DefaultTask] import is never referenced |
UnusedImport | 3 | 12 | [SRC]import org.gradle.api.specs.Specs [MSG]The [org.gradle.api.specs.Specs] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 31 | [SRC]GrailsResourceUtils.isDomainClass(res.getURL()) [MSG]Violation in class grails.build.interactive.completors.CreateController. getURL() can probably be rewritten as URL |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 31 | [SRC]GrailsResourceUtils.isDomainClass(res.getURL()) [MSG]Violation in class grails.build.interactive.completors.CreateScaffoldController. getURL() can probably be rewritten as URL |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 31 | [SRC]GrailsResourceUtils.isDomainClass(res.getURL()) [MSG]Violation in class grails.build.interactive.completors.CreateService. getURL() can probably be rewritten as URL |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 31 | [SRC]GrailsResourceUtils.isDomainClass(res.getURL()) [MSG]Violation in class grails.build.interactive.completors.CreateTagLib. getURL() can probably be rewritten as URL |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 35 | [SRC]GrailsResourceUtils.isDomainClass(res.getURL()) [MSG]Violation in class grails.build.interactive.completors.GenerateAll. getURL() can probably be rewritten as URL |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 35 | [SRC]GrailsResourceUtils.isDomainClass(res.getURL()) [MSG]Violation in class grails.build.interactive.completors.GenerateController. getURL() can probably be rewritten as URL |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 35 | [SRC]GrailsResourceUtils.isDomainClass(res.getURL()) [MSG]Violation in class grails.build.interactive.completors.GenerateViews. getURL() can probably be rewritten as URL |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 34 | [SRC]int complete(String buffer, int cursor, List candidates) { [MSG]Violation in class RegexCompletor. Method parameter [cursor] is never referenced in the method complete of class grails.build.interactive.completors.RegexCompletor |
UnnecessaryElseStatement | 3 | 39 | [SRC]else return -1 [MSG]When an if statement block ends with a return statement the else is unnecessary |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 1003 | [SRC]protected void postLoadConfig() { [MSG]Violation in class grails.util.BuildSettings. The cyclomatic complexity for method [postLoadConfig] is [21] |
CyclomaticComplexity | 2 | 1316 | [SRC]private void establishProjectStructure() { [MSG]Violation in class grails.util.BuildSettings. The cyclomatic complexity for method [establishProjectStructure] is [25] |
UnnecessaryElseStatement | 3 | 488 | [SRC]else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
UnnecessaryGetter | 3 | 589 | [SRC]getCompileDependencies() [MSG]Violation in class grails.util.BuildSettings. getCompileDependencies() can probably be rewritten as compileDependencies |
UnnecessaryGetter | 3 | 603 | [SRC]getProvidedDependencies() [MSG]Violation in class grails.util.BuildSettings. getProvidedDependencies() can probably be rewritten as providedDependencies |
UnnecessaryGetter | 3 | 616 | [SRC]getRuntimeDependencies() [MSG]Violation in class grails.util.BuildSettings. getRuntimeDependencies() can probably be rewritten as runtimeDependencies |
UnnecessaryGetter | 3 | 630 | [SRC]getTestDependencies() [MSG]Violation in class grails.util.BuildSettings. getTestDependencies() can probably be rewritten as testDependencies |
UnnecessaryGetter | 3 | 644 | [SRC]getBuildDependencies() [MSG]Violation in class grails.util.BuildSettings. getBuildDependencies() can probably be rewritten as buildDependencies |
UnnecessaryDefInMethodDeclaration | 3 | 783 | [SRC]protected def loadBuildPropertiesFromClasspath(Propertie..uildProps) { [MSG]Violation in class grails.util.BuildSettings. The def keyword is unneeded when a method is marked protected |
UnnecessaryGetter | 3 | 1011 | [SRC]def configURL = config.getConfigFile() [MSG]Violation in class grails.util.BuildSettings. getConfigFile() can probably be rewritten as configFile |
UnnecessaryGetter | 3 | 1012 | [SRC]def configFile = configURL ? new File(configURL.getFile()) : null [MSG]Violation in class grails.util.BuildSettings. getFile() can probably be rewritten as file |
UnnecessaryGetter | 3 | 1014 | [SRC]def metadataFile = Metadata.current.getMetadataFile() [MSG]Violation in class grails.util.BuildSettings. getMetadataFile() can probably be rewritten as metadataFile |
UnnecessaryGetter | 3 | 1148 | [SRC]gcl = rootLoader != null ? new GroovyClassLoader(rootLoa..assLoader()) [MSG]Violation in class grails.util.BuildSettings. getSystemClassLoader() can probably be rewritten as systemClassLoader |
UnnecessaryGetter | 3 | 1157 | [SRC]def appName = metadata.getApplicationName() ?: "grails" [MSG]Violation in class grails.util.BuildSettings. getApplicationName() can probably be rewritten as applicationName |
UnnecessaryGetter | 3 | 1158 | [SRC]def appVersion = metadata.getApplicationVersion() ?: grailsVersion [MSG]Violation in class grails.util.BuildSettings. getApplicationVersion() can probably be rewritten as applicationVersion |
UnnecessaryGetter | 3 | 1217 | [SRC]def pluginDirs = getPluginDirectories() [MSG]Violation in class grails.util.BuildSettings. getPluginDirectories() can probably be rewritten as pluginDirectories |
UnnecessaryGetter | 3 | 1311 | [SRC]appName: Metadata.current.getApplicationName(), [MSG]Violation in class grails.util.BuildSettings. getApplicationName() can probably be rewritten as applicationName |
UnnecessaryGetter | 3 | 1312 | [SRC]appVersion: Metadata.current.getApplicationVersion()) [MSG]Violation in class grails.util.BuildSettings. getApplicationVersion() can probably be rewritten as applicationVersion |
UnnecessaryGetter | 3 | 1335 | [SRC]def workingDirName = metadata.getApplicationName() ?: CO..ING_DIR_NAME [MSG]Violation in class grails.util.BuildSettings. getApplicationName() can probably be rewritten as applicationName |
UnnecessaryGetter | 3 | 1344 | [SRC]def version = metadata.getApplicationVersion() [MSG]Violation in class grails.util.BuildSettings. getApplicationVersion() can probably be rewritten as applicationVersion |
UnnecessaryGetter | 3 | 1345 | [SRC]def appName = metadata.getApplicationName() ?: baseDir.name [MSG]Violation in class grails.util.BuildSettings. getApplicationName() can probably be rewritten as applicationName |
UnnecessaryGetter | 3 | 1512 | [SRC]getBasePluginDescriptor() != null [MSG]Violation in class grails.util.BuildSettings. getBasePluginDescriptor() can probably be rewritten as basePluginDescriptor |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 24 | [SRC]props.load(getClass().getClassLoader().getResourceAsStre..roperties")) [MSG]Violation in class grails.util.None. getClassLoader() can probably be rewritten as classLoader |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 187 | [SRC]GrailsPluginInfo[] getPluginInfos(String pluginDirPath=t..inDirPath) { [MSG]Violation in class PluginBuildSettings. Method parameter [pluginDirPath] is never referenced in the method getPluginInfos of class grails.util.PluginBuildSettings |
EmptyCatchBlock | 2 | 203 | [SRC]catch (e) { [MSG]The catch block is empty |
EmptyCatchBlock | 2 | 739 | [SRC]catch (e) { [MSG]The catch block is empty |
UnusedVariable | 2 | 759 | [SRC]def (name, version, xml) = result [MSG]The variable [xml] in class grails.util.PluginBuildSettings is not used |
UnnecessaryGetter | 3 | 112 | [SRC]for (pluginDir in getInlinePluginDirectories()) { [MSG]Violation in class grails.util.PluginBuildSettings. getInlinePluginDirectories() can probably be rewritten as inlinePluginDirectories |
UnnecessaryDefInMethodDeclaration | 3 | 160 | [SRC]protected def addPluginScopeInfoForDirAndInfo(PluginScop..ource dir) { [MSG]Violation in class grails.util.PluginBuildSettings. The def keyword is unneeded when a method is marked protected |
UnnecessaryGetter | 3 | 192 | [SRC]Resource[] pluginDescriptors = getPluginDescriptors() [MSG]Violation in class grails.util.PluginBuildSettings. getPluginDescriptors() can probably be rewritten as pluginDescriptors |
UnnecessaryGetter | 3 | 215 | [SRC]buildSettings?.isInlinePluginLocation(pluginLocation?.getFile()) [MSG]Violation in class grails.util.PluginBuildSettings. getFile() can probably be rewritten as file |
UnnecessaryGetter | 3 | 226 | [SRC]locations = buildSettings.getInlinePluginDirectories().c..source(it) } [MSG]Violation in class grails.util.PluginBuildSettings. getInlinePluginDirectories() can probably be rewritten as inlinePluginDirectories |
UnnecessaryGetter | 3 | 239 | [SRC]if (!pluginInfosMap) getPluginInfos() // initialize the infos [MSG]Violation in class grails.util.PluginBuildSettings. getPluginInfos() can probably be rewritten as pluginInfos |
UnnecessaryGetter | 3 | 252 | [SRC]if (!pluginInfosMap) getPluginInfos() // initialize the infos [MSG]Violation in class grails.util.PluginBuildSettings. getPluginInfos() can probably be rewritten as pluginInfos |
UnnecessaryGetter | 3 | 264 | [SRC]def pluginDirs = getPluginDirectories() [MSG]Violation in class grails.util.PluginBuildSettings. getPluginDirectories() can probably be rewritten as pluginDirectories |
UnnecessarySubstring | 3 | 275 | [SRC]sourcePath = sourcePath.substring(pluginPath.length()) [MSG]Violation in class grails.util.PluginBuildSettings. The String.substring(int) method can be replaced with the subscript operator |
UnnecessaryGetter | 3 | 287 | [SRC]def baseDir = buildSettings?.getBaseDir()?.getCanonicalPath() [MSG]Violation in class grails.util.PluginBuildSettings. getCanonicalPath() can probably be rewritten as canonicalPath |
UnnecessaryGetter | 3 | 287 | [SRC]def baseDir = buildSettings?.getBaseDir()?.getCanonicalPath() [MSG]Violation in class grails.util.PluginBuildSettings. getBaseDir() can probably be rewritten as baseDir |
UnnecessaryGetter | 3 | 386 | [SRC]return getPluginSourceDirectories() [MSG]Violation in class grails.util.PluginBuildSettings. getPluginSourceDirectories() can probably be rewritten as pluginSourceDirectories |
UnnecessaryGetter | 3 | 414 | [SRC]getPluginSourceDirectories() // initialize cache [MSG]Violation in class grails.util.PluginBuildSettings. getPluginSourceDirectories() can probably be rewritten as pluginSourceDirectories |
UnnecessaryGetter | 3 | 454 | [SRC]pluginDirectoryResources = buildSettings.getPluginDirect..s Resource[] [MSG]Violation in class grails.util.PluginBuildSettings. getPluginDirectories() can probably be rewritten as pluginDirectories |
UnnecessaryGetter | 3 | 469 | [SRC]if (pluginManager == null) return getPluginInfos() [MSG]Violation in class grails.util.PluginBuildSettings. getPluginInfos() can probably be rewritten as pluginInfos |
UnnecessaryGetter | 3 | 471 | [SRC]def pluginInfos = getPluginInfos().findAll {GrailsPluginInfo info -> [MSG]Violation in class grails.util.PluginBuildSettings. getPluginInfos() can probably be rewritten as pluginInfos |
UnnecessaryGetter | 3 | 472 | [SRC]def plugin = pluginManager.getGrailsPlugin(info.getName()) [MSG]Violation in class grails.util.PluginBuildSettings. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 486 | [SRC]implicitPluginDirectories = buildSettings.getImplicitPlu..source(it) } [MSG]Violation in class grails.util.PluginBuildSettings. getImplicitPluginDirectories() can probably be rewritten as implicitPluginDirectories |
UnnecessaryGetter | 3 | 498 | [SRC]return buildSettings?.getPluginBaseDirectories() ?: [] [MSG]Violation in class grails.util.PluginBuildSettings. getPluginBaseDirectories() can probably be rewritten as pluginBaseDirectories |
UnnecessaryGetter | 3 | 578 | [SRC]artefactResources.addAll compileScopePluginInfo.getArtefactResources() [MSG]Violation in class grails.util.PluginBuildSettings. getArtefactResources() can probably be rewritten as artefactResources |
UnnecessaryGetter | 3 | 579 | [SRC]artefactResources.addAll providedScopePluginInfo.getArte..tResources() [MSG]Violation in class grails.util.PluginBuildSettings. getArtefactResources() can probably be rewritten as artefactResources |
UnnecessaryGetter | 3 | 581 | [SRC]if (Environment.getCurrent() == Environment.TEST) { [MSG]Violation in class grails.util.PluginBuildSettings. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 582 | [SRC]artefactResources.addAll testScopePluginInfo.getArtefactResources() [MSG]Violation in class grails.util.PluginBuildSettings. getArtefactResources() can probably be rewritten as artefactResources |
UnnecessaryGetter | 3 | 584 | [SRC]def inlineDirectories = getInlinePluginDirectories() [MSG]Violation in class grails.util.PluginBuildSettings. getInlinePluginDirectories() can probably be rewritten as inlinePluginDirectories |
UnnecessaryGetter | 3 | 615 | [SRC]def baseDescriptor = getBasePluginDescriptor() [MSG]Violation in class grails.util.PluginBuildSettings. getBasePluginDescriptor() can probably be rewritten as basePluginDescriptor |
UnnecessaryGetter | 3 | 619 | [SRC]for (inlinePluginDir in getInlinePluginDirectories()) { [MSG]Violation in class grails.util.PluginBuildSettings. getInlinePluginDirectories() can probably be rewritten as inlinePluginDirectories |
UnnecessaryGetter | 3 | 635 | [SRC]def pluginDirs = getPluginDirectories().toList() [MSG]Violation in class grails.util.PluginBuildSettings. getPluginDirectories() can probably be rewritten as pluginDirectories |
UnnecessaryGetter | 3 | 824 | [SRC]Resource[] pluginDirs = getPluginDirectories() [MSG]Violation in class grails.util.PluginBuildSettings. getPluginDirectories() can probably be rewritten as pluginDirectories |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 85 | [SRC]void run() { [MSG]Violation in class org.codehaus.groovy.grails.cli.interactive.InteractiveMode. The cyclomatic complexity for method [run] is [31] |
EmptyCatchBlock | 2 | 203 | [SRC]catch(ScriptExitException e) { [MSG]The catch block is empty |
EmptyCatchBlock | 2 | 226 | [SRC]} catch (e) { [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 48 | [SRC]@Delegate GrailsConsole console = GrailsConsole.getInstance() [MSG]Violation in class org.codehaus.groovy.grails.cli.interactive.InteractiveMode. getInstance() can probably be rewritten as instance |
UnnecessaryGetter | 3 | 64 | [SRC]GroovySystem.getMetaClassRegistry().addMetaClassRegistry..stryCleaner) [MSG]Violation in class org.codehaus.groovy.grails.cli.interactive.InteractiveMode. getMetaClassRegistry() can probably be rewritten as metaClassRegistry |
UnnecessaryGetter | 3 | 82 | [SRC]getCurrent() != null && getCurrent().interactiveModeActive [MSG]Violation in class org.codehaus.groovy.grails.cli.interactive.InteractiveMode. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 82 | [SRC]getCurrent() != null && getCurrent().interactiveModeActive [MSG]Violation in class org.codehaus.groovy.grails.cli.interactive.InteractiveMode. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 136 | [SRC]final desktop = Desktop.getDesktop() [MSG]Violation in class org.codehaus.groovy.grails.cli.interactive.InteractiveMode. getDesktop() can probably be rewritten as desktop |
UnnecessaryGetter | 3 | 238 | [SRC]def parser = GrailsScriptRunner.getCommandLineParser() [MSG]Violation in class org.codehaus.groovy.grails.cli.interactive.InteractiveMode. getCommandLineParser() can probably be rewritten as commandLineParser |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 61 | [SRC]boolean shouldInclude(Resource res) { true } [MSG]Violation in class ClassNameCompletor. Method parameter [res] is never referenced in the method shouldInclude of class org.codehaus.groovy.grails.cli.interactive.completors.ClassNameCompletor |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
SynchronizedMethod | 2 | 120 | [SRC]static synchronized PluginBuildSettings getPluginBuildSettings() { [MSG]Violation in class GrailsPluginUtils. The method getPluginBuildSettings is synchronized at the method level |
SynchronizedMethod | 2 | 127 | [SRC]static synchronized setPluginBuildSettings(PluginBuildSe.. settings) { [MSG]Violation in class GrailsPluginUtils. The method setPluginBuildSettings is synchronized at the method level |
UnusedMethodParameter | 2 | 134 | [SRC]static GrailsPluginInfo[] getPluginInfos(String pluginDi..Dir?.path) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginDirPath] is never referenced in the method getPluginInfos of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 144 | [SRC]static GrailsPluginInfo[] getSupportedPluginInfos(String..Dir?.path) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginDirPath] is never referenced in the method getSupportedPluginInfos of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 152 | [SRC]static List<String> getPluginBaseDirectories(String pluginDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginDirPath] is never referenced in the method getPluginBaseDirectories of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 167 | [SRC]static Resource[] getPluginDirectories(String pluginDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginDirPath] is never referenced in the method getPluginDirectories of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 174 | [SRC]static List<Resource> getImplicitPluginDirectories(Strin..Dir?.path) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginDirPath] is never referenced in the method getImplicitPluginDirectories of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 185 | [SRC]static Resource[] getArtefactResources(String basedir) { [MSG]Violation in class GrailsPluginUtils. Method parameter [basedir] is never referenced in the method getArtefactResources of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 199 | [SRC]static Resource[] getPluginXmlMetadata(String pluginsDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginsDirPath] is never referenced in the method getPluginXmlMetadata of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 206 | [SRC]static Resource[] getAvailableScripts(String grailsHome,..g basedir) { [MSG]Violation in class GrailsPluginUtils. Method parameter [grailsHome] is never referenced in the method getAvailableScripts of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 206 | [SRC]static Resource[] getAvailableScripts(String grailsHome,..g basedir) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginDirPath] is never referenced in the method getAvailableScripts of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 206 | [SRC]static Resource[] getAvailableScripts(String grailsHome,..g basedir) { [MSG]Violation in class GrailsPluginUtils. Method parameter [basedir] is never referenced in the method getAvailableScripts of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 213 | [SRC]static Resource[] getPluginScripts(String pluginDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginDirPath] is never referenced in the method getPluginScripts of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 220 | [SRC]static Resource[] getPluginResourceBundles(String pluginDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginDirPath] is never referenced in the method getPluginResourceBundles of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 227 | [SRC]static Resource[] getPluginSourceFiles(String pluginsDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginsDirPath] is never referenced in the method getPluginSourceFiles of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 234 | [SRC]static Resource[] getPluginJarFiles(String pluginsDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginsDirPath] is never referenced in the method getPluginJarFiles of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 241 | [SRC]static Resource[] getPluginDescriptors(String basedir, S..nsDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [basedir] is never referenced in the method getPluginDescriptors of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 241 | [SRC]static Resource[] getPluginDescriptors(String basedir, S..nsDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginsDirPath] is never referenced in the method getPluginDescriptors of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 260 | [SRC]static Resource[] getPluginLibDirectories(String pluginsDirPath) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginsDirPath] is never referenced in the method getPluginLibDirectories of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 267 | [SRC]static Resource[] getPluginI18nDirectories(String plugin..Dir?.path) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginsDirPath] is never referenced in the method getPluginI18nDirectories of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
UnusedMethodParameter | 2 | 302 | [SRC]static Resource getPluginDirForName(String pluginsDirPat..luginName) { [MSG]Violation in class GrailsPluginUtils. Method parameter [pluginsDirPath] is never referenced in the method getPluginDirForName of class org.codehaus.groovy.grails.plugins.GrailsPluginUtils |
SynchronizedMethod | 2 | 309 | [SRC]static synchronized clearCaches() { [MSG]Violation in class GrailsPluginUtils. The method clearCaches is synchronized at the method level |
UnnecessaryGetter | 3 | 135 | [SRC]return getPluginBuildSettings().getPluginInfos() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginInfos() can probably be rewritten as pluginInfos |
UnnecessaryGetter | 3 | 135 | [SRC]return getPluginBuildSettings().getPluginInfos() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 145 | [SRC]final PluginBuildSettings settings = getPluginBuildSettings() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 146 | [SRC]return settings.getSupportedPluginInfos() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getSupportedPluginInfos() can probably be rewritten as supportedPluginInfos |
UnnecessaryGetter | 3 | 153 | [SRC]getPluginBuildSettings().getPluginBaseDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBaseDirectories() can probably be rewritten as pluginBaseDirectories |
UnnecessaryGetter | 3 | 153 | [SRC]getPluginBuildSettings().getPluginBaseDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 160 | [SRC]getPluginBuildSettings().getPluginBaseDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBaseDirectories() can probably be rewritten as pluginBaseDirectories |
UnnecessaryGetter | 3 | 160 | [SRC]getPluginBuildSettings().getPluginBaseDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 164 | [SRC]getPluginBuildSettings().getPluginDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginDirectories() can probably be rewritten as pluginDirectories |
UnnecessaryGetter | 3 | 164 | [SRC]getPluginBuildSettings().getPluginDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 168 | [SRC]getPluginBuildSettings().getPluginDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginDirectories() can probably be rewritten as pluginDirectories |
UnnecessaryGetter | 3 | 168 | [SRC]getPluginBuildSettings().getPluginDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 175 | [SRC]getPluginBuildSettings().getImplicitPluginDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getImplicitPluginDirectories() can probably be rewritten as implicitPluginDirectories |
UnnecessaryGetter | 3 | 175 | [SRC]getPluginBuildSettings().getImplicitPluginDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 179 | [SRC]getPluginBuildSettings().isGlobalPluginLocation(pluginDir) [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 186 | [SRC]getPluginBuildSettings().getArtefactResources() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getArtefactResources() can probably be rewritten as artefactResources |
UnnecessaryGetter | 3 | 186 | [SRC]getPluginBuildSettings().getArtefactResources() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 193 | [SRC]getPluginBuildSettings().getArtefactResourcesForOne(projectDir) [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 200 | [SRC]getPluginBuildSettings().getPluginXmlMetadata() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginXmlMetadata() can probably be rewritten as pluginXmlMetadata |
UnnecessaryGetter | 3 | 200 | [SRC]getPluginBuildSettings().getPluginXmlMetadata() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 207 | [SRC]getPluginBuildSettings().getAvailableScripts() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getAvailableScripts() can probably be rewritten as availableScripts |
UnnecessaryGetter | 3 | 207 | [SRC]getPluginBuildSettings().getAvailableScripts() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 214 | [SRC]getPluginBuildSettings().getPluginScripts() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginScripts() can probably be rewritten as pluginScripts |
UnnecessaryGetter | 3 | 214 | [SRC]getPluginBuildSettings().getPluginScripts() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 221 | [SRC]getPluginBuildSettings().getPluginResourceBundles() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginResourceBundles() can probably be rewritten as pluginResourceBundles |
UnnecessaryGetter | 3 | 221 | [SRC]getPluginBuildSettings().getPluginResourceBundles() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 228 | [SRC]getPluginBuildSettings().getPluginSourceFiles() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginSourceFiles() can probably be rewritten as pluginSourceFiles |
UnnecessaryGetter | 3 | 228 | [SRC]getPluginBuildSettings().getPluginSourceFiles() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 235 | [SRC]getPluginBuildSettings().getPluginJarFiles() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginJarFiles() can probably be rewritten as pluginJarFiles |
UnnecessaryGetter | 3 | 235 | [SRC]getPluginBuildSettings().getPluginJarFiles() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 242 | [SRC]getPluginBuildSettings().getPluginDescriptors() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginDescriptors() can probably be rewritten as pluginDescriptors |
UnnecessaryGetter | 3 | 242 | [SRC]getPluginBuildSettings().getPluginDescriptors() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 246 | [SRC]getPluginBuildSettings().getBasePluginDescriptor(basedir) [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 254 | [SRC]getPluginBuildSettings().getDescriptorForPlugin(pluginDir) [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 261 | [SRC]getPluginBuildSettings().getPluginLibDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginLibDirectories() can probably be rewritten as pluginLibDirectories |
UnnecessaryGetter | 3 | 261 | [SRC]getPluginBuildSettings().getPluginLibDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 268 | [SRC]getPluginBuildSettings().getPluginI18nDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginI18nDirectories() can probably be rewritten as pluginI18nDirectories |
UnnecessaryGetter | 3 | 268 | [SRC]getPluginBuildSettings().getPluginI18nDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 275 | [SRC]getPluginBuildSettings().getGlobalPluginsPath() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getGlobalPluginsPath() can probably be rewritten as globalPluginsPath |
UnnecessaryGetter | 3 | 275 | [SRC]getPluginBuildSettings().getGlobalPluginsPath() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 282 | [SRC]getPluginBuildSettings().getPluginDirForName(pluginName) [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 289 | [SRC]getPluginBuildSettings().getMetadataForPlugin(pluginName) [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 296 | [SRC]getPluginBuildSettings().getMetadataForPlugin(pluginDir) [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 303 | [SRC]getPluginBuildSettings().getPluginDirForName(pluginName) [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 310 | [SRC]getPluginBuildSettings().clearCache() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtils. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EqualsAndHashCode | 2 | 100 | [SRC]class VersionComparator implements Comparator { [MSG]The class org.codehaus.groovy.grails.plugins.VersionComparator defines equals(Object) but not hashCode() |
UnusedMethodParameter | 2 | 167 | [SRC]boolean equals(obj) { false } [MSG]Violation in class VersionComparator. Method parameter [obj] is never referenced in the method equals of class org.codehaus.groovy.grails.plugins.VersionComparator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 44 | [SRC]catch(e) { [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 56 | [SRC]input = pluginXml.getInputStream() [MSG]Violation in class org.codehaus.groovy.grails.plugins.PluginInfo. getInputStream() can probably be rewritten as inputStream |
UnnecessaryGetter | 3 | 97 | [SRC]"${getName()}-${getVersion()}" [MSG]Violation in class org.codehaus.groovy.grails.plugins.PluginInfo. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 97 | [SRC]"${getName()}-${getVersion()}" [MSG]Violation in class org.codehaus.groovy.grails.plugins.PluginInfo. getVersion() can probably be rewritten as version |
UnnecessaryGetter | 3 | 101 | [SRC][name:getName(), version:getVersion()] [MSG]Violation in class org.codehaus.groovy.grails.plugins.PluginInfo. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 101 | [SRC][name:getName(), version:getVersion()] [MSG]Violation in class org.codehaus.groovy.grails.plugins.PluginInfo. getVersion() can probably be rewritten as version |
UnnecessaryDefInMethodDeclaration | 3 | 119 | [SRC]private def lookupFromMetadata(String name) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.PluginInfo. The def keyword is unneeded when a method is marked private |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 121 | [SRC]Field field = getClass().getSuperclass().getDeclaredFiel..Transitive") [MSG]Violation in class org.codehaus.groovy.grails.resolve.EnhancedDefaultDependencyDescriptor. getSuperclass() can probably be rewritten as superclass |
UnnecessaryGetter | 3 | 128 | [SRC]Field field = getClass().getSuperclass().getDeclaredFiel..isChanging") [MSG]Violation in class org.codehaus.groovy.grails.resolve.EnhancedDefaultDependencyDescriptor. getSuperclass() can probably be rewritten as superclass |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 34 | [SRC]import org.apache.ivy.plugins.resolver.ChainResolver [MSG]The [org.apache.ivy.plugins.resolver.ChainResolver] import is never referenced |
UnusedImport | 3 | 35 | [SRC]import org.apache.ivy.util.Message [MSG]The [org.apache.ivy.util.Message] import is never referenced |
UnusedImport | 3 | 36 | [SRC]import org.apache.ivy.util.MessageLogger [MSG]The [org.apache.ivy.util.MessageLogger] import is never referenced |
UnnecessaryElseStatement | 3 | 254 | [SRC]else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
UnnecessaryGetter | 3 | 396 | [SRC]def candidates = getPluginDependencyDescriptors().findAl..pplication } [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManager. getPluginDependencyDescriptors() can probably be rewritten as pluginDependencyDescriptors |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 366 | [SRC]def (name, version, xml) = readMetadataFromZip(zipLocation) [MSG]The variable [xml] in class org.codehaus.groovy.grails.resolve.PluginInstallEngine is not used |
UnusedMethodParameter | 2 | 429 | [SRC]protected void resolvePluginJarDependencies(fullPluginNa..ies = [:]) { [MSG]Violation in class PluginInstallEngine. Method parameter [pluginName] is never referenced in the method resolvePluginJarDependencies of class org.codehaus.groovy.grails.resolve.PluginInstallEngine |
BooleanGetBoolean | 2 | 446 | [SRC]def runningUpgrade = Boolean.getBoolean('runningGrailsUpgrade') [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. Boolean.getBoolean(String) is a confusing API for reading System properties. Prefer the System.getProperty(String) API. |
UnusedMethodParameter | 2 | 504 | [SRC]protected Map processPluginDependencies(String pluginNam..pluginXml) { [MSG]Violation in class PluginInstallEngine. Method parameter [pluginName] is never referenced in the method processPluginDependencies of class org.codehaus.groovy.grails.resolve.PluginInstallEngine |
UnusedPrivateMethod | 2 | 731 | [SRC]private registerMetadataForPluginLocation(Resource pluginDir) { [MSG]The method registerMetadataForPluginLocation is not used within PluginInstallEngine.groovy |
UnnecessaryGetter | 3 | 91 | [SRC]applicationPluginsLocation = settings.getProjectPluginsDir() [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. getProjectPluginsDir() can probably be rewritten as projectPluginsDir |
UnnecessaryGetter | 3 | 228 | [SRC]cacheDir currentDependencyManager.ivySettings.getDefault..absolutePath [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. getDefaultCache() can probably be rewritten as defaultCache |
UnnecessaryObjectReferences | 3 | 237 | [SRC]pluginResolver.setCheckmodified(true) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessarySelfAssignment | 3 | 390 | [SRC]PluginBuildSettings pluginSettings = pluginSettings [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessaryGetter | 3 | 461 | [SRC]grails.build.logging.GrailsConsole.getInstance().warn(""" [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. getInstance() can probably be rewritten as instance |
UnnecessaryPackageReference | 3 | 461 | [SRC]grails.build.logging.GrailsConsole.getInstance().warn(""" [MSG]The grails.build.logging.GrailsConsole class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryGetter | 3 | 510 | [SRC]def grailsVersion = settings.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryGetter | 3 | 563 | [SRC]GrailsConsole.getInstance().addStatus("Uninstalled plugin [$name]") [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. getInstance() can probably be rewritten as instance |
UnnecessaryGetter | 3 | 566 | [SRC]GrailsConsole.getInstance().warning("No plugin [$name${v.. uninstall") [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. getInstance() can probably be rewritten as instance |
UnnecessaryDefInMethodDeclaration | 3 | 585 | [SRC]private def addToMetadata(pluginName, pluginVersion) { [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. The def keyword is unneeded when a method is marked private |
UnnecessaryGetter | 3 | 649 | [SRC]GrailsConsole.getInstance().userInput(msg, ['y','n'] as ..ng[]) == 'y' [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. getInstance() can probably be rewritten as instance |
UnnecessaryGetter | 3 | 657 | [SRC]def pluginInfos = pluginSettings.getPluginInfos() [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginInstallEngine. getPluginInfos() can probably be rewritten as pluginInfos |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 273 | [SRC]catch(e) { [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 74 | [SRC]output.println getPluginInfoHeader() [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginResolveEngine. getPluginInfoHeader() can probably be rewritten as pluginInfoHeader |
UnnecessaryGetter | 3 | 129 | [SRC]output.println getPluginInfoFooter() [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginResolveEngine. getPluginInfoFooter() can probably be rewritten as pluginInfoFooter |
UnnecessaryDefInMethodDeclaration | 3 | 136 | [SRC]protected def printDependencies(output, dependencies) { [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginResolveEngine. The def keyword is unneeded when a method is marked protected |
UnnecessaryDefInMethodDeclaration | 3 | 145 | [SRC]protected def printSectionTitle(PrintWriter output, String title) { [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginResolveEngine. The def keyword is unneeded when a method is marked protected |
UnnecessaryDefInMethodDeclaration | 3 | 151 | [SRC]protected def printLineSeparator(PrintWriter output) { [MSG]Violation in class org.codehaus.groovy.grails.resolve.PluginResolveEngine. The def keyword is unneeded when a method is marked protected |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 28 | [SRC]for(IvyNode node in confReport.getUnresolvedDependencies()) { [MSG]Violation in class org.codehaus.groovy.grails.resolve.ResolveException. getUnresolvedDependencies() can probably be rewritten as unresolvedDependencies |
UnnecessaryGetter | 3 | 31 | [SRC]def failedDownloads = confReport.getFailedArtifactsReports() [MSG]Violation in class org.codehaus.groovy.grails.resolve.ResolveException. getFailedArtifactsReports() can probably be rewritten as failedArtifactsReports |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryObjectReferences | 3 | 91 | [SRC]fileSystemResolver.settings = dependencyManager.ivySettings [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 169 | [SRC]urlResolver.setCheckmodified(true) [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGroovyImport | 3 | 21 | [SRC]import java.util.Map |
UnnecessaryGetter | 3 | 53 | [SRC]getCachedConfigs().clear() [MSG]Violation in class org.codehaus.groovy.grails.commons.cfg.ConfigurationHelper. getCachedConfigs() can probably be rewritten as cachedConfigs |
UnnecessaryGetter | 3 | 64 | [SRC]classLoader = application.getClassLoader() [MSG]Violation in class org.codehaus.groovy.grails.commons.cfg.ConfigurationHelper. getClassLoader() can probably be rewritten as classLoader |
UnnecessaryGetter | 3 | 77 | [SRC]co = getCachedConfigs().get(cacheKey) [MSG]Violation in class org.codehaus.groovy.grails.commons.cfg.ConfigurationHelper. getCachedConfigs() can probably be rewritten as cachedConfigs |
UnnecessaryGetter | 3 | 111 | [SRC]getCachedConfigs().put(cacheKey, co) [MSG]Violation in class org.codehaus.groovy.grails.commons.cfg.ConfigurationHelper. getCachedConfigs() can probably be rewritten as cachedConfigs |
UnnecessaryGetter | 3 | 127 | [SRC]binding.put(CONFIG_BINDING_APP_NAME, application.getMeta..ATION_NAME)) [MSG]Violation in class org.codehaus.groovy.grails.commons.cfg.ConfigurationHelper. getMetadata() can probably be rewritten as metadata |
UnnecessaryGetter | 3 | 128 | [SRC]binding.put(CONFIG_BINDING_APP_VERSION, application.getM..ON_VERSION)) [MSG]Violation in class org.codehaus.groovy.grails.commons.cfg.ConfigurationHelper. getMetadata() can probably be rewritten as metadata |
UnnecessaryGetter | 3 | 142 | [SRC]getCachedConfigs().put(DEV_CACHE_KEY, config) [MSG]Violation in class org.codehaus.groovy.grails.commons.cfg.ConfigurationHelper. getCachedConfigs() can probably be rewritten as cachedConfigs |
UnnecessaryGetter | 3 | 192 | [SRC]stream = resource.getInputStream() [MSG]Violation in class org.codehaus.groovy.grails.commons.cfg.ConfigurationHelper. getInputStream() can probably be rewritten as inputStream |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 45 | [SRC]def beans = getBeansConfig() [MSG]Violation in class org.codehaus.groovy.grails.commons.cfg.MapBasedSmartPropertyOverrideConfigurer. getBeansConfig() can probably be rewritten as beansConfig |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 46 | [SRC]method.invoke(method.getDeclaringClass(), instance, *args) [MSG]Violation in class org.codehaus.groovy.grails.commons.metaclass.MetaClassEnhancer$1. getDeclaringClass() can probably be rewritten as declaringClass |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateField | 2 | 43 | [SRC]private static final List<String> PLUGIN_EXCLUDE_PATHS =..ial handling [MSG]The field PLUGIN_EXCLUDE_PATHS is not used within the class org.codehaus.groovy.grails.compiler.GrailsProjectCompiler |
UnnecessaryGetter | 3 | 97 | [SRC]pluginSettings.getArtefactResourcesForCurrentEnvironment()) [MSG]Violation in class org.codehaus.groovy.grails.compiler.GrailsProjectCompiler. getArtefactResourcesForCurrentEnvironment() can probably be rewritten as artefactResourcesForCurrentEnvironment |
UnnecessaryGetter | 3 | 142 | [SRC]def jarFiles = getJarFiles() [MSG]Violation in class org.codehaus.groovy.grails.compiler.GrailsProjectCompiler. getJarFiles() can probably be rewritten as jarFiles |
UnnecessaryGetter | 3 | 195 | [SRC]jarFiles.addAll(getExtraDependencies()) [MSG]Violation in class org.codehaus.groovy.grails.compiler.GrailsProjectCompiler. getExtraDependencies() can probably be rewritten as extraDependencies |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 42 | [SRC]GrailsConsole grailsConsole = GrailsConsole.getInstance() [MSG]Violation in class org.codehaus.groovy.grails.compiler.GrailsProjectPackager. getInstance() can probably be rewritten as instance |
UnnecessaryGetter | 3 | 119 | [SRC]ant.copy(todir:buildSettings.getClassesDir(), failonerror:false) { [MSG]Violation in class org.codehaus.groovy.grails.compiler.GrailsProjectPackager. getClassesDir() can probably be rewritten as classesDir |
UnnecessaryGetter | 3 | 269 | [SRC]def pluginInfos = pluginSettings.getSupportedPluginInfos() [MSG]Violation in class org.codehaus.groovy.grails.compiler.GrailsProjectPackager. getSupportedPluginInfos() can probably be rewritten as supportedPluginInfos |
UnnecessaryGetter | 3 | 295 | [SRC]def pluginInfos = pluginSettings.getSupportedPluginInfos() [MSG]Violation in class org.codehaus.groovy.grails.compiler.GrailsProjectPackager. getSupportedPluginInfos() can probably be rewritten as supportedPluginInfos |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 43 | [SRC]String prettyPrint(Throwable t) { [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. The cyclomatic complexity for method [prettyPrint] is [23] |
CyclomaticComplexity | 2 | 167 | [SRC]String prettyPrintCodeSnippet(Throwable exception) { [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. The cyclomatic complexity for method [prettyPrintCodeSnippet] is [21] |
EmptyCatchBlock | 2 | 239 | [SRC]catch (e) { [MSG]The catch block is empty |
EmptyCatchBlock | 2 | 245 | [SRC]} catch (e) { [MSG]The catch block is empty |
EmptyCatchBlock | 2 | 278 | [SRC]} catch (e) { [MSG]The catch block is empty |
UnusedMethodParameter | 2 | 318 | [SRC]String formatCodeSnippetEnd(Resource resource, int lineNumber) { [MSG]Violation in class DefaultStackTracePrinter. Method parameter [resource] is never referenced in the method formatCodeSnippetEnd of class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter |
UnusedMethodParameter | 2 | 318 | [SRC]String formatCodeSnippetEnd(Resource resource, int lineNumber) { [MSG]Violation in class DefaultStackTracePrinter. Method parameter [lineNumber] is never referenced in the method formatCodeSnippetEnd of class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter |
UnnecessaryDefInMethodDeclaration | 3 | 139 | [SRC]protected def printCausedByMessage(PrintWriter sb, Throwable e) { [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. The def keyword is unneeded when a method is marked protected |
UnnecessaryDefInMethodDeclaration | 3 | 144 | [SRC]protected def printHeader(PrintWriter sb, String header) { [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. The def keyword is unneeded when a method is marked protected |
UnnecessaryGetter | 3 | 164 | [SRC]res == null ? te.className : res.getFilename() [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getFilename() can probably be rewritten as filename |
UnnecessaryGetter | 3 | 284 | [SRC]Object message = mcee.getErrorCollector().getErrors().it..tor().next() [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 284 | [SRC]Object message = mcee.getErrorCollector().getErrors().it..tor().next() [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getErrorCollector() can probably be rewritten as errorCollector |
UnnecessaryGetter | 3 | 287 | [SRC]final tmp = new FileSystemResource(sem.getCause().getSourceLocator()) [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getSourceLocator() can probably be rewritten as sourceLocator |
UnnecessaryGetter | 3 | 287 | [SRC]final tmp = new FileSystemResource(sem.getCause().getSourceLocator()) [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getCause() can probably be rewritten as cause |
UnnecessaryGetter | 3 | 309 | [SRC]Object message = mcee.getErrorCollector().getErrors().it..tor().next() [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 309 | [SRC]Object message = mcee.getErrorCollector().getErrors().it..tor().next() [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getErrorCollector() can probably be rewritten as errorCollector |
UnnecessaryGetter | 3 | 312 | [SRC]lineNumber = sem.getCause().getLine() [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getLine() can probably be rewritten as line |
UnnecessaryGetter | 3 | 312 | [SRC]lineNumber = sem.getCause().getLine() [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getCause() can probably be rewritten as cause |
UnnecessaryGetter | 3 | 344 | [SRC]while (ex.getCause() != null && !ex.equals(ex.getCause())) { [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getCause() can probably be rewritten as cause |
UnnecessaryGetter | 3 | 344 | [SRC]while (ex.getCause() != null && !ex.equals(ex.getCause())) { [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getCause() can probably be rewritten as cause |
UnnecessaryGetter | 3 | 345 | [SRC]ex = ex.getCause() [MSG]Violation in class org.codehaus.groovy.grails.exceptions.DefaultStackTracePrinter. getCause() can probably be rewritten as cause |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 45 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.CoreGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryGetter | 3 | 80 | [SRC]if (getParentCtx()?.containsBean('pluginManager')) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.CoreGrailsPlugin. getParentCtx() can probably be rewritten as parentCtx |
UnnecessaryCollectCall | 3 | 99 | [SRC]def locations = new ArrayList(settings.pluginDirectories..olutePath }) [MSG]Violation in class org.codehaus.groovy.grails.plugins.CoreGrailsPlugin. The call to collect could probably be rewritten as a spread expression: settings.pluginDirectories*.absolutePath |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 157 | [SRC]protected GPathResult getPluginMetadata(String pluginName) { [MSG]Violation in class DefaultPluginPublisher. Method parameter [pluginName] is never referenced in the method getPluginMetadata of class org.codehaus.groovy.grails.plugins.publishing.DefaultPluginPublisher |
UnnecessaryCallForLastElement | 3 | 120 | [SRC]def lastPlugin = allPlugins[allPlugins.size()-1] [MSG]Unnecessarily complex access of last element. This can be simplified to allPlugins.last() or allPlugins[-1] |
UnnecessaryGetter | 3 | 140 | [SRC]InputStream stream = pluginsListFile.getInputStream() [MSG]Violation in class org.codehaus.groovy.grails.plugins.publishing.DefaultPluginPublisher. getInputStream() can probably be rewritten as inputStream |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 83 | [SRC]protected void generatePluginXml(pluginProps, MarkupBuilder xml) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.publishing.PluginDescriptorGenerator. The cyclomatic complexity for method [generatePluginXml] is [28] |
UnusedImport | 3 | 27 | [SRC]import org.apache.ivy.plugins.resolver.URLResolver [MSG]The [org.apache.ivy.plugins.resolver.URLResolver] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 139 | [SRC]String packageSource(String pluginName, File classesDir,..targetDir) { [MSG]Violation in class PluginPackager. Method parameter [classesDir] is never referenced in the method packageSource of class org.codehaus.groovy.grails.plugins.publishing.PluginPackager |
UnusedMethodParameter | 2 | 139 | [SRC]String packageSource(String pluginName, File classesDir,..targetDir) { [MSG]Violation in class PluginPackager. Method parameter [targetDir] is never referenced in the method packageSource of class org.codehaus.groovy.grails.plugins.publishing.PluginPackager |
UnusedVariable | 2 | 149 | [SRC]def pluginGrailsVersion = "${GrailsUtil.grailsVersion} > *" [MSG]The variable [pluginGrailsVersion] in class org.codehaus.groovy.grails.plugins.publishing.PluginPackager is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 13 | [SRC]return GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.support.GrailsPluginUtils. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 59 | [SRC]} catch (e) { [MSG]The catch block is empty |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateMethod | 2 | 144 | [SRC]private generateListView(domainClass, destDir) { [MSG]The method generateListView is not used within DefaultGrailsTemplateGenerator.groovy |
UnusedPrivateMethod | 2 | 154 | [SRC]private generateShowView(domainClass, destDir) { [MSG]The method generateShowView is not used within DefaultGrailsTemplateGenerator.groovy |
UnusedPrivateMethod | 2 | 164 | [SRC]private generateEditView(domainClass, destDir) { [MSG]The method generateEditView is not used within DefaultGrailsTemplateGenerator.groovy |
UnusedPrivateMethod | 2 | 174 | [SRC]private generateCreateView(domainClass, destDir) { [MSG]The method generateCreateView is not used within DefaultGrailsTemplateGenerator.groovy |
UnnecessaryGetter | 3 | 113 | [SRC]for (t in getTemplateNames()) { [MSG]Violation in class org.codehaus.groovy.grails.scaffolding.DefaultGrailsTemplateGenerator. getTemplateNames() can probably be rewritten as templateNames |
UnnecessaryGetter | 3 | 255 | [SRC]def response = GrailsConsole.getInstance().userInput("Fi..as String[]) [MSG]Violation in class org.codehaus.groovy.grails.scaffolding.DefaultGrailsTemplateGenerator. getInstance() can probably be rewritten as instance |
UnnecessaryGetter | 3 | 284 | [SRC]return templateFile.inputStream.getText() [MSG]Violation in class org.codehaus.groovy.grails.scaffolding.DefaultGrailsTemplateGenerator. getText() can probably be rewritten as text |
UnnecessarySubstring | 3 | 306 | [SRC]template = template.substring(1) [MSG]Violation in class org.codehaus.groovy.grails.scaffolding.DefaultGrailsTemplateGenerator. The String.substring(int) method can be replaced with the subscript operator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 227 | [SRC]void appendCreateLink(StringBuffer buffer, String name, String view) { [MSG]Violation in class DocEngine. Method parameter [view] is never referenced in the method appendCreateLink of class grails.doc.DocEngine |
UnusedMethodParameter | 2 | 301 | [SRC]void handleMatch(StringBuffer buffer, MatchResult result..t context) { [MSG]Violation in class BlockQuoteFilter. Method parameter [context] is never referenced in the method handleMatch of class grails.doc.BlockQuoteFilter |
UnusedMethodParameter | 2 | 310 | [SRC]void handleMatch(StringBuffer buffer, MatchResult result..t context) { [MSG]Violation in class ItalicFilter. Method parameter [context] is never referenced in the method handleMatch of class grails.doc.ItalicFilter |
UnusedMethodParameter | 2 | 319 | [SRC]void handleMatch(StringBuffer buffer, MatchResult result..t context) { [MSG]Violation in class BoldFilter. Method parameter [context] is never referenced in the method handleMatch of class grails.doc.BoldFilter |
UnusedMethodParameter | 2 | 329 | [SRC]void handleMatch(StringBuffer buffer, MatchResult result..t context) { [MSG]Violation in class CodeFilter. Method parameter [context] is never referenced in the method handleMatch of class grails.doc.CodeFilter |
UnusedMethodParameter | 2 | 363 | [SRC]void handleMatch(StringBuffer buffer, MatchResult result..t context) { [MSG]Violation in class TextileLinkFilter. Method parameter [context] is never referenced in the method handleMatch of class grails.doc.TextileLinkFilter |
UnusedImport | 3 | 21 | [SRC]import java.util.regex.Pattern [MSG]The [java.util.regex.Pattern] import is never referenced |
UnusedImport | 3 | 30 | [SRC]import org.radeox.macro.CodeMacro [MSG]The [org.radeox.macro.CodeMacro] import is never referenced |
UnusedImport | 3 | 32 | [SRC]import org.radeox.macro.parameter.BaseMacroParameter [MSG]The [org.radeox.macro.parameter.BaseMacroParameter] import is never referenced |
UnusedImport | 3 | 36 | [SRC]import org.radeox.util.Encoder [MSG]The [org.radeox.util.Encoder] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 101 | [SRC]catch (e) { [MSG]The catch block is empty |
CyclomaticComplexity | 2 | 130 | [SRC]private void catPublish() { [MSG]Violation in class grails.doc.DocPublisher. The cyclomatic complexity for method [catPublish] is [28] |
UnusedVariable | 2 | 251 | [SRC]def fullToc = new StringBuilder() [MSG]The variable [fullToc] in class grails.doc.DocPublisher is not used |
UnusedVariable | 2 | 295 | [SRC]def reference = [:] [MSG]The variable [reference] in class grails.doc.DocPublisher is not used |
UnnecessaryObjectReferences | 3 | 404 | [SRC]varsCopy.content = engine.render(sourceFile.text, context) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 586 | [SRC]URL url = getClass().getClassLoader().getResource(src) [MSG]Violation in class grails.doc.DocPublisher. getClassLoader() can probably be rewritten as classLoader |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateField | 2 | 25 | [SRC]private static final String LIVE_DOC_SITE = 'http://grails.org' [MSG]The field LIVE_DOC_SITE is not used within the class grails.doc.PdfBuilder |
UnusedMethodParameter | 2 | 27 | [SRC]static void build(String baseDir, String styleDir = null) { [MSG]Violation in class PdfBuilder. Method parameter [styleDir] is never referenced in the method build of class grails.doc.PdfBuilder |
UnnecessaryGetter | 3 | 73 | [SRC]Document doc = builder.parse(new ByteArrayInputStream(xml.getBytes())) [MSG]Violation in class grails.doc.PdfBuilder. getBytes() can probably be rewritten as bytes |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 32 | [SRC]void handleMatch(StringBuffer out, MatchResult matchResu..erContext) { [MSG]Violation in class HeaderFilter. Method parameter [filterContext] is never referenced in the method handleMatch of class grails.doc.filters.HeaderFilter |
UnusedImport | 3 | 17 | [SRC]import org.radeox.filter.regex.RegexFilter [MSG]The [org.radeox.filter.regex.RegexFilter] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 54 | [SRC]Writer writer = new StringBufferWriter(buffer) [MSG]The variable [writer] in class grails.doc.filters.LinkTestFilter is not used |
UnusedImport | 3 | 22 | [SRC]import org.radeox.filter.interwiki.InterWiki [MSG]The [org.radeox.filter.interwiki.InterWiki] import is never referenced |
UnnecessaryGetter | 3 | 48 | [SRC]def engine = context.getRenderContext().getRenderEngine() [MSG]Violation in class grails.doc.filters.LinkTestFilter. getRenderEngine() can probably be rewritten as renderEngine |
UnnecessaryGetter | 3 | 48 | [SRC]def engine = context.getRenderContext().getRenderEngine() [MSG]Violation in class grails.doc.filters.LinkTestFilter. getRenderContext() can probably be rewritten as renderContext |
UnnecessarySubstring | 3 | 71 | [SRC]alias = name.substring(0, pipeIndex) [MSG]Violation in class grails.doc.filters.LinkTestFilter. The String.substring(int, int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 72 | [SRC]name = name.substring(pipeIndex + 1) [MSG]Violation in class grails.doc.filters.LinkTestFilter. The String.substring(int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 79 | [SRC]hash = name.substring(hashIndex + 1) [MSG]Violation in class grails.doc.filters.LinkTestFilter. The String.substring(int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 80 | [SRC]name = name.substring(0, hashIndex) [MSG]Violation in class grails.doc.filters.LinkTestFilter. The String.substring(int, int) method can be replaced with the subscript operator |
UnnecessaryGetter | 3 | 106 | [SRC]context.getRenderContext().setCacheable(false) [MSG]Violation in class grails.doc.filters.LinkTestFilter. getRenderContext() can probably be rewritten as renderContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryObjectReferences | 3 | 56 | [SRC]publisher.css = project.file("${resourcesDir}/css") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 57 | [SRC]publisher.js = project.file("${resourcesDir}/js") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 58 | [SRC]publisher.style = project.file("${resourcesDir}/style") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 59 | [SRC]publisher.version = props."grails.version" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 60 | [SRC]publisher.logo = '<a href="http://grails.org" target="_b..r="0"/></a>' [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 61 | [SRC]publisher.sponsorLogo = '<a href="http://springsource.co..r="0"/></a>' [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 27 | [SRC]String code [MSG]The variable [code] in class grails.doc.macros.GspTagSourceMacro is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 19 | [SRC]import org.hibernate.Session [MSG]The [org.hibernate.Session] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 194 | [SRC]} catch (e) { [MSG]The catch block is empty |
ThrowExceptionFromFinallyBlock | 2 | 961 | [SRC]throw e [MSG]Throwing an exception from a finally block can hide an underlying error |
UnnecessaryGetter | 3 | 148 | [SRC]this.sessionFactory = datastore.getSessionFactory() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.HibernateGormStaticApi. getSessionFactory() can probably be rewritten as sessionFactory |
UnnecessaryGetter | 3 | 156 | [SRC]grailsApplication = domainClassMappingContext.getGrailsApplication() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.HibernateGormStaticApi. getGrailsApplication() can probably be rewritten as grailsApplication |
UnnecessaryGetter | 3 | 668 | [SRC]def sessionFactory = datastore.getSessionFactory() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.HibernateGormValidationApi. getSessionFactory() can probably be rewritten as sessionFactory |
UnnecessaryGetter | 3 | 673 | [SRC]def grailsApplication = domainClassMappingContext.getGra..pplication() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.HibernateGormValidationApi. getGrailsApplication() can probably be rewritten as grailsApplication |
UnnecessaryGetter | 3 | 736 | [SRC]sessionFactory = datastore.getSessionFactory() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.HibernateGormInstanceApi. getSessionFactory() can probably be rewritten as sessionFactory |
UnnecessaryGetter | 3 | 741 | [SRC]def grailsApplication = domainClassMappingContext.getGra..pplication() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.HibernateGormInstanceApi. getGrailsApplication() can probably be rewritten as grailsApplication |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 43 | [SRC]def postProcessBeforeInitialization(Object bean, String ..me) { bean } [MSG]Violation in class GORMEnhancingBeanPostProcessor. Method parameter [beanName] is never referenced in the method postProcessBeforeInitialization of class org.codehaus.groovy.grails.orm.hibernate.cfg.GORMEnhancingBeanPostProcessor |
UnusedMethodParameter | 2 | 45 | [SRC]Object postProcessAfterInitialization(Object bean, String beanName) { [MSG]Violation in class GORMEnhancingBeanPostProcessor. Method parameter [beanName] is never referenced in the method postProcessAfterInitialization of class org.codehaus.groovy.grails.orm.hibernate.cfg.GORMEnhancingBeanPostProcessor |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 373 | [SRC]private handleMethodMissing = { String name, args -> [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.HibernateMappingBuilder. The cyclomatic complexity for method [handleMethodMissing] is [46] |
UnnecessaryObjectReferences | 3 | 382 | [SRC]property.cascade = namedArgs.cascade ?: property.cascade [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 383 | [SRC]property.sort = namedArgs.sort ?: property.sort [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 384 | [SRC]property.order = namedArgs.order ?: property.order [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 385 | [SRC]property.batchSize = namedArgs.batchSize instanceof Inte..ty.batchSize [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 386 | [SRC]property.ignoreNotFound = namedArgs.ignoreNotFound != nu..noreNotFound [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 387 | [SRC]property.typeParams = namedArgs.params ?: property.typeParams [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 577 | [SRC]column.length = args["length"] ?: -1 [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 578 | [SRC]column.precision = args["precision"] ?: -1 [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 579 | [SRC]column.scale = args["scale"] ?: -1 [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 231 | [SRC]def preparedClosure = getPreparedCriteriaClosure() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.NamedCriteriaProxy. getPreparedCriteriaClosure() can probably be rewritten as preparedCriteriaClosure |
UnnecessaryGetter | 3 | 287 | [SRC]def previousClosure = previousInChain.getPreparedCriteriaClosure() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.NamedCriteriaProxy. getPreparedCriteriaClosure() can probably be rewritten as preparedCriteriaClosure |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 79 | [SRC]static doWithSpring = { [MSG]Violation in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport. The cyclomatic complexity for method [doWithSpring] is [55] |
UnusedVariable | 2 | 186 | [SRC]def cacheClass = getClass().classLoader.loadClass(cacheProvider) [MSG]The variable [cacheClass] in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport is not used |
UnusedVariable | 2 | 349 | [SRC]String prefix = isDefault ? '' : datasourceName + '_' [MSG]The variable [prefix] in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport is not used |
UnusedPrivateMethod | 2 | 590 | [SRC]private static List<String> removeNullNames(Map query) { [MSG]The method removeNullNames is not used within HibernatePluginSupport.groovy |
ThrowExceptionFromFinallyBlock | 2 | 612 | [SRC]throw e [MSG]Throwing an exception from a finally block can hide an underlying error |
EmptyCatchBlock | 2 | 638 | [SRC]} catch (TypeMismatchException e) { [MSG]The catch block is empty |
EmptyCatchBlock | 2 | 669 | [SRC]} catch (FileNotFoundException fnfe) { [MSG]The catch block is empty |
UnusedImport | 3 | 32 | [SRC]import org.codehaus.groovy.grails.orm.hibernate.cfg.Defa..onfiguration [MSG]The [org.codehaus.groovy.grails.orm.hibernate.cfg.DefaultGrailsDomainConfiguration] import is never referenced |
UnusedImport | 3 | 67 | [SRC]import org.codehaus.groovy.grails.domain.GrailsDomainCla..istentEntity [MSG]The [org.codehaus.groovy.grails.domain.GrailsDomainClassPersistentEntity] import is never referenced |
UnnecessaryGetter | 3 | 81 | [SRC]if (getSpringConfig().containsBean(ConstraintsEvaluator.BEAN_NAME)) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport. getSpringConfig() can probably be rewritten as springConfig |
UnnecessaryGetter | 3 | 96 | [SRC]if (getSpringConfig().containsBean('dataSource')) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport. getSpringConfig() can probably be rewritten as springConfig |
UnnecessaryGetter | 3 | 107 | [SRC]new PersistentConstraintFactory(getSpringConfig().getUnr..onContext(), [MSG]Violation in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport. getUnrefreshedApplicationContext() can probably be rewritten as unrefreshedApplicationContext |
UnnecessaryGetter | 3 | 107 | [SRC]new PersistentConstraintFactory(getSpringConfig().getUnr..onContext(), [MSG]Violation in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport. getSpringConfig() can probably be rewritten as springConfig |
UnnecessaryCollectCall | 3 | 252 | [SRC]hibConfigLocations.addAll(explicitLocations.collect { it.toString() }) [MSG]Violation in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport. The call to collect could probably be rewritten as a spread expression: explicitLocations*.toString() |
UnnecessaryGetter | 3 | 320 | [SRC]if (getSpringConfig().containsBean("controllerHandlerMappings")) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport. getSpringConfig() can probably be rewritten as springConfig |
UnnecessaryGetter | 3 | 323 | [SRC]if (getSpringConfig().containsBean("annotationHandlerMapping")) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport. getSpringConfig() can probably be rewritten as springConfig |
UnnecessaryGetter | 3 | 510 | [SRC]for (PersistentEntity entity in mappingContext.getPersis..ntities()) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport. getPersistentEntities() can probably be rewritten as persistentEntities |
UnnecessaryObjectReferences | 3 | 701 | [SRC]validateMethods.remove 'setValidateMethod' [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 31 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.async.ControllersAsyncGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 25 | [SRC]import org.codehaus.groovy.grails.web.sitemesh.SpringMVCViewDecorator [MSG]The [org.codehaus.groovy.grails.web.sitemesh.SpringMVCViewDecorator] import is never referenced |
UnnecessaryGetter | 3 | 45 | [SRC]def applicationContext = webRequest.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.async.GrailsAsyncContext. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 58 | [SRC]GrailsWebRequest webRequest = new GrailsWebRequest(reque..etContext()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.async.GrailsAsyncContext. getServletContext() can probably be rewritten as servletContext |
UnnecessaryGetter | 3 | 84 | [SRC]def targetResponse = bufferingResponse.getTargetResponse() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.async.GrailsAsyncContext. getTargetResponse() can probably be rewritten as targetResponse |
UnnecessaryGetter | 3 | 85 | [SRC]def content = bufferingResponse.getContent() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.async.GrailsAsyncContext. getContent() can probably be rewritten as content |
UnnecessaryGetter | 3 | 91 | [SRC]content.writeOriginal(targetResponse.getWriter()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.async.GrailsAsyncContext. getWriter() can probably be rewritten as writer |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 39 | [SRC]AsyncContext startAsync(instance) { [MSG]Violation in class ControllersAsyncApi. Method parameter [instance] is never referenced in the method startAsync of class org.codehaus.groovy.grails.plugins.web.async.api.ControllersAsyncApi |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 32 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.CodecsGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryGetter | 3 | 72 | [SRC]def encodeMethod = codecClass.getEncodeMethod() [MSG]Violation in class org.codehaus.groovy.grails.plugins.CodecsGrailsPlugin. getEncodeMethod() can probably be rewritten as encodeMethod |
UnnecessaryGetter | 3 | 84 | [SRC]def decodeMethod = codecClass.getDecodeMethod() [MSG]Violation in class org.codehaus.groovy.grails.plugins.CodecsGrailsPlugin. getDecodeMethod() can probably be rewritten as decodeMethod |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 18 | [SRC]import org.codehaus.groovy.runtime.DefaultGroovyMethods [MSG]The [org.codehaus.groovy.runtime.DefaultGroovyMethods] import is never referenced |
UnnecessaryGetter | 3 | 49 | [SRC]return Base64.decodeBase64(theTarget.toString().getBytes()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.codecs.Base64Codec. getBytes() can probably be rewritten as bytes |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 32 | [SRC]theTarget.each() { [MSG]Violation in class org.codehaus.groovy.grails.plugins.codecs.HexCodec. Parentheses in the 'each' method call are unnecessary and can be removed. |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 18 | [SRC]import java.security.MessageDigest [MSG]The [java.security.MessageDigest] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGroovyImport | 3 | 18 | [SRC]import java.net.URLEncoder |
UnnecessaryGroovyImport | 3 | 19 | [SRC]import java.net.URLDecoder |
UnnecessaryGetter | 3 | 30 | [SRC]URLEncoder.encode(obj.toString(), URLCodec.getEncoding()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.codecs.URLCodec. getEncoding() can probably be rewritten as encoding |
UnnecessaryGetter | 3 | 34 | [SRC]URLDecoder.decode(obj.toString(), URLCodec.getEncoding()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.codecs.URLCodec. getEncoding() can probably be rewritten as encoding |
UnnecessaryDefInMethodDeclaration | 3 | 37 | [SRC]private static def getEncoding() { [MSG]Violation in class org.codehaus.groovy.grails.plugins.codecs.URLCodec. The def keyword is unneeded when a method is marked private |
UnnecessaryGetter | 3 | 38 | [SRC]def request = RequestContextHolder.getRequestAttributes()?.request [MSG]Violation in class org.codehaus.groovy.grails.plugins.codecs.URLCodec. getRequestAttributes() can probably be rewritten as requestAttributes |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 14 | [SRC]protected void setUp() { [MSG]Violation in class Base64CodecTests. The method setUp() does not call super.setUp() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertNullInsteadOfAssertEquals | 3 | 21 | [SRC]assertEquals(codec.encode(null), null) [MSG]Violation in class org.codehaus.groovy.grails.web.codecs.HexCodecTests. assertEquals can be simplified using assertNull |
UseAssertNullInsteadOfAssertEquals | 3 | 30 | [SRC]assertEquals(codec.decode(null), null) [MSG]Violation in class org.codehaus.groovy.grails.web.codecs.HexCodecTests. assertEquals can be simplified using assertNull |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 14 | [SRC]protected void setUp() { [MSG]Violation in class URLCodecTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 19 | [SRC]protected void tearDown() { [MSG]Violation in class URLCodecTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 109 | [SRC]def basedir = System.getProperty("base.dir") [MSG]The variable [basedir] in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPlugin is not used |
UnusedVariable | 2 | 110 | [SRC]def grailsEnv = Environment.current.name [MSG]The variable [grailsEnv] in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPlugin is not used |
UnusedMethodParameter | 2 | 201 | [SRC]static void enhanceDomainWithBinding(ApplicationContext ..aClass mc) { [MSG]Violation in class ControllersGrailsPlugin. Method parameter [ctx] is never referenced in the method enhanceDomainWithBinding of class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPlugin |
UnnecessaryGetter | 3 | 50 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryCallForLastElement | 3 | 113 | [SRC]mappingElement = mappingElement[mappingElement.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to mappingElement.last() or mappingElement[-1] |
UnnecessaryCallForLastElement | 3 | 113 | [SRC]mappingElement = mappingElement[mappingElement.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to mappingElement.last() or mappingElement[-1] |
UnnecessaryCallForLastElement | 3 | 125 | [SRC]def lastFilter = filters[filters.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to filters.last() or filters[-1] |
UnnecessaryCallForLastElement | 3 | 125 | [SRC]def lastFilter = filters[filters.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to filters.last() or filters[-1] |
UnnecessaryCallForLastElement | 3 | 126 | [SRC]def lastFilterMapping = filterMappings[filterMappings.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to filterMappings.last() or filterMappings[-1] |
UnnecessaryCallForLastElement | 3 | 126 | [SRC]def lastFilterMapping = filterMappings[filterMappings.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to filterMappings.last() or filterMappings[-1] |
UnnecessaryGetter | 3 | 169 | [SRC]Object gspEnc = application.getFlatConfig().get("grails....encoding"); [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPlugin. getFlatConfig() can probably be rewritten as flatConfig |
UnnecessaryDotClass | 3 | 175 | [SRC]def redirectListeners = ctx.getBeansOfType(RedirectEvent..tener.class) [MSG]RedirectEventListener.class can be rewritten as RedirectEventListener |
UnnecessaryGetter | 3 | 178 | [SRC]Object o = application.getFlatConfig().get(RedirectDynam..JSESSIONID); [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPlugin. getFlatConfig() can probably be rewritten as flatConfig |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 46 | [SRC]def flash = webRequest.getFlashScope() [MSG]Violation in class org.codehaus.groovy.grails.web.metaclass.ChainMethod. getFlashScope() can probably be rewritten as flashScope |
UnnecessaryGetter | 3 | 65 | [SRC]def appCtx = webRequest.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.web.metaclass.ChainMethod. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 74 | [SRC]def response = webRequest.getCurrentResponse() [MSG]Violation in class org.codehaus.groovy.grails.web.metaclass.ChainMethod. getCurrentResponse() can probably be rewritten as currentResponse |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
SynchronizedMethod | 2 | 66 | [SRC]protected synchronized boolean isTokenValid(GrailsWebReq..ebRequest) { [MSG]Violation in class WithFormMethod. The method isTokenValid is synchronized at the method level |
SynchronizedMethod | 2 | 88 | [SRC]protected synchronized resetToken(GrailsWebRequest webRequest) { [MSG]Violation in class WithFormMethod. The method resetToken is synchronized at the method level |
UnusedMethodParameter | 2 | 118 | [SRC]protected Object invalidTokenInternal(Closure callable) { model } [MSG]Violation in class ValidResponseHandler. Method parameter [callable] is never referenced in the method invalidTokenInternal of class org.codehaus.groovy.grails.web.metaclass.ValidResponseHandler |
UnusedImport | 3 | 17 | [SRC]import javax.servlet.http.HttpServletRequest [MSG]The [javax.servlet.http.HttpServletRequest] import is never referenced |
UnnecessaryGetter | 3 | 67 | [SRC]final request = webRequest.getCurrentRequest() [MSG]Violation in class org.codehaus.groovy.grails.web.metaclass.WithFormMethod. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 89 | [SRC]final request = webRequest.getCurrentRequest() [MSG]Violation in class org.codehaus.groovy.grails.web.metaclass.WithFormMethod. getCurrentRequest() can probably be rewritten as currentRequest |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 85 | [SRC]static void prepareCommandObjectBindingAction(Method act..ntext ctx) { [MSG]Violation in class WebMetaUtils. Method parameter [action] is never referenced in the method prepareCommandObjectBindingAction of class org.codehaus.groovy.grails.web.plugins.support.WebMetaUtils |
UnusedMethodParameter | 2 | 230 | [SRC]static registerCommonWebProperties(MetaClass mc, GrailsA..plication) { [MSG]Violation in class WebMetaUtils. Method parameter [application] is never referenced in the method registerCommonWebProperties of class org.codehaus.groovy.grails.web.plugins.support.WebMetaUtils |
UnnecessaryGetter | 3 | 101 | [SRC]def paramTypes = originalAction.getParameterTypes() [MSG]Violation in class org.codehaus.groovy.grails.web.plugins.support.WebMetaUtils. getParameterTypes() can probably be rewritten as parameterTypes |
UnnecessaryGetter | 3 | 137 | [SRC]constrainedProperty.getPropertyName()), errors) [MSG]Violation in class org.codehaus.groovy.grails.web.plugins.support.WebMetaUtils. getPropertyName() can probably be rewritten as propertyName |
UnnecessarySubstring | 3 | 164 | [SRC]return result.substring(0, result.size() - 8) [MSG]Violation in class org.codehaus.groovy.grails.web.plugins.support.WebMetaUtils. The String.substring(int, int) method can be replaced with the subscript operator |
UnnecessaryObjectReferences | 3 | 250 | [SRC]mc.getResponse = responseObject [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 252 | [SRC]mc.getGrailsAttributes = grailsAttrsObject [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 254 | [SRC]mc.getGrailsApplication = {-> RCH.currentRequestAttribut..pplication } [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 256 | [SRC]mc.getActionName = {-> RCH.currentRequestAttributes().actionName } [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 257 | [SRC]mc.getControllerName = {-> RCH.currentRequestAttributes(..rollerName } [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 258 | [SRC]mc.getWebRequest = {-> RCH.currentRequestAttributes() } [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 264 | [SRC]final MetaClass mc = taglib.getMetaClass() [MSG]Violation in class org.codehaus.groovy.grails.web.plugins.support.WebMetaUtils. getMetaClass() can probably be rewritten as metaClass |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 40 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.converters.ConvertersGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryGetter | 3 | 52 | [SRC]controllers: GrailsUtil.getGrailsVersion(), [MSG]Violation in class org.codehaus.groovy.grails.plugins.converters.ConvertersGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryGetter | 3 | 53 | [SRC]domainClass: GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.converters.ConvertersGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 44 | [SRC]static void enhanceApplication(GrailsApplication applica..onContext) { [MSG]Violation in class ConvertersPluginSupport. Method parameter [application] is never referenced in the method enhanceApplication of class org.codehaus.groovy.grails.plugins.converters.ConvertersPluginSupport |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 36 | [SRC]def request = params.getRequest() [MSG]Violation in class org.codehaus.groovy.grails.web.converters.JSONParsingParameterCreationListener. getRequest() can probably be rewritten as request |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 35 | [SRC]def request = params.getRequest() [MSG]Violation in class org.codehaus.groovy.grails.web.converters.XMLParsingParameterCreationListener. getRequest() can probably be rewritten as request |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
ImportFromSamePackage | 3 | 3 | [SRC]import org.codehaus.groovy.grails.web.converters.configu..nInitializer |
ImportFromSamePackage | 3 | 4 | [SRC]import org.codehaus.groovy.grails.web.converters.configu..rationHolder |
ImportFromSamePackage | 3 | 6 | [SRC]import org.codehaus.groovy.grails.web.converters.configu..onfiguration |
ImportFromSamePackage | 3 | 7 | [SRC]import org.codehaus.groovy.grails.web.converters.configu..onfiguration |
UnnecessaryDotClass | 3 | 15 | [SRC]def defcfg = ConvertersConfigurationHolder.getConverterC..(JSON.class) [MSG]JSON.class can be rewritten as JSON |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 72 | [SRC]def createDatasource = { String datasourceName, ds -> [MSG]Violation in class org.codehaus.groovy.grails.plugins.datasource.DataSourceGrailsPlugin. The cyclomatic complexity for method [createDatasource] is [22] |
ClassForName | 2 | 186 | [SRC]codecClass = Class.forName(encryptionCodec, true, applic..classLoader) [MSG]Violation in class org.codehaus.groovy.grails.plugins.datasource.DataSourceGrailsPlugin. Methods calls to Class.forName(...) can create resource leaks and should almost always be replaced with calls to ClassLoader.loadClass(...) |
EmptyCatchBlock | 2 | 275 | [SRC]} catch (e) { [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 46 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.datasource.DataSourceGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryGetter | 3 | 47 | [SRC]def dependsOn = [core: GrailsUtil.getGrailsVersion()] [MSG]Violation in class org.codehaus.groovy.grails.plugins.datasource.DataSourceGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryElseStatement | 3 | 191 | [SRC]else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
UnnecessaryCallForLastElement | 3 | 221 | [SRC]listeners[listeners.size() - 1] + { [MSG]Unnecessarily complex access of last element. This can be simplified to listeners.last() or listeners[-1] |
UnnecessaryCallForLastElement | 3 | 221 | [SRC]listeners[listeners.size() - 1] + { [MSG]Unnecessarily complex access of last element. This can be simplified to listeners.last() or listeners[-1] |
UnnecessaryGetter | 3 | 269 | [SRC]connection = dataSource.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.plugins.datasource.DataSourceGrailsPlugin. getConnection() can probably be rewritten as connection |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 34 | [SRC]PersistentEntity entity = ctx.getPersistentEntity(cls.getName()) [MSG]Violation in class org.codehaus.groovy.grails.domain.GormApiSupport. getName() can probably be rewritten as name |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 113 | [SRC]} catch (e) { [MSG]The catch block is empty |
CyclomaticComplexity | 2 | 289 | [SRC]public static addRelationshipManagementMethods(GrailsDom..ntext ctx) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.DomainClassGrailsPlugin. The cyclomatic complexity for method [addRelationshipManagementMethods] is [27] |
UnusedImport | 3 | 19 | [SRC]import grails.util.ClosureToMapPopulator [MSG]The [grails.util.ClosureToMapPopulator] import is never referenced |
UnusedImport | 3 | 40 | [SRC]import org.codehaus.groovy.grails.commons.spring.GrailsR..Configurator [MSG]The [org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator] import is never referenced |
UnnecessaryGetter | 3 | 55 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.DomainClassGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryPackageReference | 3 | 112 | [SRC]org.grails.datastore.mapping.reflect.ClassPropertyFetche..hers.clear() [MSG]The org.grails.datastore.mapping.reflect.ClassPropertyFetcher class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 112 | [SRC]org.grails.datastore.mapping.reflect.ClassPropertyFetche..hers.clear() [MSG]The org.grails.datastore.mapping.reflect.ClassPropertyFetcher class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryGetter | 3 | 170 | [SRC]for (GrailsDomainClass component in dc.getComponents()) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.DomainClassGrailsPlugin. getComponents() can probably be rewritten as components |
UnnecessaryGetter | 3 | 225 | [SRC]def attributes = rch.getRequestAttributes() [MSG]Violation in class org.codehaus.groovy.grails.plugins.DomainClassGrailsPlugin. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 232 | [SRC]def attributes = rch.getRequestAttributes() [MSG]Violation in class org.codehaus.groovy.grails.plugins.DomainClassGrailsPlugin. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 261 | [SRC]delegate.setErrors (new BeanPropertyBindingResult(delega...getName())) [MSG]Violation in class org.codehaus.groovy.grails.plugins.DomainClassGrailsPlugin. getName() can probably be rewritten as name |
UnnecessaryElseStatement | 3 | 306 | [SRC]else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 19 | [SRC]import org.springframework.validation.BeanPropertyBindingResult [MSG]The [org.springframework.validation.BeanPropertyBindingResult] import is never referenced |
UnnecessaryGetter | 3 | 41 | [SRC]prop.validate(object, object.getProperty(prop.getPropert..localErrors) [MSG]Violation in class org.codehaus.groovy.grails.plugins.DomainClassPluginSupport. getPropertyName() can probably be rewritten as propertyName |
UnnecessaryGetter | 3 | 46 | [SRC]def fieldName = localError.getField() [MSG]Violation in class org.codehaus.groovy.grails.plugins.DomainClassPluginSupport. getField() can probably be rewritten as field |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
ConsecutiveStringConcatenation | 3 | 100 | [SRC]"Invalid filter definition in ${filtersDefinition.getCla..} - trying " [MSG]String concatenation in class org.codehaus.groovy.grails.plugins.web.filters.FilterConfig can be joined into a single literal |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 116 | [SRC]boolean preHandle(HttpServletRequest request, HttpServle.. Object o) { [MSG]Violation in class FilterToHandlerAdapter. Method parameter [o] is never referenced in the method preHandle of class org.codehaus.groovy.grails.plugins.web.filters.FilterToHandlerAdapter |
UnusedMethodParameter | 2 | 138 | [SRC]void postHandle(HttpServletRequest request, HttpServletR..elAndView) { [MSG]Violation in class FilterToHandlerAdapter. Method parameter [o] is never referenced in the method postHandle of class org.codehaus.groovy.grails.plugins.web.filters.FilterToHandlerAdapter |
UnusedMethodParameter | 2 | 182 | [SRC]void afterCompletion(HttpServletRequest request, HttpSer...Exception { [MSG]Violation in class FilterToHandlerAdapter. Method parameter [response] is never referenced in the method afterCompletion of class org.codehaus.groovy.grails.plugins.web.filters.FilterToHandlerAdapter |
UnusedMethodParameter | 2 | 182 | [SRC]void afterCompletion(HttpServletRequest request, HttpSer...Exception { [MSG]Violation in class FilterToHandlerAdapter. Method parameter [o] is never referenced in the method afterCompletion of class org.codehaus.groovy.grails.plugins.web.filters.FilterToHandlerAdapter |
UnnecessaryGetter | 3 | 112 | [SRC]if (!uri) uri = request.getRequestURI() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.filters.FilterToHandlerAdapter. getRequestURI() can probably be rewritten as requestURI |
UnnecessaryGetter | 3 | 113 | [SRC]return uri.substring(request.getContextPath().length()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.filters.FilterToHandlerAdapter. getContextPath() can probably be rewritten as contextPath |
UnnecessarySubstring | 3 | 113 | [SRC]return uri.substring(request.getContextPath().length()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.filters.FilterToHandlerAdapter. The String.substring(int) method can be replaced with the subscript operator |
UnnecessaryGetter | 3 | 223 | [SRC]actionName = controllerClass?.getDefaultAction() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.filters.FilterToHandlerAdapter. getDefaultAction() can probably be rewritten as defaultAction |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 100 | [SRC]def filterClass = applicationContext.getBean("${c.fullName}Class") [MSG]The variable [filterClass] in class org.codehaus.groovy.grails.plugins.web.filters.FiltersGrailsPlugin is not used |
UnusedVariable | 2 | 149 | [SRC]def filterClass = applicationContext.getBean("${c.fullName}Class") [MSG]The variable [filterClass] in class org.codehaus.groovy.grails.plugins.web.filters.FiltersGrailsPlugin is not used |
UnnecessaryGetter | 3 | 40 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.filters.FiltersGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 89 | [SRC]def doWithSpring = { [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.GroovyPagesGrailsPlugin. The cyclomatic complexity for method [doWithSpring] is [23] |
UnusedVariable | 2 | 289 | [SRC]GrailsPluginManager pluginManager = getManager() [MSG]The variable [pluginManager] in class org.codehaus.groovy.grails.plugins.web.GroovyPagesGrailsPlugin is not used |
UnusedImport | 3 | 25 | [SRC]import org.codehaus.groovy.grails.commons.GrailsClassUtils [MSG]The [org.codehaus.groovy.grails.commons.GrailsClassUtils] import is never referenced |
UnusedImport | 3 | 26 | [SRC]import org.codehaus.groovy.grails.commons.GrailsTagLibClass [MSG]The [org.codehaus.groovy.grails.commons.GrailsTagLibClass] import is never referenced |
UnnecessaryGetter | 3 | 61 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.GroovyPagesGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessarySelfAssignment | 3 | 167 | [SRC]groovyPageLocator = groovyPageLocator [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 167 | [SRC]groovyPageLocator = groovyPageLocator [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 172 | [SRC]jspTagLibraryResolver = jspTagLibraryResolver [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 172 | [SRC]jspTagLibraryResolver = jspTagLibraryResolver [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 178 | [SRC]groovyPageLocator = groovyPageLocator [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 178 | [SRC]groovyPageLocator = groovyPageLocator [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 202 | [SRC]groovyPageLocator = groovyPageLocator [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 202 | [SRC]groovyPageLocator = groovyPageLocator [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessaryGetter | 3 | 269 | [SRC]if (Modifier.isAbstract(superClass.getModifiers()) && !s..Enhanced)) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.GroovyPagesGrailsPlugin. getModifiers() can probably be rewritten as modifiers |
UnnecessaryGetter | 3 | 278 | [SRC]nonEnhancedClasses.each { enhancer.enhance it.getMetaClass() } [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.GroovyPagesGrailsPlugin. getMetaClass() can probably be rewritten as metaClass |
UnnecessaryGetter | 3 | 289 | [SRC]GrailsPluginManager pluginManager = getManager() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.GroovyPagesGrailsPlugin. getManager() can probably be rewritten as manager |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 26 | [SRC]import org.codehaus.groovy.runtime.DefaultGroovyMethods; [MSG]The [org.codehaus.groovy.runtime.DefaultGroovyMethods] import is never referenced |
UnnecessaryElseStatement | 3 | 80 | [SRC]} else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
UnnecessaryElseStatement | 3 | 203 | [SRC]} else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
UnnecessaryGetter | 3 | 233 | [SRC]def writer = getOut() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ApplicationTagLib. getOut() can probably be rewritten as out |
UnnecessaryElseStatement | 3 | 398 | [SRC]else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryCollectCall | 3 | 274 | [SRC]ISO3166_3.entrySet().sort { a, b -> a.value.compareTo(b...) { it.key } [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.CountryTagLib. The call to collect could probably be rewritten as a spread expression: ISO3166_3.entrySet().sort(<not implemented yet for class: org.codehaus.groovy.ast.expr.ClosureExpression>)*.key |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 274 | [SRC]ISO3166_3.entrySet().sort { a, b -> a.value.compareTo(b...) { it.key } [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.CountryTagLib. Parentheses in the 'collect' method call are unnecessary and can be removed. |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 477 | [SRC]Closure datePicker = { attrs -> [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormTagLib. The cyclomatic complexity for method [datePicker] is [58] |
AddEmptyString | 2 | 667 | [SRC]def h = '' + i [MSG]Concatenating an empty string is an inefficient way to convert an object to a String. Consider using toString() or String.valueOf(Object) |
AddEmptyString | 2 | 696 | [SRC]def m = '' + i [MSG]Concatenating an empty string is an inefficient way to convert an object to a String. Consider using toString() or String.valueOf(Object) |
CyclomaticComplexity | 2 | 813 | [SRC]Closure select = { attrs -> [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormTagLib. The cyclomatic complexity for method [select] is [26] |
EmptyCatchBlock | 2 | 952 | [SRC]catch (e) { [MSG]The catch block is empty |
UnusedImport | 3 | 25 | [SRC]import org.codehaus.groovy.grails.web.util.StreamCharBuffer [MSG]The [org.codehaus.groovy.grails.web.util.StreamCharBuffer] import is never referenced |
UnnecessaryGetter | 3 | 319 | [SRC]def writer = getOut() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormTagLib. getOut() can probably be rewritten as out |
UnnecessarySelfAssignment | 3 | 478 | [SRC]def out = out // let x = x ? [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 478 | [SRC]def out = out // let x = x ? [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessaryGetter | 3 | 485 | [SRC]xdefault = DateFormat.getInstance().parse(xdefault) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormTagLib. getInstance() can probably be rewritten as instance |
UnnecessaryGetter | 3 | 723 | [SRC]attrs.from = TimeZone.getAvailableIDs() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormTagLib. getAvailableIDs() can probably be rewritten as availableIDs |
UnnecessaryGetter | 3 | 724 | [SRC]attrs.value = (attrs.value ? attrs.value.ID : TimeZone.g..efault().ID) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormTagLib. getDefault() can probably be rewritten as default |
UnnecessaryGetter | 3 | 755 | [SRC]attrs.from = Locale.getAvailableLocales() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormTagLib. getAvailableLocales() can probably be rewritten as availableLocales |
UnnecessaryGetter | 3 | 820 | [SRC]def messageSource = grailsAttributes.getApplicationConte..sageSource") [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormTagLib. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 227 | [SRC]Closure formatNumber = { attrs -> [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormatTagLib. The cyclomatic complexity for method [formatNumber] is [26] |
UnnecessaryGetter | 3 | 162 | [SRC]timeZone = TimeZone.getDefault() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormatTagLib. getDefault() can probably be rewritten as default |
UnnecessaryGetter | 3 | 281 | [SRC]dcfs = decimalFormat.getDecimalFormatSymbols() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormatTagLib. getDecimalFormatSymbols() can probably be rewritten as decimalFormatSymbols |
UnnecessaryGetter | 3 | 338 | [SRC]locale = Locale.getDefault() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.FormatTagLib. getDefault() can probably be rewritten as default |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 55 | [SRC]} catch (e) { [MSG]The catch block is empty |
UnusedPrivateMethod | 2 | 62 | [SRC]private void initHasResourceProcessor() { [MSG]The method initHasResourceProcessor is not used within JavascriptTagLib.groovy |
UnnecessarySubstring | 3 | 162 | [SRC]reqResCtx = (requestPluginContext.startsWith("/") ? requ..ntext) + '/' [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.JavascriptTagLib. The String.substring(int) method can be replaced with the subscript operator |
UnnecessaryGetter | 3 | 193 | [SRC]getProvider().doRemoteFunction(owner, attrs, out) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.JavascriptTagLib. getProvider() can probably be rewritten as provider |
UnnecessaryGetter | 3 | 349 | [SRC]def p = getProvider() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.JavascriptTagLib. getProvider() can probably be rewritten as provider |
UnnecessaryGetter | 3 | 388 | [SRC]def p = getProvider() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.JavascriptTagLib. getProvider() can probably be rewritten as provider |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 329 | [SRC]Closure paginate = { attrs -> [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. The cyclomatic complexity for method [paginate] is [40] |
UnnecessaryGetter | 3 | 52 | [SRC]return getRequest().getAttribute(PAGE) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getRequest() can probably be rewritten as request |
UnnecessaryGetter | 3 | 107 | [SRC]def oldPage = getPage() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getPage() can probably be rewritten as page |
UnnecessaryGetter | 3 | 151 | [SRC]def parser = getFactory().getPageParser(contentType) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getFactory() can probably be rewritten as factory |
UnnecessaryGetter | 3 | 158 | [SRC]def decoratorMapper = getFactory().getDecoratorMapper() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getDecoratorMapper() can probably be rewritten as decoratorMapper |
UnnecessaryGetter | 3 | 158 | [SRC]def decoratorMapper = getFactory().getDecoratorMapper() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getFactory() can probably be rewritten as factory |
UnnecessaryGetter | 3 | 165 | [SRC]def t = groovyPagesTemplateEngine.createTemplate(d.getPage()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getPage() can probably be rewritten as page |
UnnecessaryGetter | 3 | 177 | [SRC]return FactoryHolder.getFactory() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getFactory() can probably be rewritten as factory |
UnnecessaryGetter | 3 | 197 | [SRC]def htmlPage = getPage() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getPage() can probably be rewritten as page |
UnnecessarySubstring | 3 | 216 | [SRC]out << propertyName.substring(propertyName.lastIndexOf('.') + 1) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. The String.substring(int) method can be replaced with the subscript operator |
UnnecessaryGetter | 3 | 244 | [SRC]def htmlPage = getPage() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getPage() can probably be rewritten as page |
UnnecessaryGetter | 3 | 291 | [SRC]getPage().writeBody(out) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getPage() can probably be rewritten as page |
UnnecessaryGetter | 3 | 302 | [SRC]getPage().writeHead(out) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getPage() can probably be rewritten as page |
UnnecessaryGetter | 3 | 565 | [SRC]groovyPagesTemplateRenderer.render(getWebRequest(), getP..y, getOut()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getWebRequest() can probably be rewritten as webRequest |
UnnecessaryGetter | 3 | 565 | [SRC]groovyPagesTemplateRenderer.render(getWebRequest(), getP..y, getOut()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getPageScope() can probably be rewritten as pageScope |
UnnecessaryGetter | 3 | 565 | [SRC]groovyPagesTemplateRenderer.render(getWebRequest(), getP..y, getOut()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.RenderTagLib. getOut() can probably be rewritten as out |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 172 | [SRC]def content = captureTagContent(out, 'meta', attrs, body, true) [MSG]The variable [content] in class org.codehaus.groovy.grails.plugins.web.taglib.SitemeshTagLib is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryCollectCall | 3 | 115 | [SRC]checkList = model.findAll {it.value?.errors instanceof E..t {it.value} [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. The call to collect could probably be rewritten as a spread expression: model.findAll(<not implemented yet for class: org.codehaus.groovy.ast.expr.ClosureExpression>)*.value |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 249 | [SRC]mkp.errors() { [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. Parentheses in the 'errors' method call are unnecessary and can be removed. |
UnnecessarySubstring | 3 | 348 | [SRC]def againstClass = attrs.against ?: form.substring(0,1)...substring(1) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. The String.substring(int, int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 348 | [SRC]def againstClass = attrs.against ?: form.substring(0,1)...substring(1) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. The String.substring(int) method can be replaced with the subscript operator |
UnnecessaryCollectCall | 3 | 356 | [SRC]appliedConstraints += it.collect{ it.appliedConstraints } [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. The call to collect could probably be rewritten as a spread expression: it*.appliedConstraints |
UnnecessarySubstring | 3 | 384 | [SRC]def scriptName = "org/apache/commons/validator/javascrip..g(1) + ".js" [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. The String.substring(int, int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 384 | [SRC]def scriptName = "org/apache/commons/validator/javascrip..g(1) + ".js" [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. The String.substring(int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 410 | [SRC]def validateType = k.substring(0,1).toUpperCase() + k.substring(1) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. The String.substring(int, int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 410 | [SRC]def validateType = k.substring(0,1).toUpperCase() + k.substring(1) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. The String.substring(int) method can be replaced with the subscript operator |
UnnecessaryGetter | 3 | 426 | [SRC]PropertyEditorRegistry registry = RequestContextHolder.c..orRegistry() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib. getPropertyEditorRegistry() can probably be rewritten as propertyEditorRegistry |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 46 | [SRC]String version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.i18n.I18nGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 181 | [SRC]Logger root = Logger.getRootLogger() [MSG]Violation in class org.codehaus.groovy.grails.plugins.log4j.Log4jConfig. getRootLogger() can probably be rewritten as rootLogger |
UnnecessaryGetter | 3 | 229 | [SRC]BuildSettings settings = BuildSettingsHolder.getSettings() [MSG]Violation in class org.codehaus.groovy.grails.plugins.log4j.Log4jConfig. getSettings() can probably be rewritten as settings |
UnnecessaryGetter | 3 | 230 | [SRC]def targetDir = settings?.getProjectTargetDir() [MSG]Violation in class org.codehaus.groovy.grails.plugins.log4j.Log4jConfig. getProjectTargetDir() can probably be rewritten as projectTargetDir |
UnnecessaryGetter | 3 | 240 | [SRC]def root = Logger.getRootLogger() [MSG]Violation in class org.codehaus.groovy.grails.plugins.log4j.Log4jConfig. getRootLogger() can probably be rewritten as rootLogger |
UnnecessaryGetter | 3 | 320 | [SRC]LogLog.error "Appender $appender not found configuring l...getName()}" [MSG]Violation in class org.codehaus.groovy.grails.plugins.log4j.Log4jConfig. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 375 | [SRC]Logger.getRootLogger().removeAppender name [MSG]Violation in class org.codehaus.groovy.grails.plugins.log4j.Log4jConfig. getRootLogger() can probably be rewritten as rootLogger |
UnnecessaryDefInMethodDeclaration | 3 | 444 | [SRC]def EnvironmentsLog4JConfig(Log4jConfig config) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.log4j.EnvironmentsLog4JConfig. The def keyword is unneeded on constructors |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 35 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.log4j.LoggingGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryCallForLastElement | 3 | 55 | [SRC]mappingElement = mappingElement[mappingElement.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to mappingElement.last() or mappingElement[-1] |
UnnecessaryCallForLastElement | 3 | 55 | [SRC]mappingElement = mappingElement[mappingElement.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to mappingElement.last() or mappingElement[-1] |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 50 | [SRC]def withFormat(instance, Closure callable) { [MSG]Violation in class ControllersMimeTypesApi. Method parameter [instance] is never referenced in the method withFormat of class org.codehaus.groovy.grails.plugins.web.api.ControllersMimeTypesApi |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 76 | [SRC]parser.configuredMimeTypes = getMimeTypes() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.api.RequestMimeTypesApi. getMimeTypes() can probably be rewritten as mimeTypes |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateMethodParameter | 2 | 122 | [SRC]private MimeType[] getMimeTypesInternal(HttpServletReque.. response) { [MSG]Violation in class ResponseMimeTypesApi. Method parameter [response] is never referenced in the method getMimeTypesInternal of class org.codehaus.groovy.grails.plugins.web.api.ResponseMimeTypesApi |
UnnecessaryGetter | 3 | 72 | [SRC]HttpServletRequest request = webRequest.getCurrentRequest() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.api.ResponseMimeTypesApi. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 77 | [SRC]def allMimes = getMimeTypes() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.api.ResponseMimeTypesApi. getMimeTypes() can probably be rewritten as mimeTypes |
UnnecessaryGetter | 3 | 79 | [SRC]result = mime ? mime.extension : getMimeTypes()[0].extension [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.api.ResponseMimeTypesApi. getMimeTypes() can probably be rewritten as mimeTypes |
UnnecessaryGetter | 3 | 130 | [SRC]parser.configuredMimeTypes = getMimeTypes() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.api.ResponseMimeTypesApi. getMimeTypes() can probably be rewritten as mimeTypes |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 37 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.mimes.MimeTypesGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 45 | [SRC]def qualifiedMimes = [] [MSG]The variable [qualifiedMimes] in class org.codehaus.groovy.grails.web.mime.DefaultAcceptHeaderParser is not used |
UnnecessaryGetter | 3 | 43 | [SRC]def config = application?.getConfig() [MSG]Violation in class org.codehaus.groovy.grails.web.mime.DefaultAcceptHeaderParser. getConfig() can probably be rewritten as config |
UnnecessaryGetter | 3 | 56 | [SRC]return MimeType.getConfiguredMimeTypes() [MSG]Violation in class org.codehaus.groovy.grails.web.mime.DefaultAcceptHeaderParser. getConfiguredMimeTypes() can probably be rewritten as configuredMimeTypes |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 188 | [SRC]catch (Exception e) { [MSG]The catch block is empty |
UnusedImport | 3 | 29 | [SRC]import org.springframework.beans.factory.config.BeanDefinition [MSG]The [org.springframework.beans.factory.config.BeanDefinition] import is never referenced |
UnnecessaryGetter | 3 | 50 | [SRC]def version = grails.util.GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.scaffolding.ScaffoldingGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 39 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.services.ServicesGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryGetter | 3 | 90 | [SRC]"${serviceClass.propertyName}"(serviceClass.getClazz()) { bean -> [MSG]Violation in class org.codehaus.groovy.grails.plugins.services.ServicesGrailsPlugin. getClazz() can probably be rewritten as clazz |
UnnecessaryGetter | 3 | 158 | [SRC]"$serviceName"(serviceClass.getClazz()) { bean -> [MSG]Violation in class org.codehaus.groovy.grails.plugins.services.ServicesGrailsPlugin. getClazz() can probably be rewritten as clazz |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 31 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ServletsGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateField | 2 | 22 | [SRC]private final Condition waiting = lock.newCondition() [MSG]The field waiting is not used within the class grails.test.AbstractCliTestCase |
JUnitPublicNonTestMethod | 2 | 91 | [SRC]String getOutput() { [MSG]Violation in class AbstractCliTestCase. The method getOutput is public but not a test method |
JUnitPublicNonTestMethod | 2 | 95 | [SRC]void setOutput(String output) { [MSG]Violation in class AbstractCliTestCase. The method setOutput is public but not a test method |
JUnitPublicNonTestMethod | 2 | 103 | [SRC]File getWorkDir() { [MSG]Violation in class AbstractCliTestCase. The method getWorkDir is public but not a test method |
JUnitPublicNonTestMethod | 2 | 107 | [SRC]void setWorkDir(File dir) { [MSG]Violation in class AbstractCliTestCase. The method setWorkDir is public but not a test method |
JUnitPublicNonTestMethod | 2 | 117 | [SRC]void enterInput(String input) { [MSG]Violation in class AbstractCliTestCase. The method enterInput is public but not a test method |
JUnitPublicNonTestMethod | 2 | 127 | [SRC]int waitForProcess() { [MSG]Violation in class AbstractCliTestCase. The method waitForProcess is public but not a test method |
UnusedVariable | 2 | 129 | [SRC]final monitor = "monitor" [MSG]The variable [monitor] in class grails.test.AbstractCliTestCase is not used |
EmptyCatchBlock | 2 | 139 | [SRC]catch (InterruptedException ex) { [MSG]The catch block is empty |
JUnitPublicNonTestMethod | 2 | 214 | [SRC]public boolean isWindows() { [MSG]Violation in class AbstractCliTestCase. The method isWindows is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 58 | [SRC]Class getControllerClass() { [MSG]Violation in class ControllerUnitTestCase. The method getControllerClass is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 37 | [SRC]void setControllerName(String name) { [MSG]Violation in class GroovyPagesTestCase. The method setControllerName is public but not a test method |
JUnitPublicNonTestMethod | 2 | 49 | [SRC]void assertOutputEquals(expected, template, params = [:]..tring() }) { [MSG]Violation in class GroovyPagesTestCase. The method assertOutputEquals is public but not a test method |
JUnitPublicNonTestMethod | 2 | 61 | [SRC]String applyTemplate(template, params = [:]) { [MSG]Violation in class GroovyPagesTestCase. The method applyTemplate is public but not a test method |
JUnitPublicNonTestMethod | 2 | 67 | [SRC]void applyTemplate(StringWriter sw, template, params = [:]) { [MSG]Violation in class GroovyPagesTestCase. The method applyTemplate is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateMethodParameter | 2 | 567 | [SRC]private static void addDynamicFinders(Class clazz, List ..Instances) { [MSG]Violation in class MockUtils. Method parameter [testInstances] is never referenced in the method addDynamicFinders of class grails.test.MockUtils |
UnusedPrivateMethodParameter | 2 | 655 | [SRC]private static void addCountMethods(Class clazz, GrailsD..Instances) { [MSG]Violation in class MockUtils. Method parameter [dc] is never referenced in the method addCountMethods of class grails.test.MockUtils |
UnusedPrivateMethodParameter | 2 | 732 | [SRC]private static void addOtherStaticMethods(Class clazz, L..Instances) { [MSG]Violation in class MockUtils. Method parameter [testInstances] is never referenced in the method addOtherStaticMethods of class grails.test.MockUtils |
CyclomaticComplexity | 2 | 752 | [SRC]private static void addDynamicInstanceMethods(Class claz..Instances) { [MSG]Violation in class grails.test.MockUtils. The cyclomatic complexity for method [addDynamicInstanceMethods] is [24] |
CyclomaticComplexity | 2 | 917 | [SRC]private static void addValidateMethod( [MSG]Violation in class grails.test.MockUtils. The cyclomatic complexity for method [addValidateMethod] is [27] |
CyclomaticComplexity | 2 | 1097 | [SRC]private static processInstances(instances, property, com..tor, args) { [MSG]Violation in class grails.test.MockUtils. The cyclomatic complexity for method [processInstances] is [26] |
UnusedImport | 3 | 42 | [SRC]import org.springframework.validation.BeanPropertyBindingResult [MSG]The [org.springframework.validation.BeanPropertyBindingResult] import is never referenced |
ConstantAssertExpression | 3 | 295 | [SRC]assert false : "'template' attribute must be provided." [MSG]The assert statement within class grails.test.MockUtils has a constant boolean expression [false] |
UnnecessaryGetter | 3 | 315 | [SRC]clazz.metaClass.getSession = {-> mockRequest.getSession() } [MSG]Violation in class grails.test.MockUtils. getSession() can probably be rewritten as session |
UnnecessarySubstring | 3 | 359 | [SRC]def shortName = clazz.name.substring(pos + 1) [MSG]Violation in class grails.test.MockUtils. The String.substring(int) method can be replaced with the subscript operator |
UnnecessaryElseStatement | 3 | 633 | [SRC]} else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
UnnecessaryDotClass | 3 | 945 | [SRC]while (clazz != Object.class) { [MSG]Object.class can be rewritten as Object |
UnnecessaryGetter | 3 | 947 | [SRC]clazz = clazz.getSuperclass() [MSG]Violation in class grails.test.MockUtils. getSuperclass() can probably be rewritten as superclass |
UnnecessaryDotClass | 3 | 1322 | [SRC]if (value instanceof Number && Long.class.equals(targetType)) { [MSG]Long.class can be rewritten as Long |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 85 | [SRC]Class getTestClass() { [MSG]Violation in class MvcUnitTestCase. The method getTestClass is public but not a test method |
UnusedImport | 3 | 17 | [SRC]import grails.util.GrailsNameUtils [MSG]The [grails.util.GrailsNameUtils] import is never referenced |
UnnecessaryDefInMethodDeclaration | 3 | 122 | [SRC]protected def bindMockWebRequest(GrailsMockHttpServletRe..kResponse) { [MSG]Violation in class grails.test.MvcUnitTestCase. The def keyword is unneeded when a method is marked protected |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 65 | [SRC]Class getTagLibClass() { [MSG]Violation in class TagLibUnitTestCase. The method getTagLibClass is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryDotClass | 3 | 153 | [SRC]def validator = applicationContext.getBean(validationBea..dator.class) [MSG]Validator.class can be rewritten as Validator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryDotClass | 3 | 80 | [SRC]CachedIntrospectionResults.clearClassLoader(GrailsUnitTe..classLoader) [MSG]GrailsUnitTestMixin.class can be rewritten as GrailsUnitTestMixin |
UnnecessaryGetter | 3 | 169 | [SRC]result = ScriptBytecodeAdapter.unwrap(gre).getMessage() [MSG]Violation in class grails.test.mixin.support.GrailsUnitTestMixin. getMessage() can probably be rewritten as message |
UnnecessaryGetter | 3 | 173 | [SRC]result = e.getMessage() [MSG]Violation in class grails.test.mixin.support.GrailsUnitTestMixin. getMessage() can probably be rewritten as message |
UnnecessaryGetter | 3 | 201 | [SRC]throw new AssertionFailedError("Closure " + code + " sho..z.getName()) [MSG]Violation in class grails.test.mixin.support.GrailsUnitTestMixin. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 203 | [SRC]throw new AssertionFailedError("Closure " + code + " sho..ion " + th); [MSG]Violation in class grails.test.mixin.support.GrailsUnitTestMixin. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 205 | [SRC]return th.getMessage(); [MSG]Violation in class grails.test.mixin.support.GrailsUnitTestMixin. getMessage() can probably be rewritten as message |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 124 | [SRC]webRequest.getParams() [MSG]Violation in class grails.test.mixin.web.ControllerUnitTestMixin. getParams() can probably be rewritten as params |
UnnecessaryGetter | 3 | 159 | [SRC]webRequest.getFlashScope() [MSG]Violation in class grails.test.mixin.web.ControllerUnitTestMixin. getFlashScope() can probably be rewritten as flashScope |
UnnecessaryGetter | 3 | 184 | [SRC]final classLoader = ControllerUnitTestMixin.class.getClassLoader() [MSG]Violation in class grails.test.mixin.web.ControllerUnitTestMixin. getClassLoader() can probably be rewritten as classLoader |
UnnecessaryDotClass | 3 | 184 | [SRC]final classLoader = ControllerUnitTestMixin.class.getClassLoader() [MSG]ControllerUnitTestMixin.class can be rewritten as ControllerUnitTestMixin |
UnnecessaryGetter | 3 | 252 | [SRC]request = webRequest.getCurrentRequest() [MSG]Violation in class grails.test.mixin.web.ControllerUnitTestMixin. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 253 | [SRC]response = webRequest.getCurrentResponse() [MSG]Violation in class grails.test.mixin.web.ControllerUnitTestMixin. getCurrentResponse() can probably be rewritten as currentResponse |
UnnecessaryGetter | 3 | 254 | [SRC]servletContext = webRequest.getServletContext() [MSG]Violation in class grails.test.mixin.web.ControllerUnitTestMixin. getServletContext() can probably be rewritten as servletContext |
UnnecessaryGetter | 3 | 349 | [SRC]return factory.getObject() [MSG]Violation in class grails.test.mixin.web.TestResponseMimeTypesApi. getObject() can probably be rewritten as object |
UnnecessaryGetter | 3 | 359 | [SRC]return factory.getObject() [MSG]Violation in class grails.test.mixin.web.TestRequestMimeTypesApi. getObject() can probably be rewritten as object |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 64 | [SRC]getCompositeInterceptor().handlers?.clear() [MSG]Violation in class grails.test.mixin.web.FiltersUnitTestMixin. getCompositeInterceptor() can probably be rewritten as compositeInterceptor |
UnnecessaryGetter | 3 | 94 | [SRC]return getCompositeInterceptor() [MSG]Violation in class grails.test.mixin.web.FiltersUnitTestMixin. getCompositeInterceptor() can probably be rewritten as compositeInterceptor |
UnnecessaryGetter | 3 | 116 | [SRC]final interceptor = getCompositeInterceptor() [MSG]Violation in class grails.test.mixin.web.FiltersUnitTestMixin. getCompositeInterceptor() can probably be rewritten as compositeInterceptor |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 97 | [SRC]MetaClass mc = tagLib.getMetaClass() [MSG]Violation in class grails.test.mixin.web.GroovyPageUnitTestMixin. getMetaClass() can probably be rewritten as metaClass |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 182 | [SRC]void assertForwardUrlMapping(assertions, url, paramAssertions) { [MSG]Violation in class grails.test.mixin.web.UrlMappingsUnitTestMixin. The cyclomatic complexity for method [assertForwardUrlMapping] is [23] |
MisorderedStaticImports | 3 | 28 | [SRC]import static junit.framework.Assert.assertEquals [MSG]Static imports should appear before normal imports |
MisorderedStaticImports | 3 | 29 | [SRC]import static junit.framework.Assert.assertNotNull [MSG]Static imports should appear before normal imports |
UnnecessarySelfAssignment | 3 | 54 | [SRC]grailsApplication = grailsApplication [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessaryGetter | 3 | 60 | [SRC]getUrlMappingsHolder() [MSG]Violation in class grails.test.mixin.web.UrlMappingsUnitTestMixin. getUrlMappingsHolder() can probably be rewritten as urlMappingsHolder |
UnnecessaryGetter | 3 | 77 | [SRC]UrlMappingsHolder mappingsHolder = getUrlMappingsHolder() [MSG]Violation in class grails.test.mixin.web.UrlMappingsUnitTestMixin. getUrlMappingsHolder() can probably be rewritten as urlMappingsHolder |
UnnecessarySubstring | 3 | 217 | [SRC]if (actual[0] == "/") actual = actual.substring(1) [MSG]Violation in class grails.test.mixin.web.UrlMappingsUnitTestMixin. The String.substring(int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 218 | [SRC]if (expected[0] == "/") expected = expected.substring(1) [MSG]Violation in class grails.test.mixin.web.UrlMappingsUnitTestMixin. The String.substring(int) method can be replaced with the subscript operator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 55 | [SRC]} catch (e) { [MSG]The catch block is empty |
MisorderedStaticImports | 3 | 25 | [SRC]import static grails.build.logging.GrailsConsole.instance as CONSOLE [MSG]Static imports should appear before normal imports |
UnnecessaryGetter | 3 | 73 | [SRC]def pluginManager = PluginManagerHolder.getPluginManager() [MSG]Violation in class org.grails.plugins.tomcat.InlineExplodedTomcatServer. getPluginManager() can probably be rewritten as pluginManager |
UnnecessaryObjectReferences | 3 | 120 | [SRC]sslConnector.setAttribute("keystorePass", keyPassword) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 121 | [SRC]sslConnector.URIEncoding = 'UTF-8' [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 95 | [SRC]try { err = errFile.text } catch (IOException e) {} [MSG]The catch block is empty |
EmptyCatchBlock | 2 | 126 | [SRC]} catch(e) { [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 75 | [SRC]for (entry in getConfigParams()) { [MSG]Violation in class org.grails.plugins.tomcat.IsolatedWarTomcatServer. getConfigParams() can probably be rewritten as configParams |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 52 | [SRC]void addPropertyChangeListener(PropertyChangeListener listener) {} [MSG]Violation in class TomcatLoader. The method addPropertyChangeListener is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 52 | [SRC]void addPropertyChangeListener(PropertyChangeListener listener) {} [MSG]Violation in class TomcatLoader. Method parameter [listener] is never referenced in the method addPropertyChangeListener of class org.grails.plugins.tomcat.TomcatLoader |
EmptyMethod | 2 | 58 | [SRC]void backgroundProcess() {} [MSG]Violation in class TomcatLoader. The method backgroundProcess is both empty and not marked with @Override |
EmptyMethod | 2 | 68 | [SRC]void removePropertyChangeListener(PropertyChangeListener listener) {} [MSG]Violation in class TomcatLoader. The method removePropertyChangeListener is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 68 | [SRC]void removePropertyChangeListener(PropertyChangeListener listener) {} [MSG]Violation in class TomcatLoader. Method parameter [listener] is never referenced in the method removePropertyChangeListener of class org.grails.plugins.tomcat.TomcatLoader |
UnnecessaryGetter | 3 | 82 | [SRC]log.info("Dual registration of jndi stream handler: " + ..etMessage()) [MSG]Violation in class org.grails.plugins.tomcat.TomcatLoader. getMessage() can probably be rewritten as message |
UnnecessaryGetter | 3 | 86 | [SRC]DirContextURLStreamHandler.bind(classLoader, container.getResources()) [MSG]Violation in class org.grails.plugins.tomcat.TomcatLoader. getResources() can probably be rewritten as resources |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
ClassForName | 2 | 161 | [SRC]Class.forName('sun.security.tools.KeyTool') [MSG]Violation in class org.grails.plugins.tomcat.TomcatServer. Methods calls to Class.forName(...) can create resource leaks and should almost always be replaced with calls to ClassLoader.loadClass(...) |
ClassForName | 2 | 164 | [SRC]Class.forName('com.ibm.crypto.tools.KeyTool') [MSG]Violation in class org.grails.plugins.tomcat.TomcatServer. Methods calls to Class.forName(...) can create resource leaks and should almost always be replaced with calls to ClassLoader.loadClass(...) |
MisorderedStaticImports | 3 | 23 | [SRC]import static grails.build.logging.GrailsConsole.instance as CONSOLE [MSG]Static imports should appear before normal imports |
UnnecessaryGetter | 3 | 50 | [SRC]buildSettings = BuildSettingsHolder.getSettings() [MSG]Violation in class org.grails.plugins.tomcat.TomcatServer. getSettings() can probably be rewritten as settings |
UnnecessaryGetter | 3 | 51 | [SRC]pluginSettings = GrailsPluginUtils.getPluginBuildSettings() [MSG]Violation in class org.grails.plugins.tomcat.TomcatServer. getPluginBuildSettings() can probably be rewritten as pluginBuildSettings |
UnnecessaryGetter | 3 | 145 | [SRC]getKeyToolClass().main( [MSG]Violation in class org.grails.plugins.tomcat.TomcatServer. getKeyToolClass() can probably be rewritten as keyToolClass |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 56 | [SRC]def createMappingsHolder() { [MSG]Violation in class GrailsUrlMappingsTestCase. The method createMappingsHolder is public but not a test method |
JUnitPublicNonTestMethod | 2 | 63 | [SRC]def createControllerMap() { [MSG]Violation in class GrailsUrlMappingsTestCase. The method createControllerMap is public but not a test method |
JUnitPublicNonTestMethod | 2 | 71 | [SRC]def getUrlMappingEvaluatees() { [MSG]Violation in class GrailsUrlMappingsTestCase. The method getUrlMappingEvaluatees is public but not a test method |
JUnitSetUpCallsSuper | 2 | 84 | [SRC]void setUp() { [MSG]Violation in class GrailsUrlMappingsTestCase. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 91 | [SRC]void tearDown() { [MSG]Violation in class GrailsUrlMappingsTestCase. The method tearDown() does not call super.tearDown() |
JUnitPublicNonTestMethod | 2 | 95 | [SRC]def getActions(controller) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method getActions is public but not a test method |
JUnitPublicNonTestMethod | 2 | 104 | [SRC]def getDefaultAction(controllerName) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method getDefaultAction is public but not a test method |
JUnitPublicNonTestMethod | 2 | 109 | [SRC]def assertController(controller, url) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method assertController is public but not a test method |
JUnitPublicNonTestMethod | 2 | 115 | [SRC]def assertAction(controller, action, url) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method assertAction is public but not a test method |
JUnitPublicNonTestMethod | 2 | 121 | [SRC]def assertView(controller, view, url) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method assertView is public but not a test method |
JUnitPublicNonTestMethod | 2 | 129 | [SRC]void assertUrlMapping(assertions, url) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method assertUrlMapping is public but not a test method |
JUnitPublicNonTestMethod | 2 | 133 | [SRC]void assertUrlMapping(assertions, url, paramAssertions) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method assertUrlMapping is public but not a test method |
JUnitPublicNonTestMethod | 2 | 140 | [SRC]void assertForwardUrlMapping(assertions, url) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method assertForwardUrlMapping is public but not a test method |
JUnitPublicNonTestMethod | 2 | 144 | [SRC]void assertForwardUrlMapping(assertions, url, paramAssertions) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method assertForwardUrlMapping is public but not a test method |
CyclomaticComplexity | 2 | 144 | [SRC]void assertForwardUrlMapping(assertions, url, paramAssertions) { [MSG]Violation in class grails.test.GrailsUrlMappingsTestCase. The cyclomatic complexity for method [assertForwardUrlMapping] is [21] |
JUnitPublicNonTestMethod | 2 | 202 | [SRC]void assertReverseUrlMapping(assertions, url) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method assertReverseUrlMapping is public but not a test method |
JUnitPublicNonTestMethod | 2 | 206 | [SRC]void assertReverseUrlMapping(assertions, url, paramAssertions) { [MSG]Violation in class GrailsUrlMappingsTestCase. The method assertReverseUrlMapping is public but not a test method |
UnusedImport | 3 | 18 | [SRC]import grails.util.GrailsWebUtil [MSG]The [grails.util.GrailsWebUtil] import is never referenced |
UnusedImport | 3 | 20 | [SRC]import org.codehaus.groovy.grails.commons.DefaultGrailsApplication [MSG]The [org.codehaus.groovy.grails.commons.DefaultGrailsApplication] import is never referenced |
UnusedImport | 3 | 21 | [SRC]import org.codehaus.groovy.grails.commons.GrailsApplication [MSG]The [org.codehaus.groovy.grails.commons.GrailsApplication] import is never referenced |
UnusedImport | 3 | 24 | [SRC]import org.codehaus.groovy.grails.plugins.web.mapping.Ur..GrailsPlugin [MSG]The [org.codehaus.groovy.grails.plugins.web.mapping.UrlMappingsGrailsPlugin] import is never referenced |
UnusedImport | 3 | 25 | [SRC]import org.codehaus.groovy.grails.support.MockApplicationContext [MSG]The [org.codehaus.groovy.grails.support.MockApplicationContext] import is never referenced |
UnusedImport | 3 | 28 | [SRC]import org.codehaus.groovy.grails.web.multipart.ContentL..partResolver [MSG]The [org.codehaus.groovy.grails.web.multipart.ContentLengthAwareCommonsMultipartResolver] import is never referenced |
UnusedImport | 3 | 30 | [SRC]import org.springframework.web.context.WebApplicationContext [MSG]The [org.springframework.web.context.WebApplicationContext] import is never referenced |
UnusedImport | 3 | 32 | [SRC]import org.springframework.web.servlet.DispatcherServlet [MSG]The [org.springframework.web.servlet.DispatcherServlet] import is never referenced |
UnusedImport | 3 | 34 | [SRC]import org.springframework.web.context.ServletContextAware [MSG]The [org.springframework.web.context.ServletContextAware] import is never referenced |
UnusedImport | 3 | 35 | [SRC]import javax.servlet.ServletContext [MSG]The [javax.servlet.ServletContext] import is never referenced |
DuplicateImport | 3 | 36 | [SRC]import org.codehaus.groovy.grails.commons.GrailsClassUtils |
UnnecessarySubstring | 3 | 176 | [SRC]if (actual[0] == "/") actual = actual.substring(1) [MSG]Violation in class grails.test.GrailsUrlMappingsTestCase. The String.substring(int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 177 | [SRC]if (expected[0] == "/") expected = expected.substring(1) [MSG]Violation in class grails.test.GrailsUrlMappingsTestCase. The String.substring(int) method can be replaced with the subscript operator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateMethodParameter | 2 | 161 | [SRC]private UrlMappingsHolder createUrlMappingsHolder(Grails..inManager) { [MSG]Violation in class UrlMappingsGrailsPlugin. Method parameter [application] is never referenced in the method createUrlMappingsHolder of class org.codehaus.groovy.grails.plugins.web.mapping.UrlMappingsGrailsPlugin |
UnusedPrivateMethodParameter | 2 | 161 | [SRC]private UrlMappingsHolder createUrlMappingsHolder(Grails..inManager) { [MSG]Violation in class UrlMappingsGrailsPlugin. Method parameter [pluginManager] is never referenced in the method createUrlMappingsHolder of class org.codehaus.groovy.grails.plugins.web.mapping.UrlMappingsGrailsPlugin |
UnnecessaryGetter | 3 | 47 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.mapping.UrlMappingsGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryPackageReference | 3 | 63 | [SRC]urlMappingsTargetSource(org.springframework.aop.target.H..)) { bean -> [MSG]The org.springframework.aop.target.HotSwappableTargetSource class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 63 | [SRC]urlMappingsTargetSource(org.springframework.aop.target.H..)) { bean -> [MSG]The org.springframework.aop.target.HotSwappableTargetSource class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 69 | [SRC]proxyInterfaces = [org.codehaus.groovy.grails.web.mappin..pingsHolder] [MSG]The org.codehaus.groovy.grails.web.mapping.UrlMappingsHolder class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 69 | [SRC]proxyInterfaces = [org.codehaus.groovy.grails.web.mappin..pingsHolder] [MSG]The org.codehaus.groovy.grails.web.mapping.UrlMappingsHolder class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryCallForLastElement | 3 | 75 | [SRC]def lastFilter = filters[filters.size()-1] [MSG]Unnecessarily complex access of last element. This can be simplified to filters.last() or filters[-1] |
UnnecessaryCallForLastElement | 3 | 75 | [SRC]def lastFilter = filters[filters.size()-1] [MSG]Unnecessarily complex access of last element. This can be simplified to filters.last() or filters[-1] |
UnnecessaryCallForLastElement | 3 | 85 | [SRC]def lastServlet = servlets[servlets.size()-1] [MSG]Unnecessarily complex access of last element. This can be simplified to servlets.last() or servlets[-1] |
UnnecessaryCallForLastElement | 3 | 85 | [SRC]def lastServlet = servlets[servlets.size()-1] [MSG]Unnecessarily complex access of last element. This can be simplified to servlets.last() or servlets[-1] |
UnnecessaryCallForLastElement | 3 | 95 | [SRC]def lastMapping = servletMappings[servletMappings.size()-1] [MSG]Unnecessarily complex access of last element. This can be simplified to servletMappings.last() or servletMappings[-1] |
UnnecessaryCallForLastElement | 3 | 95 | [SRC]def lastMapping = servletMappings[servletMappings.size()-1] [MSG]Unnecessarily complex access of last element. This can be simplified to servletMappings.last() or servletMappings[-1] |
UnnecessaryCallForLastElement | 3 | 124 | [SRC]welcomeFileList = welcomeFileList[welcomeFileList.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to welcomeFileList.last() or welcomeFileList[-1] |
UnnecessaryCallForLastElement | 3 | 124 | [SRC]welcomeFileList = welcomeFileList[welcomeFileList.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to welcomeFileList.last() or welcomeFileList[-1] |
UnnecessaryCallForLastElement | 3 | 132 | [SRC]def lastFilterMapping = filterMappings[filterMappings.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to filterMappings.last() or filterMappings[-1] |
UnnecessaryCallForLastElement | 3 | 132 | [SRC]def lastFilterMapping = filterMappings[filterMappings.size() - 1] [MSG]Unnecessarily complex access of last element. This can be simplified to filterMappings.last() or filterMappings[-1] |
UnnecessaryGetter | 3 | 166 | [SRC]final urlMappingsHolder = factory.getObject() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.mapping.UrlMappingsGrailsPlugin. getObject() can probably be rewritten as object |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateMethodParameter | 2 | 55 | [SRC]private static addValidationMethods(application, validat..lass, ctx) { [MSG]Violation in class ValidationGrailsPlugin. Method parameter [ctx] is never referenced in the method addValidationMethods of class org.codehaus.groovy.grails.plugins.ValidationGrailsPlugin |
UnusedImport | 3 | 26 | [SRC]import org.springframework.core.type.filter.AnnotationTypeFilter [MSG]The [org.springframework.core.type.filter.AnnotationTypeFilter] import is never referenced |
UnnecessaryGetter | 3 | 33 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.ValidationGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryGetter | 3 | 64 | [SRC]def attributes = rch.getRequestAttributes() [MSG]Violation in class org.codehaus.groovy.grails.plugins.ValidationGrailsPlugin. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 71 | [SRC]def attributes = rch.getRequestAttributes() [MSG]Violation in class org.codehaus.groovy.grails.plugins.ValidationGrailsPlugin. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 90 | [SRC]errors = new BeanPropertyBindingResult(delegate, delegat..).getName()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.ValidationGrailsPlugin. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 100 | [SRC]delegate.setErrors(new BeanPropertyBindingResult(delegat...getName())) [MSG]Violation in class org.codehaus.groovy.grails.plugins.ValidationGrailsPlugin. getName() can probably be rewritten as name |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
ImportFromSamePackage | 3 | 3 | [SRC]import org.codehaus.groovy.grails.plugins.ValidationGrailsPlugin |
UnnecessaryGetter | 3 | 12 | [SRC]def registry = GroovySystem.getMetaClassRegistry() [MSG]Violation in class org.codehaus.groovy.grails.plugins.ValidationGrailsPluginTests. getMetaClassRegistry() can probably be rewritten as metaClassRegistry |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 75 | [SRC]protected void afterInvocation() { [MSG]Violation in class DynamicElementReader. The method afterInvocation is both empty and not marked with @Override |
UnnecessaryGetter | 3 | 53 | [SRC]EntityResolver entityResolver = new DelegatingEntityReso..assLoader()) [MSG]Violation in class grails.spring.DynamicElementReader. getClassLoader() can probably be rewritten as classLoader |
UnnecessaryDotClass | 3 | 53 | [SRC]EntityResolver entityResolver = new DelegatingEntityReso..assLoader()) [MSG]DynamicElementReader.class can be rewritten as DynamicElementReader |
UnnecessaryGetter | 3 | 121 | [SRC]Element element = documentLoader.loadDocument(is, entity..entElement() [MSG]Violation in class grails.spring.DynamicElementReader. getDocumentElement() can probably be rewritten as documentElement |
UnnecessaryGetter | 3 | 126 | [SRC]BeanDefinitionHolder holder = new BeanDefinitionHolder(b..n.getName()) [MSG]Violation in class grails.spring.DynamicElementReader. getBeanDefinition() can probably be rewritten as beanDefinition |
UnnecessaryGetter | 3 | 126 | [SRC]BeanDefinitionHolder holder = new BeanDefinitionHolder(b..n.getName()) [MSG]Violation in class grails.spring.DynamicElementReader. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 128 | [SRC]beanConfiguration.setBeanDefinition(holder.getBeanDefinition()) [MSG]Violation in class grails.spring.DynamicElementReader. getBeanDefinition() can probably be rewritten as beanDefinition |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 82 | [SRC]protected final void tearDown() { [MSG]Violation in class AbstractGrailsPluginTests. The method tearDown() does not call super.tearDown() |
UnnecessaryGetter | 3 | 50 | [SRC]ga = new DefaultGrailsApplication(gcl.getLoadedClasses(),gcl) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.AbstractGrailsPluginTests. getLoadedClasses() can probably be rewritten as loadedClasses |
UnnecessaryGetter | 3 | 75 | [SRC]appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.AbstractGrailsPluginTests. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 150 | [SRC]def withConfig(String text, Closure callable) { [MSG]Violation in class AbstractGrailsControllerTests. The method withConfig is public but not a test method |
JUnitPublicNonTestMethod | 2 | 162 | [SRC]GrailsWebRequest buildMockRequest(ConfigObject config) t.. Exception { [MSG]Violation in class AbstractGrailsControllerTests. The method buildMockRequest is public but not a test method |
JUnitPublicNonTestMethod | 2 | 174 | [SRC]void runTest(Closure callable) { [MSG]Violation in class AbstractGrailsControllerTests. The method runTest is public but not a test method |
UnnecessaryGetter | 3 | 76 | [SRC]ga = new DefaultGrailsApplication(gcl.getLoadedClasses(), gcl) [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests. getLoadedClasses() can probably be rewritten as loadedClasses |
UnnecessaryGetter | 3 | 112 | [SRC]servletContext = ctx.getServletContext() [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests. getServletContext() can probably be rewritten as servletContext |
UnnecessaryGetter | 3 | 119 | [SRC]appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 169 | [SRC]appCtx.getServletContext().setAttribute(GrailsApplicatio..EXT, appCtx) [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests. getServletContext() can probably be rewritten as servletContext |
UnnecessaryGetter | 3 | 170 | [SRC]appCtx.getServletContext().setAttribute(WebApplicationCo..UTE, appCtx) [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests. getServletContext() can probably be rewritten as servletContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 68 | [SRC]def withConfig(String text, Closure callable) { [MSG]Violation in class AbstractGrailsTagTests. The method withConfig is public but not a test method |
JUnitPublicNonTestMethod | 2 | 80 | [SRC]GrailsWebRequest buildMockRequest(ConfigObject config) t.. Exception { [MSG]Violation in class AbstractGrailsTagTests. The method buildMockRequest is public but not a test method |
JUnitPublicNonTestMethod | 2 | 89 | [SRC]def profile(String name, Closure callable) { [MSG]Violation in class AbstractGrailsTagTests. The method profile is public but not a test method |
JUnitPublicNonTestMethod | 2 | 99 | [SRC]def withTag(String tagName, Writer out, Closure callable) { [MSG]Violation in class AbstractGrailsTagTests. The method withTag is public but not a test method |
UnusedVariable | 2 | 122 | [SRC]GroovyPageOutputStack stack=GroovyPageOutputStack.createNew(out) [MSG]The variable [stack] in class org.codehaus.groovy.grails.web.taglib.AbstractGrailsTagTests is not used |
JUnitSetUpCallsSuper | 2 | 150 | [SRC]protected void setUp() throws Exception { [MSG]Violation in class AbstractGrailsTagTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 240 | [SRC]protected void tearDown() { [MSG]Violation in class AbstractGrailsTagTests. The method tearDown() does not call super.tearDown() |
JUnitPublicNonTestMethod | 2 | 265 | [SRC]void runTest(Closure callable) { [MSG]Violation in class AbstractGrailsTagTests. The method runTest is public but not a test method |
JUnitPublicNonTestMethod | 2 | 269 | [SRC]void printCompiledSource(template, params = [:]) { [MSG]Violation in class AbstractGrailsTagTests. The method printCompiledSource is public but not a test method |
JUnitPublicNonTestMethod | 2 | 275 | [SRC]def getCompiledSource(template, params = [:]) { [MSG]Violation in class AbstractGrailsTagTests. The method getCompiledSource is public but not a test method |
UnusedVariable | 2 | 289 | [SRC]String text = sw.toString() [MSG]The variable [text] in class org.codehaus.groovy.grails.web.taglib.AbstractGrailsTagTests is not used |
JUnitPublicNonTestMethod | 2 | 292 | [SRC]def assertCompiledSourceContains(expected, template, params = [:]) { [MSG]Violation in class AbstractGrailsTagTests. The method assertCompiledSourceContains is public but not a test method |
JUnitPublicNonTestMethod | 2 | 297 | [SRC]void assertOutputContains(expected, template, params = [:]) { [MSG]Violation in class AbstractGrailsTagTests. The method assertOutputContains is public but not a test method |
JUnitPublicNonTestMethod | 2 | 302 | [SRC]void assertOutputNotContains(expected, template, params = [:]) { [MSG]Violation in class AbstractGrailsTagTests. The method assertOutputNotContains is public but not a test method |
JUnitPublicNonTestMethod | 2 | 320 | [SRC]void assertOutputEquals(expected, template, params = [:]..tring() }) { [MSG]Violation in class AbstractGrailsTagTests. The method assertOutputEquals is public but not a test method |
JUnitPublicNonTestMethod | 2 | 356 | [SRC]def applyTemplate(template, params = [:], target = null,..me = null) { [MSG]Violation in class AbstractGrailsTagTests. The method applyTemplate is public but not a test method |
JUnitPublicNonTestMethod | 2 | 381 | [SRC]String sitemeshPreprocess(String template) { [MSG]Violation in class AbstractGrailsTagTests. The method sitemeshPreprocess is public but not a test method |
JUnitPublicNonTestMethod | 2 | 386 | [SRC]String applyLayout(String layout, String template, Map params=[:]) { [MSG]Violation in class AbstractGrailsTagTests. The method applyLayout is public but not a test method |
UnnecessaryGetter | 3 | 85 | [SRC]initThemeSource(request.getCurrentRequest(), messageSource) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.AbstractGrailsTagTests. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 204 | [SRC]JstlUtils.exposeLocalizationContext webRequest.getRequest(),null [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.AbstractGrailsTagTests. getRequest() can probably be rewritten as request |
UnnecessaryGetter | 3 | 215 | [SRC]appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.AbstractGrailsTagTests. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryDefInMethodDeclaration | 3 | 235 | [SRC]private def initThemeSource(request, StaticMessageSource..ageSource) { [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.AbstractGrailsTagTests. The def keyword is unneeded when a method is marked private |
UnnecessaryDefInMethodDeclaration | 3 | 343 | [SRC]protected def assertTemplateOutputEquals(expected, Groov..tring() }) { [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.AbstractGrailsTagTests. The def keyword is unneeded when a method is marked protected |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 121 | [SRC]void onApplicationCreated() {} [MSG]Violation in class AbstractGrailsHibernateTests. The method onApplicationCreated is public but not a test method |
JUnitPublicNonTestMethod | 2 | 137 | [SRC]GrailsWebRequest buildMockRequest(ConfigObject config = .. Exception { [MSG]Violation in class AbstractGrailsHibernateTests. The method buildMockRequest is public but not a test method |
EmptyCatchBlock | 2 | 158 | [SRC]catch(e) { [MSG]The catch block is empty |
EmptyCatchBlock | 2 | 165 | [SRC]catch(e) { [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 72 | [SRC]ga = new DefaultGrailsApplication(gcl.getLoadedClasses(), gcl) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.AbstractGrailsHibernateTests. getLoadedClasses() can probably be rewritten as loadedClasses |
UnnecessaryGetter | 3 | 86 | [SRC]ga.setMainContext(springConfig.getUnrefreshedApplicationContext()) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.AbstractGrailsHibernateTests. getUnrefreshedApplicationContext() can probably be rewritten as unrefreshedApplicationContext |
UnnecessaryGetter | 3 | 87 | [SRC]appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.AbstractGrailsHibernateTests. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 162 | [SRC]getClass().classLoader.loadClass("net.sf.ehcache.CacheManager") [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.AbstractGrailsHibernateTests. getInstance() can probably be rewritten as instance |
UnnecessaryGetter | 3 | 198 | [SRC]GroovySystem.getMetaClassRegistry().removeMetaClass meta..tyMode.POJO) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.AbstractGrailsHibernateTests. getMetaClassRegistry() can probably be rewritten as metaClassRegistry |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 83 | [SRC]def Abstract = ga.getDomainClass("AbstractInheritanceAbs..Base").clazz [MSG]The variable [Abstract] in class org.codehaus.groovy.grails.orm.hibernate.AbstractInheritanceTests is not used |
UnusedVariable | 2 | 104 | [SRC]def Comment = ga.getDomainClass("AbstractInheritanceComment").clazz [MSG]The variable [Comment] in class org.codehaus.groovy.grails.orm.hibernate.AbstractInheritanceTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 36 | [SRC]void testDeleteOrphanMapping() { [MSG]Violation in class AllDeleteOrphanMappingTests. Test method 'testDeleteOrphanMapping' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 16 | [SRC]void testNoAssertionErrorInEvent() { [MSG]Violation in class AssertionFailureInEventTests. Test method 'testNoAssertionErrorInEvent' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertEqualsInsteadOfAssertTrue | 3 | 27 | [SRC]assertTrue models.size() == 1 [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.AutoImportPackedDomainTests. Replace assertTrue with a call to assertEquals() |
UseAssertEqualsInsteadOfAssertTrue | 3 | 30 | [SRC]assertTrue models.size() == 1 [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.AutoImportPackedDomainTests. Replace assertTrue with a call to assertEquals() |
UseAssertEqualsInsteadOfAssertTrue | 3 | 33 | [SRC]assertTrue models.size() == 1 [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.AutoImportPackedDomainTests. Replace assertTrue with a call to assertEquals() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 27 | [SRC]void testRefreshHasOneAssociation() { [MSG]Violation in class BidirectionalHasOneMappingTests. Test method 'testRefreshHasOneAssociation' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 22 | [SRC]protected void setUp() { [MSG]Violation in class BidirectionalListMappingTests. The method setUp() does not call super.setUp() |
UnusedVariable | 2 | 59 | [SRC]PersistentClass faqSection = config.getClassMapping("TestFaqSection") [MSG]The variable [faqSection] in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests is not used |
UnusedVariable | 2 | 97 | [SRC]PersistentClass faqSection = config.getClassMapping("TestFaqSection") [MSG]The variable [faqSection] in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests is not used |
UnusedVariable | 2 | 147 | [SRC]PersistentClass faqSection = config.getClassMapping("TestFaqSection") [MSG]The variable [faqSection] in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests is not used |
UnusedVariable | 2 | 169 | [SRC]PersistentClass faqSection = config.getClassMapping("TestFaqSection") [MSG]The variable [faqSection] in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests is not used |
UnusedVariable | 2 | 188 | [SRC]PersistentClass faqSection = config.getClassMapping("TestFaqSection") [MSG]The variable [faqSection] in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests is not used |
UnusedVariable | 2 | 276 | [SRC]SimpleValue indexColumnValue = indexColumn.getValue() [MSG]The variable [indexColumnValue] in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests is not used |
JUnitUnnecessaryTearDown | 3 | 54 | [SRC]protected void tearDown() { [MSG]Violation in class BidirectionalListMappingTests. The tearDown() method contains no logic and can be removed |
UnnecessaryOverridingMethod | 3 | 54 | [SRC]protected void tearDown() { [MSG]Violation in class BidirectionalListMappingTests. The method tearDown contains no logic and can be safely deleted |
UnnecessaryGetter | 3 | 74 | [SRC]assertNull elementsIndexBackref.getCascade() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCascade() can probably be rewritten as cascade |
UnnecessaryGetter | 3 | 75 | [SRC]assertEquals CascadeStyle.NONE, elementsIndexBackref.getCascadeStyle() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCascadeStyle() can probably be rewritten as cascadeStyle |
UnnecessaryGetter | 3 | 76 | [SRC]assertEquals "TestFaqSection.elements", elementsIndexBa..ectionRole() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCollectionRole() can probably be rewritten as collectionRole |
UnnecessaryGetter | 3 | 77 | [SRC]assertEquals 1, elementsIndexBackref.getColumnSpan() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnSpan() can probably be rewritten as columnSpan |
UnnecessaryGetter | 3 | 78 | [SRC]assertEquals "TestFaqSection", elementsIndexBackref.getEntityName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getEntityName() can probably be rewritten as entityName |
UnnecessaryGetter | 3 | 79 | [SRC]assertEquals PropertyGeneration.NEVER, elementsIndexBack..Generation() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getGeneration() can probably be rewritten as generation |
UnnecessaryGetter | 3 | 80 | [SRC]assertEquals "_elementsIndexBackref", elementsIndexBackref.getName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 81 | [SRC]assertNull elementsIndexBackref.getNodeName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getNodeName() can probably be rewritten as nodeName |
UnnecessaryGetter | 3 | 82 | [SRC]assertNull elementsIndexBackref.getPropertyAccessorName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getPropertyAccessorName() can probably be rewritten as propertyAccessorName |
UnnecessaryGetter | 3 | 83 | [SRC]assertEquals IntegerType, elementsIndexBackref.getType().getClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getType() can probably be rewritten as type |
UnnecessaryGetter | 3 | 84 | [SRC]assertEquals SimpleValue, elementsIndexBackref.getValue().getClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 86 | [SRC]SimpleValue value = elementsIndexBackref.getValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 112 | [SRC]assertNull elementsBackref.getCascade() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCascade() can probably be rewritten as cascade |
UnnecessaryGetter | 3 | 113 | [SRC]assertEquals CascadeStyle.NONE, elementsBackref.getCascadeStyle() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCascadeStyle() can probably be rewritten as cascadeStyle |
UnnecessaryGetter | 3 | 114 | [SRC]assertEquals "TestFaqSection.elements", elementsBackref...ectionRole() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCollectionRole() can probably be rewritten as collectionRole |
UnnecessaryGetter | 3 | 115 | [SRC]assertEquals 1, elementsBackref.getColumnSpan() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnSpan() can probably be rewritten as columnSpan |
UnnecessaryGetter | 3 | 116 | [SRC]assertEquals "TestFaqSection", elementsBackref.getEntityName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getEntityName() can probably be rewritten as entityName |
UnnecessaryGetter | 3 | 117 | [SRC]assertEquals PropertyGeneration.NEVER, elementsBackref.getGeneration() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getGeneration() can probably be rewritten as generation |
UnnecessaryGetter | 3 | 118 | [SRC]assertEquals "_TestFaqSection_elementsBackref", elements..ef.getName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 119 | [SRC]assertNull elementsBackref.getNodeName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getNodeName() can probably be rewritten as nodeName |
UnnecessaryGetter | 3 | 120 | [SRC]assertEquals "TestFaqElement", elementsBackref.getPersis..tClassName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getClassName() can probably be rewritten as className |
UnnecessaryGetter | 3 | 120 | [SRC]assertEquals "TestFaqElement", elementsBackref.getPersis..tClassName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getPersistentClass() can probably be rewritten as persistentClass |
UnnecessaryGetter | 3 | 121 | [SRC]assertNull elementsBackref.getPropertyAccessorName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getPropertyAccessorName() can probably be rewritten as propertyAccessorName |
UnnecessaryGetter | 3 | 122 | [SRC]assertEquals LongType, elementsBackref.getType().getClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getType() can probably be rewritten as type |
UnnecessaryGetter | 3 | 123 | [SRC]assertEquals DependantValue, elementsBackref.getValue().getClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 125 | [SRC]DependantValue value = elementsBackref.getValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 133 | [SRC]assertEquals 1,value.getColumnInsertability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnInsertability() can probably be rewritten as columnInsertability |
UnnecessaryGetter | 3 | 134 | [SRC]assertTrue value.getColumnInsertability()[0] [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnInsertability() can probably be rewritten as columnInsertability |
UnnecessaryGetter | 3 | 135 | [SRC]assertEquals 1,value.getColumnUpdateability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnUpdateability() can probably be rewritten as columnUpdateability |
UnnecessaryGetter | 3 | 136 | [SRC]assertTrue value.getColumnUpdateability()[0] [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnUpdateability() can probably be rewritten as columnUpdateability |
UnnecessaryGetter | 3 | 138 | [SRC]assertEquals 1, value.getColumnSpan() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnSpan() can probably be rewritten as columnSpan |
UnnecessaryGetter | 3 | 139 | [SRC]assertEquals FetchMode.SELECT, value.getFetchMode() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getFetchMode() can probably be rewritten as fetchMode |
UnnecessaryGetter | 3 | 140 | [SRC]assertNull value.getForeignKeyName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getForeignKeyName() can probably be rewritten as foreignKeyName |
UnnecessaryGetter | 3 | 141 | [SRC]assertEquals "assigned", value.getIdentifierGeneratorStrategy() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getIdentifierGeneratorStrategy() can probably be rewritten as identifierGeneratorStrategy |
UnnecessaryGetter | 3 | 142 | [SRC]assertNull value.getNullValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getNullValue() can probably be rewritten as nullValue |
UnnecessaryGetter | 3 | 143 | [SRC]assertEquals LongType, value.getType().getClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getType() can probably be rewritten as type |
UnnecessaryGetter | 3 | 161 | [SRC]assertEquals "none", section.getCascade() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCascade() can probably be rewritten as cascade |
UnnecessaryGetter | 3 | 162 | [SRC]assertEquals CascadeStyle.NONE, section.getCascadeStyle() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCascadeStyle() can probably be rewritten as cascadeStyle |
UnnecessaryGetter | 3 | 163 | [SRC]assertEquals 1, section.getColumnSpan() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnSpan() can probably be rewritten as columnSpan |
UnnecessaryGetter | 3 | 164 | [SRC]assertEquals PropertyGeneration.NEVER, section.getGeneration() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getGeneration() can probably be rewritten as generation |
UnnecessaryGetter | 3 | 165 | [SRC]assertEquals "section", section.getName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 172 | [SRC]Column sectionColumn = section.getColumnIterator().next() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnIterator() can probably be rewritten as columnIterator |
UnnecessaryGetter | 3 | 174 | [SRC]assertEquals "section_id", sectionColumn.getCanonicalName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCanonicalName() can probably be rewritten as canonicalName |
UnnecessaryGetter | 3 | 175 | [SRC]assertNull sectionColumn.getCheckConstraint() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCheckConstraint() can probably be rewritten as checkConstraint |
UnnecessaryGetter | 3 | 176 | [SRC]assertNull sectionColumn.getComment() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getComment() can probably be rewritten as comment |
UnnecessaryGetter | 3 | 177 | [SRC]assertNull sectionColumn.getDefaultValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getDefaultValue() can probably be rewritten as defaultValue |
UnnecessaryGetter | 3 | 178 | [SRC]assertEquals 255, sectionColumn.getLength() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getLength() can probably be rewritten as length |
UnnecessaryGetter | 3 | 179 | [SRC]assertEquals "section_id", sectionColumn.getName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 180 | [SRC]assertEquals 19, sectionColumn.getPrecision() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getPrecision() can probably be rewritten as precision |
UnnecessaryGetter | 3 | 181 | [SRC]assertEquals "section_id", sectionColumn.getQuotedName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getQuotedName() can probably be rewritten as quotedName |
UnnecessaryGetter | 3 | 182 | [SRC]assertEquals 2, sectionColumn.getScale() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getScale() can probably be rewritten as scale |
UnnecessaryGetter | 3 | 183 | [SRC]assertEquals "section_id", sectionColumn.getText() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getText() can probably be rewritten as text |
UnnecessaryGetter | 3 | 184 | [SRC]assertEquals 0, sectionColumn.getTypeIndex() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getTypeIndex() can probably be rewritten as typeIndex |
UnnecessaryGetter | 3 | 192 | [SRC]ManyToOne manyToOne = section.getValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 193 | [SRC]assertEquals 1,manyToOne.getColumnInsertability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnInsertability() can probably be rewritten as columnInsertability |
UnnecessaryGetter | 3 | 194 | [SRC]assertTrue manyToOne.getColumnInsertability()[0] [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnInsertability() can probably be rewritten as columnInsertability |
UnnecessaryGetter | 3 | 195 | [SRC]assertEquals 1,manyToOne.getColumnUpdateability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnUpdateability() can probably be rewritten as columnUpdateability |
UnnecessaryGetter | 3 | 196 | [SRC]assertTrue manyToOne.getColumnUpdateability()[0] [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnUpdateability() can probably be rewritten as columnUpdateability |
UnnecessaryGetter | 3 | 208 | [SRC]assertEquals 1, manyToOne.getConstraintColumns().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getConstraintColumns() can probably be rewritten as constraintColumns |
UnnecessaryGetter | 3 | 209 | [SRC]assertEquals FetchMode.DEFAULT, manyToOne.getFetchMode() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getFetchMode() can probably be rewritten as fetchMode |
UnnecessaryGetter | 3 | 210 | [SRC]assertNull manyToOne.getForeignKeyName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getForeignKeyName() can probably be rewritten as foreignKeyName |
UnnecessaryGetter | 3 | 211 | [SRC]assertEquals "assigned", manyToOne.getIdentifierGeneratorStrategy() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getIdentifierGeneratorStrategy() can probably be rewritten as identifierGeneratorStrategy |
UnnecessaryGetter | 3 | 212 | [SRC]assertNull manyToOne.getNullValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getNullValue() can probably be rewritten as nullValue |
UnnecessaryGetter | 3 | 213 | [SRC]assertEquals "TestFaqSection", manyToOne.getReferencedEntityName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getReferencedEntityName() can probably be rewritten as referencedEntityName |
UnnecessaryGetter | 3 | 214 | [SRC]assertNull manyToOne.getReferencedPropertyName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getReferencedPropertyName() can probably be rewritten as referencedPropertyName |
UnnecessaryGetter | 3 | 215 | [SRC]assertEquals ManyToOneType, manyToOne.getType().getClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getType() can probably be rewritten as type |
UnnecessaryGetter | 3 | 216 | [SRC]assertEquals "TestFaqSection", manyToOne.getTypeName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getTypeName() can probably be rewritten as typeName |
UnnecessaryGetter | 3 | 246 | [SRC]assertEquals 0,list.getBaseIndex() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getBaseIndex() can probably be rewritten as baseIndex |
UnnecessaryGetter | 3 | 248 | [SRC]Table t = list.getCollectionTable() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCollectionTable() can probably be rewritten as collectionTable |
UnnecessaryGetter | 3 | 250 | [SRC]assertEquals 0, list.getColumnInsertability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnInsertability() can probably be rewritten as columnInsertability |
UnnecessaryGetter | 3 | 251 | [SRC]assertNull list.getCacheConcurrencyStrategy() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCacheConcurrencyStrategy() can probably be rewritten as cacheConcurrencyStrategy |
UnnecessaryGetter | 3 | 252 | [SRC]assertEquals "TestFaqSection.elements", list.getCacheRegionName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCacheRegionName() can probably be rewritten as cacheRegionName |
UnnecessaryGetter | 3 | 253 | [SRC]assertEquals 0,list.getColumnSpan() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnSpan() can probably be rewritten as columnSpan |
UnnecessaryGetter | 3 | 254 | [SRC]assertEquals 0, list.getColumnUpdateability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnUpdateability() can probably be rewritten as columnUpdateability |
UnnecessaryGetter | 3 | 255 | [SRC]assertNull list.getElementNodeName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getElementNodeName() can probably be rewritten as elementNodeName |
UnnecessaryGetter | 3 | 256 | [SRC]SimpleValue index = list.getIndex() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getIndex() can probably be rewritten as index |
UnnecessaryGetter | 3 | 258 | [SRC]assertEquals 1,index.getColumnInsertability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnInsertability() can probably be rewritten as columnInsertability |
UnnecessaryGetter | 3 | 259 | [SRC]assertTrue index.getColumnInsertability()[0] [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnInsertability() can probably be rewritten as columnInsertability |
UnnecessaryGetter | 3 | 260 | [SRC]assertEquals 1,index.getColumnUpdateability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnUpdateability() can probably be rewritten as columnUpdateability |
UnnecessaryGetter | 3 | 261 | [SRC]assertTrue index.getColumnUpdateability()[0] [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnUpdateability() can probably be rewritten as columnUpdateability |
UnnecessaryGetter | 3 | 263 | [SRC]assertEquals 1, index.getColumnSpan() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnSpan() can probably be rewritten as columnSpan |
UnnecessaryGetter | 3 | 265 | [SRC]Column indexColumn = index.getColumnIterator().next() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnIterator() can probably be rewritten as columnIterator |
UnnecessaryGetter | 3 | 266 | [SRC]assertEquals "elements_idx", indexColumn.getCanonicalName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCanonicalName() can probably be rewritten as canonicalName |
UnnecessaryGetter | 3 | 267 | [SRC]assertNull indexColumn.getCheckConstraint() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getCheckConstraint() can probably be rewritten as checkConstraint |
UnnecessaryGetter | 3 | 268 | [SRC]assertNull indexColumn.getComment() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getComment() can probably be rewritten as comment |
UnnecessaryGetter | 3 | 269 | [SRC]assertNull indexColumn.getDefaultValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getDefaultValue() can probably be rewritten as defaultValue |
UnnecessaryGetter | 3 | 270 | [SRC]assertEquals 255, indexColumn.getLength() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getLength() can probably be rewritten as length |
UnnecessaryGetter | 3 | 271 | [SRC]assertEquals "elements_idx", indexColumn.getName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 272 | [SRC]assertEquals 19, indexColumn.getPrecision() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getPrecision() can probably be rewritten as precision |
UnnecessaryGetter | 3 | 273 | [SRC]assertEquals "elements_idx", indexColumn.getQuotedName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getQuotedName() can probably be rewritten as quotedName |
UnnecessaryGetter | 3 | 274 | [SRC]assertEquals 2, indexColumn.getScale() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getScale() can probably be rewritten as scale |
UnnecessaryGetter | 3 | 275 | [SRC]assertEquals "elements_idx", indexColumn.getText() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getText() can probably be rewritten as text |
UnnecessaryGetter | 3 | 276 | [SRC]SimpleValue indexColumnValue = indexColumn.getValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 278 | [SRC]assertEquals FetchMode.SELECT, index.getFetchMode() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getFetchMode() can probably be rewritten as fetchMode |
UnnecessaryGetter | 3 | 279 | [SRC]assertNull index.getForeignKeyName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getForeignKeyName() can probably be rewritten as foreignKeyName |
UnnecessaryGetter | 3 | 280 | [SRC]assertEquals "assigned", index.getIdentifierGeneratorStrategy() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getIdentifierGeneratorStrategy() can probably be rewritten as identifierGeneratorStrategy |
UnnecessaryGetter | 3 | 281 | [SRC]assertNull index.getNullValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getNullValue() can probably be rewritten as nullValue |
UnnecessaryGetter | 3 | 282 | [SRC]assertEquals IntegerType, index.getType()?.getClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getType() can probably be rewritten as type |
UnnecessaryGetter | 3 | 283 | [SRC]assertEquals "integer", index.getTypeName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getTypeName() can probably be rewritten as typeName |
UnnecessaryGetter | 3 | 284 | [SRC]assertNull index.getTypeParameters() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getTypeParameters() can probably be rewritten as typeParameters |
UnnecessaryGetter | 3 | 286 | [SRC]KeyValue key = list.getKey() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getKey() can probably be rewritten as key |
UnnecessaryGetter | 3 | 288 | [SRC]assertEquals 1,key.getColumnInsertability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnInsertability() can probably be rewritten as columnInsertability |
UnnecessaryGetter | 3 | 289 | [SRC]assertTrue key.getColumnInsertability()[0] [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnInsertability() can probably be rewritten as columnInsertability |
UnnecessaryGetter | 3 | 290 | [SRC]assertEquals 1,key.getColumnUpdateability().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnUpdateability() can probably be rewritten as columnUpdateability |
UnnecessaryGetter | 3 | 291 | [SRC]assertTrue key.getColumnUpdateability()[0] [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnUpdateability() can probably be rewritten as columnUpdateability |
UnnecessaryGetter | 3 | 293 | [SRC]assertEquals 1, key.getColumnSpan() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnSpan() can probably be rewritten as columnSpan |
UnnecessaryGetter | 3 | 294 | [SRC]assertEquals FetchMode.SELECT, key.getFetchMode() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getFetchMode() can probably be rewritten as fetchMode |
UnnecessaryGetter | 3 | 295 | [SRC]assertNull key.getNullValue() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getNullValue() can probably be rewritten as nullValue |
UnnecessaryGetter | 3 | 296 | [SRC]assertEquals LongType, key.getType().getClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getType() can probably be rewritten as type |
UnnecessaryGetter | 3 | 298 | [SRC]OneToMany element = list.getElement() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getElement() can probably be rewritten as element |
UnnecessaryGetter | 3 | 300 | [SRC]assertEquals 1, element.getColumnSpan() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getColumnSpan() can probably be rewritten as columnSpan |
UnnecessaryGetter | 3 | 301 | [SRC]assertEquals FetchMode.JOIN, element.getFetchMode() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getFetchMode() can probably be rewritten as fetchMode |
UnnecessaryGetter | 3 | 302 | [SRC]PersistentClass associatedClass = element.getAssociatedClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getAssociatedClass() can probably be rewritten as associatedClass |
UnnecessaryGetter | 3 | 303 | [SRC]assertEquals "TestFaqElement", associatedClass.getClassName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getClassName() can probably be rewritten as className |
UnnecessaryGetter | 3 | 304 | [SRC]assertEquals ManyToOneType, element.getType().getClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListMappingTests. getType() can probably be rewritten as type |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 46 | [SRC]section = session.get(sectionClass.getClazz(),1L) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalListPersistTests. getClazz() can probably be rewritten as clazz |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 67 | [SRC]assertEquals uploadsProperty.getOtherSide(), recipientProperty [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalOneToManyAndCircularOneToManyTests. getOtherSide() can probably be rewritten as otherSide |
UnnecessaryGetter | 3 | 68 | [SRC]assertEquals recipientProperty.getOtherSide(), uploadsProperty [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalOneToManyAndCircularOneToManyTests. getOtherSide() can probably be rewritten as otherSide |
UnnecessaryGetter | 3 | 80 | [SRC]assertEquals uploadLogsProperty.getOtherSide(), senderProperty [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalOneToManyAndCircularOneToManyTests. getOtherSide() can probably be rewritten as otherSide |
UnnecessaryGetter | 3 | 81 | [SRC]assertEquals senderProperty.getOtherSide(), uploadLogsProperty [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalOneToManyAndCircularOneToManyTests. getOtherSide() can probably be rewritten as otherSide |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 30 | [SRC]void testSaveAndLoad() { [MSG]Violation in class BidirectionalOneToManyAndOneToOneTests. Test method 'testSaveAndLoad' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 52 | [SRC]def configItemClass = ga.getDomainClass("ConfigurationItem").clazz [MSG]The variable [configItemClass] in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalOneToManyWithInheritanceTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 44 | [SRC]def otherSide = collection.getOtherSide() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.BidirectionalOnetoManyWithInheritanceRelationshipManagementTests. getOtherSide() can probably be rewritten as otherSide |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 55 | [SRC]void onSetUp() { [MSG]Violation in class CascadingDeleteBehaviour2Tests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 37 | [SRC]void onSetUp() { [MSG]Violation in class CascadingDeleteBehaviour3Tests. The method onSetUp is public but not a test method |
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.commons.GrailsDomainClass [MSG]The [org.codehaus.groovy.grails.commons.GrailsDomainClass] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 85 | [SRC]void onSetUp() { [MSG]Violation in class CascadingDeleteBehaviourTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 31 | [SRC]void testCascadingSaveAndUniqueConstraint() { [MSG]Violation in class CascadingSaveAndUniqueConstraintTests. Test method 'testCascadingSaveAndUniqueConstraint' makes no assertions |
UnusedVariable | 2 | 34 | [SRC]def face = faceClass.newInstance(nose:noseClass.newInstance()).save() [MSG]The variable [face] in class org.codehaus.groovy.grails.orm.hibernate.CascadingSaveAndUniqueConstraintTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 28 | [SRC]void onSetUp() { [MSG]Violation in class CircularRelationshipTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 33 | [SRC]void onSetUp() { [MSG]Violation in class CircularUnidirectionalOneToManyTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 32 | [SRC]void onSetUp() { [MSG]Violation in class ClassHeirarchyInheritanceTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 58 | [SRC]void onSetUp() { [MSG]Violation in class CreateCriteriaTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 27 | [SRC]void onSetUp() { [MSG]Violation in class CreateMethodTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 135 | [SRC]def criteriaInstance = getInstance() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.CriteriaBuilderTests. getInstance() can probably be rewritten as instance |
UnnecessaryGetter | 3 | 149 | [SRC]def criteriaInstance = getInstance() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.CriteriaBuilderTests. getInstance() can probably be rewritten as instance |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 32 | [SRC]def Plant = ga.getDomainClass("Plant").clazz [MSG]The variable [Plant] in class org.codehaus.groovy.grails.orm.hibernate.CriteriaListDistinctTests is not used |
UnusedVariable | 2 | 66 | [SRC]def Plant = ga.getDomainClass("Plant").clazz [MSG]The variable [Plant] in class org.codehaus.groovy.grails.orm.hibernate.CriteriaListDistinctTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 38 | [SRC]def twoClass = ga.getDomainClass("CustomCascadeMappingTwo").clazz [MSG]The variable [twoClass] in class org.codehaus.groovy.grails.orm.hibernate.CustomCascadeMappingTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 47 | [SRC]void testCyclicManyToManyWithInheritance() { [MSG]Violation in class CyclicManyToManyWithInheritanceTests. Test method 'testCyclicManyToManyWithInheritance' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 11 | [SRC]void onSetUp() { [MSG]Violation in class DataBindingDynamicConstructorTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 27 | [SRC]sessionFactoryConnection = sessionFactoryConnection.getW..Connection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DataSourceTests. getWrappedConnection() can probably be rewritten as wrappedConnection |
UnnecessaryGetter | 3 | 30 | [SRC]sessionFactoryConnection = sessionFactoryConnection.getT..Connection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DataSourceTests. getTargetConnection() can probably be rewritten as targetConnection |
UnnecessaryGetter | 3 | 36 | [SRC]dataSourceConnection = dataSourceConnection.getTargetConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DataSourceTests. getTargetConnection() can probably be rewritten as targetConnection |
UnnecessaryGetter | 3 | 39 | [SRC]dataSourceConnection = dataSourceConnection.getWrappedConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DataSourceTests. getWrappedConnection() can probably be rewritten as wrappedConnection |
UnnecessaryGetter | 3 | 42 | [SRC]dataSourceConnection = dataSourceConnection.getTargetConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DataSourceTests. getTargetConnection() can probably be rewritten as targetConnection |
UseAssertSameInsteadOfAssertTrue | 3 | 48 | [SRC]assertTrue sessionFactoryConnection.is(dataSourceConnection) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DataSourceTests. assert method can be simplified using the assertSame method |
UseAssertSameInsteadOfAssertTrue | 3 | 49 | [SRC]assertFalse unproxiedConnection.is(dataSourceConnection) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DataSourceTests. assert method can be simplified using the assertSame method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 80 | [SRC]void onSetUp() { [MSG]Violation in class DeepHierarchyTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 30 | [SRC]def Book = ga.getDomainClass("DefaultSortOrderForCollect..Book").clazz [MSG]The variable [Book] in class org.codehaus.groovy.grails.orm.hibernate.DefaultSortOrderForCollectionTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 36 | [SRC]def bookClass = ga.getDomainClass("DeleteBook").clazz [MSG]The variable [bookClass] in class org.codehaus.groovy.grails.orm.hibernate.DeleteFromCollectionTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 25 | [SRC]void onSetUp() { [MSG]Violation in class DeleteMethodTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 46 | [SRC]protected void afterPluginInitialization() { [MSG]Violation in class DerivedPropertiesTests. The method afterPluginInitialization is both empty and not marked with @Override |
EmptyMethod | 2 | 49 | [SRC]protected void onTearDown() { [MSG]Violation in class DerivedPropertiesTests. The method onTearDown is both empty and not marked with @Override |
UnusedVariable | 2 | 54 | [SRC]def mc = mdc.clazz [MSG]The variable [mc] in class org.codehaus.groovy.grails.orm.hibernate.DerivedPropertiesTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 126 | [SRC]assertEquals 0, d.getDirtyPropertyNames().size() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DirtyTests. getDirtyPropertyNames() can probably be rewritten as dirtyPropertyNames |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 45 | [SRC]def Child2 = ga.getDomainClass("Child2").clazz [MSG]The variable [Child2] in class org.codehaus.groovy.grails.orm.hibernate.DiscriminatorColumnMappingTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 116 | [SRC]def Root = ga.getDomainClass("Root").clazz [MSG]The variable [Root] in class org.codehaus.groovy.grails.orm.hibernate.DiscriminatorFormulaMappingTests is not used |
UseAssertNullInsteadOfAssertEquals | 3 | 101 | [SRC]assertEquals null, rs.getString("tree") [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DiscriminatorFormulaMappingTests. assertEquals can be simplified using assertNull |
UnnecessaryObjectReferences | 3 | 111 | [SRC]rs.close() [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 40 | [SRC]void testNoModifyVersion() { [MSG]Violation in class DomainEventsTests. Test method 'testNoModifyVersion' makes no assertions |
UnusedVariable | 2 | 154 | [SRC]def success = false [MSG]The variable [success] in class org.codehaus.groovy.grails.orm.hibernate.DomainEventsTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 276 | [SRC]void onSetUp() { [MSG]Violation in class DomainEventsWithMethodsTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 48 | [SRC]assertEquals FlushMode.AUTO, session.getFlushMode() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DontFlushAfterDataAccessExceptionTests. getFlushMode() can probably be rewritten as flushMode |
UnnecessaryGetter | 3 | 58 | [SRC]assertEquals FlushMode.MANUAL, session.getFlushMode() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.DontFlushAfterDataAccessExceptionTests. getFlushMode() can probably be rewritten as flushMode |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 33 | [SRC]def tagClass = ga.getDomainClass("EagerFindByQueryTag").clazz [MSG]The variable [tagClass] in class org.codehaus.groovy.grails.orm.hibernate.EagerFindByQueryTests is not used |
UnusedVariable | 2 | 50 | [SRC]def tagClass = ga.getDomainClass("EagerFindByQueryTag").clazz [MSG]The variable [tagClass] in class org.codehaus.groovy.grails.orm.hibernate.EagerFindByQueryTests is not used |
UnusedVariable | 2 | 67 | [SRC]def tagClass = ga.getDomainClass("EagerFindByQueryTag").clazz [MSG]The variable [tagClass] in class org.codehaus.groovy.grails.orm.hibernate.EagerFindByQueryTests is not used |
UnusedVariable | 2 | 83 | [SRC]def tagClass = ga.getDomainClass("EagerFindByQueryTag").clazz [MSG]The variable [tagClass] in class org.codehaus.groovy.grails.orm.hibernate.EagerFindByQueryTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 81 | [SRC]def con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.EnumMappingTests. getConnection() can probably be rewritten as connection |
UnnecessaryGetter | 3 | 104 | [SRC]def con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.EnumMappingTests. getConnection() can probably be rewritten as connection |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 20 | [SRC]def init() { [MSG]Violation in class ExecuteUpdateTests. The method init is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
ImportFromSamePackage | 3 | 3 | [SRC]import org.codehaus.groovy.grails.orm.hibernate.Abstract..bernateTests |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryObjectReferences | 3 | 50 | [SRC]theClass.findAll("from FindAllTest where name = 'Angus'"..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 55 | [SRC]theClass.findAll("from FindAllTest where name = 'Malcolm..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 60 | [SRC]theClass.findAll("from FindAllTest where name = 'Malcolm..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 103 | [SRC]theClass.findAll("from FindAllTest where name = :name", ..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 108 | [SRC]theClass.findAll("from FindAllTest where name = :name", ..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 113 | [SRC]theClass.findAll("from FindAllTest where name = :name", ..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 186 | [SRC]def jakeB = new Person(firstName: 'Jake', lastName: 'Bro..: 11).save() [MSG]The variable [jakeB] in class org.codehaus.groovy.grails.orm.hibernate.FindByMethodTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 5 | [SRC]void onSetUp() { [MSG]Violation in class FindMethodTests. The method onSetUp is public but not a test method |
UnnecessaryObjectReferences | 3 | 74 | [SRC]theClass.find("from FindMethodTestClass where one = 'Ang..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 79 | [SRC]theClass.find("from FindMethodTestClass where one = 'Mal..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 84 | [SRC]theClass.find("from FindMethodTestClass where one = 'Mal..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 89 | [SRC]theClass.find("from FindMethodTestClass where one = :nam..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 94 | [SRC]theClass.find("from FindMethodTestClass where one = :nam..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 99 | [SRC]theClass.find("from FindMethodTestClass where one = :nam..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 104 | [SRC]theClass.find("from FindMethodTestClass where one = :nam..che: false]) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 109 | [SRC]theClass.find("from FindMethodTestClass where one = :nam..ache: true]) [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import grails.persistence.Entity [MSG]The [grails.persistence.Entity] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import grails.persistence.Entity [MSG]The [grails.persistence.Entity] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 19 | [SRC]List retrieveListOfNames() { ['bart'] } [MSG]Violation in class HibernateCriteriaBuilderTests. The method retrieveListOfNames is public but not a test method |
UnusedVariable | 2 | 1004 | [SRC]List results = parse("{ " + [MSG]The variable [results] in class org.codehaus.groovy.grails.orm.hibernate.HibernateCriteriaBuilderTests is not used |
UnusedVariable | 2 | 1032 | [SRC]List results = parse("{ " + [MSG]The variable [results] in class org.codehaus.groovy.grails.orm.hibernate.HibernateCriteriaBuilderTests is not used |
UnnecessaryGetter | 3 | 437 | [SRC]assertEquals clazzName , result.getClass().getName() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.HibernateCriteriaBuilderTests. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 1689 | [SRC]GroovyClassLoader cl = grailsApplication.getClassLoader() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.HibernateCriteriaBuilderTests. getClassLoader() can probably be rewritten as classLoader |
UnnecessaryGetter | 3 | 1706 | [SRC]Class tc = grailsApplication.getArtefact(DomainClassArte..).getClazz() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.HibernateCriteriaBuilderTests. getClazz() can probably be rewritten as clazz |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 51 | [SRC]void onPostInsert(PostInsertEvent event) {} [MSG]Violation in class TestAuditListener. The method onPostInsert is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 51 | [SRC]void onPostInsert(PostInsertEvent event) {} [MSG]Violation in class TestAuditListener. Method parameter [event] is never referenced in the method onPostInsert of class org.codehaus.groovy.grails.orm.hibernate.TestAuditListener |
EmptyMethod | 2 | 52 | [SRC]void onPostDelete(PostDeleteEvent event) {} [MSG]Violation in class TestAuditListener. The method onPostDelete is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 52 | [SRC]void onPostDelete(PostDeleteEvent event) {} [MSG]Violation in class TestAuditListener. Method parameter [event] is never referenced in the method onPostDelete of class org.codehaus.groovy.grails.orm.hibernate.TestAuditListener |
EmptyMethod | 2 | 53 | [SRC]void onSaveOrUpdate(SaveOrUpdateEvent event) {} [MSG]Violation in class TestAuditListener. The method onSaveOrUpdate is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 53 | [SRC]void onSaveOrUpdate(SaveOrUpdateEvent event) {} [MSG]Violation in class TestAuditListener. Method parameter [event] is never referenced in the method onSaveOrUpdate of class org.codehaus.groovy.grails.orm.hibernate.TestAuditListener |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 9 | [SRC]def authorClass = ga.getDomainClass("Author") [MSG]The variable [authorClass] in class org.codehaus.groovy.grails.orm.hibernate.ListDomainTests is not used |
JUnitPublicNonTestMethod | 2 | 23 | [SRC]void onSetUp() { [MSG]Violation in class ListDomainTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 45 | [SRC]def ids = [a1.id, a2.id, a2.id] [MSG]The variable [ids] in class org.codehaus.groovy.grails.orm.hibernate.ListMappingTests is not used |
JUnitPublicNonTestMethod | 2 | 54 | [SRC]void onSetUp() { [MSG]Violation in class ListMappingTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 107 | [SRC]def o = clazz.newInstance() [MSG]The variable [o] in class org.codehaus.groovy.grails.orm.hibernate.LoadMethodTests is not used |
UnusedImport | 3 | 7 | [SRC]import org.springframework.orm.hibernate3.HibernateObjec..ureException [MSG]The [org.springframework.orm.hibernate3.HibernateObjectRetrievalFailureException] import is never referenced |
UnnecessaryGetter | 3 | 29 | [SRC]assertEquals "id is accessible even if object doesn't ex..ance.getId() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.LoadMethodTests. getId() can probably be rewritten as id |
UnnecessaryGetter | 3 | 51 | [SRC]assertEquals "id is accessible even if object doesn't ex..ance.getId() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.LoadMethodTests. getId() can probably be rewritten as id |
UseAssertSameInsteadOfAssertTrue | 3 | 77 | [SRC]assertTrue getInstance.is(loadInstance) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.LoadMethodTests. assert method can be simplified using the assertSame method |
UseAssertSameInsteadOfAssertTrue | 3 | 96 | [SRC]assertFalse getInstance.is(loadInstance) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.LoadMethodTests. assert method can be simplified using the assertSame method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 72 | [SRC]void onSetUp() { [MSG]Violation in class ManyToManyCompositeIdTests. The method onSetUp is public but not a test method |
UnusedImport | 3 | 3 | [SRC]import junit.framework.TestCase [MSG]The [junit.framework.TestCase] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 28 | [SRC]void onSetUp() { [MSG]Violation in class ManyToManyLazinessTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 114 | [SRC]void onSetUp() { [MSG]Violation in class ManyToManyTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 32 | [SRC]def ShapeAttribute = ga.getDomainClass("ShapeAttribute").clazz [MSG]The variable [ShapeAttribute] in class org.codehaus.groovy.grails.orm.hibernate.ManyToManyWithInheritanceTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 28 | [SRC]void onSetUp() { [MSG]Violation in class MapDomainTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 30 | [SRC]void onSetUp() { [MSG]Violation in class MapMappingJoinTableTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertFalseInsteadOfNegation | 2 | 26 | [SRC]assertTrue !book.hasErrors() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MapMappingTests. assertTrue(!book.hasErrors()) can be simplified to assertFalse(book.hasErrors()) |
JUnitPublicNonTestMethod | 2 | 90 | [SRC]void onSetUp() { [MSG]Violation in class MapMappingTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 26 | [SRC]void onSetUp() { [MSG]Violation in class MappedByColumn2Tests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 42 | [SRC]void onSetUp() { [MSG]Violation in class MappedByColumnTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertFalseInsteadOfNegation | 2 | 73 | [SRC]assertTrue "should have inherited blank from shared cons..", !cp.blank [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDefaultsTests. assertTrue(!cp.blank) can be simplified to assertFalse(cp.blank) |
UseAssertFalseInsteadOfNegation | 2 | 75 | [SRC]assertTrue "should not have inherited matches from [anot..", !cp.email [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDefaultsTests. assertTrue(!cp.email) can be simplified to assertFalse(cp.email) |
ChainedTest | 2 | 79 | [SRC]testMappingDefaults() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDefaultsTests. The test method testMappingDefaults() is being invoked explicitly from within a unit test. Tests should be isolated and not dependent on one another |
UseAssertEqualsInsteadOfAssertTrue | 3 | 74 | [SRC]assertTrue "size should have been in the specified range..0 == cp.size [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDefaultsTests. Replace assertTrue with a call to assertEquals() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertTrueInsteadOfAssertEquals | 3 | 48 | [SRC]assert rs.next() == true [MSG]The expression '(rs.next() == true)' can be simplified to 'rs.next()' |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 12 | [SRC]void testTableMapping() { [MSG]Violation in class MappingDslTests. Test method 'testTableMapping' makes no assertions |
UnusedVariable | 2 | 113 | [SRC]DataSource ds = applicationContext.dataSource [MSG]The variable [ds] in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests is not used |
UnusedVariable | 2 | 203 | [SRC]def personClass = ga.getDomainClass("MappedPerson").clazz [MSG]The variable [personClass] in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests is not used |
JUnitTestMethodWithoutAssert | 2 | 283 | [SRC]void testCompositeIdAssignedGenerator_GRAILS_6289() { [MSG]Violation in class MappingDslTests. Test method 'testCompositeIdAssignedGenerator_GRAILS_6289' makes no assertions |
UnnecessaryGetter | 3 | 17 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getConnection() can probably be rewritten as connection |
UnnecessaryGetter | 3 | 35 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getConnection() can probably be rewritten as connection |
UnnecessaryGetter | 3 | 82 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getConnection() can probably be rewritten as connection |
UnnecessaryGetter | 3 | 121 | [SRC]final cmd = session.getSessionFactory().getClassMetadata..Class.clazz) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getSessionFactory() can probably be rewritten as sessionFactory |
UnnecessaryGetter | 3 | 153 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getConnection() can probably be rewritten as connection |
UnnecessaryGetter | 3 | 192 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getConnection() can probably be rewritten as connection |
UnnecessaryGetter | 3 | 220 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getConnection() can probably be rewritten as connection |
UnnecessaryGetter | 3 | 248 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getConnection() can probably be rewritten as connection |
UnnecessaryGetter | 3 | 273 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getConnection() can probably be rewritten as connection |
UnnecessaryGetter | 3 | 303 | [SRC]connection = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.MappingDslTests. getConnection() can probably be rewritten as connection |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 348 | [SRC]def Library = ga.getDomainClass('MdsLibrary').clazz [MSG]The variable [Library] in class org.codehaus.groovy.grails.orm.hibernate.MultipleDataSourceTests is not used |
UnusedVariable | 2 | 349 | [SRC]def Visit = ga.getDomainClass('MdsVisit').clazz [MSG]The variable [Visit] in class org.codehaus.groovy.grails.orm.hibernate.MultipleDataSourceTests is not used |
UnusedVariable | 2 | 379 | [SRC]def Library = ga.getDomainClass('MdsLibrary').clazz [MSG]The variable [Library] in class org.codehaus.groovy.grails.orm.hibernate.MultipleDataSourceTests is not used |
UnusedVariable | 2 | 380 | [SRC]def Visit = ga.getDomainClass('MdsVisit').clazz [MSG]The variable [Visit] in class org.codehaus.groovy.grails.orm.hibernate.MultipleDataSourceTests is not used |
UnusedVariable | 2 | 409 | [SRC]def Library = ga.getDomainClass('MdsLibrary').clazz [MSG]The variable [Library] in class org.codehaus.groovy.grails.orm.hibernate.MultipleDataSourceTests is not used |
UnusedVariable | 2 | 410 | [SRC]def Visit = ga.getDomainClass('MdsVisit').clazz [MSG]The variable [Visit] in class org.codehaus.groovy.grails.orm.hibernate.MultipleDataSourceTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import grails.persistence.Entity [MSG]The [grails.persistence.Entity] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 79 | [SRC]thisWeeksPaperbacks() { [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.NamedCriteriaPublication. Parentheses in the 'thisWeeksPaperbacks' method call are unnecessary and can be removed. |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 504 | [SRC]def titles = publications.title [MSG]The variable [titles] in class org.codehaus.groovy.grails.orm.hibernate.NamedCriteriaTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessarySubstring | 3 | 77 | [SRC]names << ddl.substring(0, ddl.indexOf(' ')) [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.NamingTests. The String.substring(int, int) method can be replaced with the subscript operator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 35 | [SRC]def Root = ga.getDomainClass("onetomanyselfinheritancete..Root").clazz [MSG]The variable [Root] in class org.codehaus.groovy.grails.orm.hibernate.OneToManySelfInheritanceTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 47 | [SRC]void testPersistAssociationWithCompositeId() { [MSG]Violation in class OneToManyWithComposideIdentifierTests. Test method 'testPersistAssociationWithCompositeId' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 57 | [SRC]void testUpdateInverseSide() { [MSG]Violation in class OneToManyWithComposideIdentifierTests. Test method 'testUpdateInverseSide' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.springframework.util.Log4jConfigurer [MSG]The [org.springframework.util.Log4jConfigurer] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 39 | [SRC]def orgB = Organization.newInstance(name:'Org B', descri..org1).save() [MSG]The variable [orgB] in class org.codehaus.groovy.grails.orm.hibernate.OneToManyWithSelfAndInheritanceTests is not used |
UnusedVariable | 2 | 40 | [SRC]def orgaa = Organization.newInstance(name:'Org aa', desc..orgA).save() [MSG]The variable [orgaa] in class org.codehaus.groovy.grails.orm.hibernate.OneToManyWithSelfAndInheritanceTests is not used |
UnusedVariable | 2 | 44 | [SRC]def xorgB = ExtOrganization.newInstance(name:'ExtOrg B',..org1).save() [MSG]The variable [xorgB] in class org.codehaus.groovy.grails.orm.hibernate.OneToManyWithSelfAndInheritanceTests is not used |
UnusedVariable | 2 | 45 | [SRC]def xorgaa = ExtOrganization.newInstance(name:'ExtOrg aa..orgA).save() [MSG]The variable [xorgaa] in class org.codehaus.groovy.grails.orm.hibernate.OneToManyWithSelfAndInheritanceTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 750 | [SRC]MetaClass domain = obj.getMetaClass() [MSG]The variable [domain] in class org.codehaus.groovy.grails.orm.hibernate.PersistenceMethodTests is not used |
UnnecessaryGetter | 3 | 438 | [SRC]returnValue = domainClass.getAll() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.PersistenceMethodTests. getAll() can probably be rewritten as all |
UnnecessaryGetter | 3 | 750 | [SRC]MetaClass domain = obj.getMetaClass() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.PersistenceMethodTests. getMetaClass() can probably be rewritten as metaClass |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 11 | [SRC]void testLockMethod() { [MSG]Violation in class PessimisticLockingTests. Test method 'testLockMethod' makes no assertions |
JUnitPublicNonTestMethod | 2 | 43 | [SRC]void onSetUp() { [MSG]Violation in class PessimisticLockingTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 159 | [SRC]datastore.getEventTriggeringInterceptor().failOnError = true [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.SavePersistentMethodTests. getEventTriggeringInterceptor() can probably be rewritten as eventTriggeringInterceptor |
UnnecessaryGetter | 3 | 177 | [SRC]def interceptor = datastore.getEventTriggeringInterceptor() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.SavePersistentMethodTests. getEventTriggeringInterceptor() can probably be rewritten as eventTriggeringInterceptor |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 10 | [SRC]def bookClass = ga.getDomainClass("Book") [MSG]The variable [bookClass] in class org.codehaus.groovy.grails.orm.hibernate.SimpleBelongsToMappingTests is not used |
JUnitPublicNonTestMethod | 2 | 15 | [SRC]void onSetUp() { [MSG]Violation in class SimpleBelongsToMappingTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 36 | [SRC]def sub1Class = ga.getDomainClass("TablePerHierarchSub1").clazz [MSG]The variable [sub1Class] in class org.codehaus.groovy.grails.orm.hibernate.TablePerHierarchyAssocationTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 37 | [SRC]void testMappedIdentityForSubclass() { [MSG]Violation in class TablePerSubclassIdentityMappingTests. Test method 'testMappedIdentityForSubclass' makes no assertions |
UnnecessaryGetter | 3 | 42 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.TablePerSubclassIdentityMappingTests. getConnection() can probably be rewritten as connection |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 37 | [SRC]void testGeneratedTables() { [MSG]Violation in class TablePerSubclassWithCustomTableNameTests. Test method 'testGeneratedTables' makes no assertions |
UnnecessaryGetter | 3 | 42 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.TablePerSubclassWithCustomTableNameTests. getConnection() can probably be rewritten as connection |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 100 | [SRC]void onSetUp() { [MSG]Violation in class TwoManyToManyTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 7 | [SRC]void testTwoUniOneToManys() { [MSG]Violation in class TwoUnidirectionalOneToManyTests. Test method 'testTwoUniOneToManys' makes no assertions |
JUnitPublicNonTestMethod | 2 | 23 | [SRC]void onSetUp() { [MSG]Violation in class TwoUnidirectionalOneToManyTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 22 | [SRC]void onSetUp() { [MSG]Violation in class URLMappingTests. The method onSetUp is public but not a test method |
UnnecessaryObjectReferences | 3 | 16 | [SRC]b.discard() [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 12 | [SRC]void testAnnotatedOneToManyDomain() { [MSG]Violation in class UnidirectionalOneToManyHibernateMappedTests. Test method 'testAnnotatedOneToManyDomain' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 26 | [SRC]void testUnidirectionalOneToManyWithExplicityJoinTable() { [MSG]Violation in class UnidirectionalOneToManyWithJoinTableTests. Test method 'testUnidirectionalOneToManyWithExplicityJoinTable' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 148 | [SRC]con = ds.getConnection() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.UserTypeMappingTests. getConnection() can probably be rewritten as connection |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 5 | [SRC]void onSetUp() { [MSG]Violation in class ValidationFailureTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 40 | [SRC]void testVersionColumnMapping() { [MSG]Violation in class VersionColumnTests. Test method 'testVersionColumnMapping' makes no assertions |
UnusedImport | 3 | 3 | [SRC]import java.sql.Connection [MSG]The [java.sql.Connection] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 24 | [SRC]void onSetUp() { [MSG]Violation in class WithCriteriaMethodTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 33 | [SRC]void onSetUp() { [MSG]Violation in class WithTransactionMethodTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 197 | [SRC]def book = Book.newInstance(title: "Pattern Recognition"..Error: true) [MSG]The variable [book] in class org.codehaus.groovy.grails.orm.hibernate.binding.AssociationDataBindingTests is not used |
UnnecessaryObjectReferences | 3 | 332 | [SRC]request.addParameter("books[0].reviewers['bob'].name", "Bob Bloggs") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 333 | [SRC]request.addParameter("books[0].reviewers['chuck'].name",..uck Bloggs") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 334 | [SRC]request.addParameter("books[1].title", "The Stand") [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 11 | [SRC]void onSetUp() { [MSG]Violation in class NonDomainCollectionBindingTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 672 | [SRC]ConstrainedProperty constrainedProperty = getConstrained..ngProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedStringProperty() can probably be rewritten as constrainedStringProperty |
UnnecessaryGetter | 3 | 677 | [SRC]constrainedProperty = getConstrainedStringProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedStringProperty() can probably be rewritten as constrainedStringProperty |
UnnecessaryGetter | 3 | 682 | [SRC]constrainedProperty = getConstrainedStringProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedStringProperty() can probably be rewritten as constrainedStringProperty |
UnnecessaryGetter | 3 | 686 | [SRC]constrainedProperty = getConstrainedStringProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedStringProperty() can probably be rewritten as constrainedStringProperty |
UnnecessaryGetter | 3 | 692 | [SRC]constrainedProperty = getConstrainedStringProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedStringProperty() can probably be rewritten as constrainedStringProperty |
UnnecessaryGetter | 3 | 702 | [SRC]ConstrainedProperty constrainedProperty = getConstrained..alProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryGetter | 3 | 709 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 710 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty...l("123.45")) [MSG]Can be rewritten as 123.45 or 123.45G |
UnnecessaryGetter | 3 | 715 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 717 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty...("-123.45")) [MSG]Can be rewritten as -123.45 or -123.45G |
UnnecessaryGetter | 3 | 721 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 722 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty...("123.45"))) [MSG]Can be rewritten as 123.45 or 123.45G |
UnnecessaryGetter | 3 | 726 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 727 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty...mal("123"))) [MSG]Can be rewritten as -123.45 or -123.45G |
UnnecessaryGetter | 3 | 731 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryGetter | 3 | 737 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 738 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty...l("123.45")) [MSG]Can be rewritten as 123.45 or 123.45G |
UnnecessaryGetter | 3 | 744 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 745 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty..."123.4567")) [MSG]Can be rewritten as 123.4567 or 123.4567G |
UnnecessaryGetter | 3 | 751 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 752 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty..."123.4567")) [MSG]Can be rewritten as 123.4567 or 123.4567G |
UnnecessaryGetter | 3 | 754 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 755 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty...7890.4567")) [MSG]Can be rewritten as 12345678901234567890.4567 or 12345678901234567890.4567G |
UnnecessaryGetter | 3 | 757 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 758 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty...-123.4567")) [MSG]Can be rewritten as -123.4567 or -123.4567G |
UnnecessaryGetter | 3 | 760 | [SRC]constrainedProperty = getConstrainedBigDecimalProperty() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinderTests. getConstrainedBigDecimalProperty() can probably be rewritten as constrainedBigDecimalProperty |
UnnecessaryBigDecimalInstantiation | 3 | 761 | [SRC]constrainedProperty.applyConstraint(ConstrainedProperty...7890.4567")) [MSG]Can be rewritten as -12345678901234567890.4567 or -12345678901234567890.4567G |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
MisorderedStaticImports | 3 | 4 | [SRC]import static org.codehaus.groovy.grails.orm.hibernate.c..ernateUtil.* [MSG]Static imports should appear before normal imports |
JUnitUnnecessarySetUp | 3 | 8 | [SRC]@Override protected void setUp() { [MSG]Violation in class GrailsHibernateUtilTests. The setUp() method contains no logic and can be removed |
UnnecessaryOverridingMethod | 3 | 8 | [SRC]@Override protected void setUp() { [MSG]Violation in class GrailsHibernateUtilTests. The method setUp contains no logic and can be safely deleted |
JUnitUnnecessaryTearDown | 3 | 12 | [SRC]@Override protected void tearDown() { [MSG]Violation in class GrailsHibernateUtilTests. The tearDown() method contains no logic and can be removed |
UnnecessaryOverridingMethod | 3 | 12 | [SRC]@Override protected void tearDown() { [MSG]Violation in class GrailsHibernateUtilTests. The method tearDown contains no logic and can be safely deleted |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EqualsOverloaded | 2 | 16 | [SRC]boolean equals(Object x, Object y) { x == y } [MSG]Violation in class MonetaryAmountUserType. The class org.codehaus.groovy.grails.orm.hibernate.cfg.MonetaryAmountUserType overloads the equals method, it does not override it. |
UnusedMethodParameter | 2 | 21 | [SRC]Object nullSafeGet(ResultSet resultSet, String[] names, ..LException { [MSG]Violation in class MonetaryAmountUserType. Method parameter [owner] is never referenced in the method nullSafeGet of class org.codehaus.groovy.grails.orm.hibernate.cfg.MonetaryAmountUserType |
UnusedMethodParameter | 2 | 44 | [SRC]Object assemble(Serializable cached, Object owner) { cached } [MSG]Violation in class MonetaryAmountUserType. Method parameter [owner] is never referenced in the method assemble of class org.codehaus.groovy.grails.orm.hibernate.cfg.MonetaryAmountUserType |
UnusedMethodParameter | 2 | 46 | [SRC]Object replace(Object original, Object target, Object ow..{ original } [MSG]Violation in class MonetaryAmountUserType. Method parameter [target] is never referenced in the method replace of class org.codehaus.groovy.grails.orm.hibernate.cfg.MonetaryAmountUserType |
UnusedMethodParameter | 2 | 46 | [SRC]Object replace(Object original, Object target, Object ow..{ original } [MSG]Violation in class MonetaryAmountUserType. Method parameter [owner] is never referenced in the method replace of class org.codehaus.groovy.grails.orm.hibernate.cfg.MonetaryAmountUserType |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EqualsOverloaded | 2 | 22 | [SRC]boolean equals(Object x, Object y) { x.name == y.name } [MSG]Violation in class MyUserType. The class org.codehaus.groovy.grails.orm.hibernate.cfg.MyUserType overloads the equals method, it does not override it. |
UnusedMethodParameter | 2 | 27 | [SRC]Object nullSafeGet(ResultSet resultSet, String[] names, ..LException { [MSG]Violation in class MyUserType. Method parameter [owner] is never referenced in the method nullSafeGet of class org.codehaus.groovy.grails.orm.hibernate.cfg.MyUserType |
UnusedMethodParameter | 2 | 43 | [SRC]Object assemble(Serializable cached, Object owner) { cached } [MSG]Violation in class MyUserType. Method parameter [owner] is never referenced in the method assemble of class org.codehaus.groovy.grails.orm.hibernate.cfg.MyUserType |
UnusedMethodParameter | 2 | 45 | [SRC]Object replace(Object original, Object target, Object ow..{ original } [MSG]Violation in class MyUserType. Method parameter [target] is never referenced in the method replace of class org.codehaus.groovy.grails.orm.hibernate.cfg.MyUserType |
UnusedMethodParameter | 2 | 45 | [SRC]Object replace(Object original, Object target, Object ow..{ original } [MSG]Violation in class MyUserType. Method parameter [owner] is never referenced in the method replace of class org.codehaus.groovy.grails.orm.hibernate.cfg.MyUserType |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 65 | [SRC]def beforeValidate(List properties) { [MSG]Violation in class ClassWithListArgBeforeValidate. Method parameter [properties] is never referenced in the method beforeValidate of class org.codehaus.groovy.grails.orm.hibernate.metaclass.ClassWithListArgBeforeValidate |
UnusedMethodParameter | 2 | 76 | [SRC]def beforeValidate(List properties) { [MSG]Violation in class ClassWithOverloadedBeforeValidate. Method parameter [properties] is never referenced in the method beforeValidate of class org.codehaus.groovy.grails.orm.hibernate.metaclass.ClassWithOverloadedBeforeValidate |
UnusedImport | 3 | 3 | [SRC]import groovy.mock.interceptor.MockFor [MSG]The [groovy.mock.interceptor.MockFor] import is never referenced |
ImportFromSamePackage | 3 | 4 | [SRC]import org.codehaus.groovy.grails.orm.hibernate.metaclas..idateHelper; |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 6 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequest [MSG]The [org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequest] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 6 | [SRC]import org.springframework.orm.hibernate3.SessionHolder [MSG]The [org.springframework.orm.hibernate3.SessionHolder] import is never referenced |
UnnecessaryGetter | 3 | 28 | [SRC]def interceptor = getInterceptor() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.support.HibernatePersistenceContextInterceptorTests. getInterceptor() can probably be rewritten as interceptor |
UseAssertTrueInsteadOfAssertEquals | 3 | 29 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 31 | [SRC]assertEquals("interceptor open", true, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 33 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 35 | [SRC]assertEquals("interceptor open", true, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 37 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UnnecessaryGetter | 3 | 41 | [SRC]def interceptor = getInterceptor() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.support.HibernatePersistenceContextInterceptorTests. getInterceptor() can probably be rewritten as interceptor |
UseAssertTrueInsteadOfAssertEquals | 3 | 42 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 45 | [SRC]assertEquals("interceptor open", true, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 47 | [SRC]assertEquals("interceptor open", true, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 49 | [SRC]assertEquals("interceptor open", true, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 51 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 54 | [SRC]assertEquals("interceptor open", true, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UnnecessaryObjectReferences | 3 | 55 | [SRC]interceptor.destroy() [MSG]The code could be more concise by using a with() or identity() block |
UseAssertTrueInsteadOfAssertEquals | 3 | 56 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UnnecessaryGetter | 3 | 60 | [SRC]def interceptor = getInterceptor() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.support.HibernatePersistenceContextInterceptorTests. getInterceptor() can probably be rewritten as interceptor |
UseAssertTrueInsteadOfAssertEquals | 3 | 70 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 72 | [SRC]assertEquals("interceptor open", true, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 74 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UnnecessaryGetter | 3 | 81 | [SRC]def interceptor = getInterceptor() [MSG]Violation in class org.codehaus.groovy.grails.orm.hibernate.support.HibernatePersistenceContextInterceptorTests. getInterceptor() can probably be rewritten as interceptor |
UseAssertTrueInsteadOfAssertEquals | 3 | 93 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 95 | [SRC]assertEquals("interceptor open", true, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 97 | [SRC]assertEquals("interceptor open", false, interceptor.open) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 15 | [SRC]def userClass = ga.getDomainClass("User") [MSG]The variable [userClass] in class org.codehaus.groovy.grails.orm.hibernate.validation.UniqueConstraintTests is not used |
JUnitPublicNonTestMethod | 2 | 265 | [SRC]void onSetUp() { [MSG]Violation in class UniqueConstraintTests. The method onSetUp is public but not a test method |
UnnecessaryObjectReferences | 3 | 50 | [SRC]user.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 52 | [SRC]user.save(true) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 63 | [SRC]user.organization = "organization1" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 64 | [SRC]user.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 68 | [SRC]user.id = 123L [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 69 | [SRC]user.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 79 | [SRC]user.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 83 | [SRC]user.code = "321" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 84 | [SRC]user.login = "login1" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 85 | [SRC]user.grp = "group1" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 86 | [SRC]user.department = "department1" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 87 | [SRC]user.organization = "organization2" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 88 | [SRC]user.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 92 | [SRC]user.grp = "group2" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 93 | [SRC]user.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 97 | [SRC]user.grp = "group1" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 98 | [SRC]user.department = "department2" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 99 | [SRC]user.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 103 | [SRC]user.login = "login2" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 104 | [SRC]user.grp = "group2" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 105 | [SRC]user.department = "department1" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 106 | [SRC]user.organization = "organization1" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 107 | [SRC]user.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 111 | [SRC]user.organization = "organization2" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 112 | [SRC]user.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 228 | [SRC]user1.save(true) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 236 | [SRC]user2.save(true) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 244 | [SRC]user3.save(true) [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessarySelfAssignment | 3 | 28 | [SRC]dataSource = dataSource [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 59 | [SRC]def addressClass = ga.getDomainClass("Address") [MSG]The variable [addressClass] in class org.codehaus.groovy.grails.plugins.RelationshipManagementMethodsTests is not used |
JUnitPublicNonTestMethod | 2 | 142 | [SRC]void onSetUp() { [MSG]Violation in class RelationshipManagementMethodsTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 75 | [SRC]def appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.plugins.scaffolding.ScaffoldingGrailsPluginTests. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 87 | [SRC]gcl.getLoadedClasses().find { it.name.endsWith("TagLib") }) [MSG]Violation in class org.codehaus.groovy.grails.plugins.scaffolding.ScaffoldingGrailsPluginTests. getLoadedClasses() can probably be rewritten as loadedClasses |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 5 | [SRC]import org.springframework.web.context.support.WebApplic..ContextUtils [MSG]The [org.springframework.web.context.support.WebApplicationContextUtils] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 12 | [SRC]void onSetUp() { [MSG]Violation in class ServicesGrailsPluginTests. The method onSetUp is public but not a test method |
UnnecessaryGetter | 3 | 110 | [SRC]springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.plugins.services.ServicesGrailsPluginTests. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 46 | [SRC]void onSetUp() { [MSG]Violation in class ServiceReloadTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 26 | [SRC]protected void setUp() { [MSG]Violation in class DefaultGrailsTemplateGeneratorTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 33 | [SRC]protected void tearDown() { [MSG]Violation in class DefaultGrailsTemplateGeneratorTests. The method tearDown() does not call super.tearDown() |
UnusedImport | 3 | 14 | [SRC]import org.codehaus.groovy.grails.plugins.PluginManagerHolder [MSG]The [org.codehaus.groovy.grails.plugins.PluginManagerHolder] import is never referenced |
UseAssertTrueInsteadOfAssertEquals | 3 | 68 | [SRC]assert sw.toString().contains('g:datePicker name="regula..}"') == true [MSG]The expression '(sw.toString().contains(g:datePicker name="regularDate" precision="day" value="${scaffoldingTestInstance?.regularDate}") == true)' can be simplified to 'sw.toString().contains(g:datePicker name="regularDate" precision="day" value="${scaffoldingTestInstance?.regularDate}")' |
UseAssertTrueInsteadOfAssertEquals | 3 | 69 | [SRC]assert sw.toString().contains('datePicker name="sqlDate"..e}') == true [MSG]The expression '(sw.toString().contains(datePicker name="sqlDate" precision="day" value="${scaffoldingTestInstance?.sqlDate}) == true)' can be simplified to 'sw.toString().contains(datePicker name="sqlDate" precision="day" value="${scaffoldingTestInstance?.sqlDate})' |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
DuplicateImport | 3 | 7 | [SRC]import org.springframework.web.context.request.* |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 33 | [SRC]void tearDown() { [MSG]Violation in class ScaffoldedGroovyPageViewTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 60 | [SRC]protected String generateViewSource(String viewName, Gra..mainClass) { [MSG]Violation in class TestScaffoldingViewResolver. Method parameter [domainClass] is never referenced in the method generateViewSource of class org.codehaus.groovy.grails.scaffolding.view.TestScaffoldingViewResolver |
UnnecessaryGetter | 3 | 38 | [SRC]viewResolver.servletContext = webRequest.getServletContext() [MSG]Violation in class org.codehaus.groovy.grails.scaffolding.view.ScaffoldingViewResolverTests. getServletContext() can probably be rewritten as servletContext |
UnnecessaryGetter | 3 | 48 | [SRC]def view = viewResolver.loadView("/foo/list", Locale.getDefault()) [MSG]Violation in class org.codehaus.groovy.grails.scaffolding.view.ScaffoldingViewResolverTests. getDefault() can probably be rewritten as default |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertEqualsInsteadOfAssertTrue | 3 | 100 | [SRC]assertTrue("Error not found for field ${field}, errors w..ld) == null) [MSG]Violation in class org.codehaus.groovy.grails.validation.VetoingNullableBehaviourTests. Replace assertTrue with a call to assertEquals() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 93 | [SRC]def Book = ga.getDomainClass("databindingwithassociation..ook3").clazz [MSG]The variable [Book] in class org.codehaus.groovy.grails.web.binding.DataBindingWithAssociationTests is not used |
UnusedVariable | 2 | 120 | [SRC]def Book = ga.getDomainClass("databindingwithassociation..ook3").clazz [MSG]The variable [Book] in class org.codehaus.groovy.grails.web.binding.DataBindingWithAssociationTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
MisorderedStaticImports | 3 | 6 | [SRC]import static org.hamcrest.CoreMatchers.* [MSG]Static imports should appear before normal imports |
MisorderedStaticImports | 3 | 7 | [SRC]import static org.junit.Assert.assertThat [MSG]Static imports should appear before normal imports |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 55 | [SRC]def converter = parent as JSON [MSG]The variable [converter] in class org.codehaus.groovy.grails.web.converters.ConvertsWithHibernateProxiesTests is not used |
UnusedVariable | 2 | 74 | [SRC]def converter = parent as XML [MSG]The variable [converter] in class org.codehaus.groovy.grails.web.converters.ConvertsWithHibernateProxiesTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 10 | [SRC]void testWithClasspath() { [MSG]Violation in class GrailsTaskTests. The method testWithClasspath is both empty and not marked with @Override |
JUnitTestMethodWithoutAssert | 2 | 10 | [SRC]void testWithClasspath() { [MSG]Violation in class GrailsTaskTests. Test method 'testWithClasspath' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 706 | [SRC]def dataSource = ctx.getBean("dataSource") [MSG]The variable [dataSource] in class grails.spring.BeanBuilderTests is not used |
JUnitTestMethodWithoutAssert | 2 | 709 | [SRC]void testHolyGrailWiring() { [MSG]Violation in class BeanBuilderTests. Test method 'testHolyGrailWiring' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 760 | [SRC]void testBeanBuilderWithScript() { [MSG]Violation in class BeanBuilderTests. Test method 'testBeanBuilderWithScript' makes no assertions |
EmptyMethod | 2 | 867 | [SRC]Object remove(String name) { [MSG]Violation in class TestScope. The method remove is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 867 | [SRC]Object remove(String name) { [MSG]Violation in class TestScope. Method parameter [name] is never referenced in the method remove of class grails.spring.TestScope |
EmptyMethod | 2 | 871 | [SRC]void registerDestructionCallback(String name, Runnable callback) {} [MSG]Violation in class TestScope. The method registerDestructionCallback is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 871 | [SRC]void registerDestructionCallback(String name, Runnable callback) {} [MSG]Violation in class TestScope. Method parameter [name] is never referenced in the method registerDestructionCallback of class grails.spring.TestScope |
UnusedMethodParameter | 2 | 871 | [SRC]void registerDestructionCallback(String name, Runnable callback) {} [MSG]Violation in class TestScope. Method parameter [callback] is never referenced in the method registerDestructionCallback of class grails.spring.TestScope |
UnusedMethodParameter | 2 | 875 | [SRC]Object get(String name, ObjectFactory<?> objectFactory) { [MSG]Violation in class TestScope. Method parameter [name] is never referenced in the method get of class grails.spring.TestScope |
UnusedMethodParameter | 2 | 880 | [SRC]Object resolveContextualObject(String s) { null } [MSG]Violation in class TestScope. Method parameter [s] is never referenced in the method resolveContextualObject of class grails.spring.TestScope |
UnusedImport | 3 | 18 | [SRC]import org.codehaus.groovy.grails.plugins.GrailsPluginManager; [MSG]The [org.codehaus.groovy.grails.plugins.GrailsPluginManager] import is never referenced |
UnnecessaryGetter | 3 | 149 | [SRC]GenericApplicationContext appCtx = bb.getSpringConfig()...ionContext() [MSG]Violation in class grails.spring.BeanBuilderTests. getUnrefreshedApplicationContext() can probably be rewritten as unrefreshedApplicationContext |
UnnecessaryGetter | 3 | 149 | [SRC]GenericApplicationContext appCtx = bb.getSpringConfig()...ionContext() [MSG]Violation in class grails.spring.BeanBuilderTests. getSpringConfig() can probably be rewritten as springConfig |
UnnecessaryGetter | 3 | 150 | [SRC]appCtx.getBeanFactory().registerScope("test", scope) [MSG]Violation in class grails.spring.BeanBuilderTests. getBeanFactory() can probably be rewritten as beanFactory |
UnnecessaryGetter | 3 | 176 | [SRC]appCtx = bb.getSpringConfig().getUnrefreshedApplicationContext() [MSG]Violation in class grails.spring.BeanBuilderTests. getUnrefreshedApplicationContext() can probably be rewritten as unrefreshedApplicationContext |
UnnecessaryGetter | 3 | 176 | [SRC]appCtx = bb.getSpringConfig().getUnrefreshedApplicationContext() [MSG]Violation in class grails.spring.BeanBuilderTests. getSpringConfig() can probably be rewritten as springConfig |
UnnecessaryGetter | 3 | 177 | [SRC]appCtx.getBeanFactory().registerScope("test", scope) [MSG]Violation in class grails.spring.BeanBuilderTests. getBeanFactory() can probably be rewritten as beanFactory |
UnnecessaryGetter | 3 | 237 | [SRC]GenericApplicationContext appCtx = bb.getSpringConfig()...ionContext() [MSG]Violation in class grails.spring.BeanBuilderTests. getUnrefreshedApplicationContext() can probably be rewritten as unrefreshedApplicationContext |
UnnecessaryGetter | 3 | 237 | [SRC]GenericApplicationContext appCtx = bb.getSpringConfig()...ionContext() [MSG]Violation in class grails.spring.BeanBuilderTests. getSpringConfig() can probably be rewritten as springConfig |
UnnecessaryGetter | 3 | 239 | [SRC]appCtx.getBeanFactory().registerScope("test", scope) [MSG]Violation in class grails.spring.BeanBuilderTests. getBeanFactory() can probably be rewritten as beanFactory |
UnnecessarySelfAssignment | 3 | 305 | [SRC]quest = quest [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessaryPackageReference | 3 | 312 | [SRC]shouldFail(org.springframework.beans.factory.BeanIsAbstr..Exception) { [MSG]The org.springframework.beans.factory.BeanIsAbstractException class was explicitly imported, so specifying the package name is not necessary |
UnnecessarySelfAssignment | 3 | 327 | [SRC]quest = quest [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UseAssertTrueInsteadOfAssertEquals | 3 | 376 | [SRC]assertEquals true, bean1.props?.overweight [MSG]assertEquals can be simplified using assertTrue or assertFalse |
ConstantAssertExpression | 3 | 590 | [SRC]assert "marge", marge.person [MSG]The assert statement within class grails.spring.BeanBuilderTests has a constant boolean expression [marge] |
ConstantAssertExpression | 3 | 608 | [SRC]assert "marge", marge.person [MSG]The assert statement within class grails.spring.BeanBuilderTests has a constant boolean expression [marge] |
ConstantAssertExpression | 3 | 632 | [SRC]assert "homer", homer.person [MSG]The assert statement within class grails.spring.BeanBuilderTests has a constant boolean expression [homer] |
ConstantAssertExpression | 3 | 633 | [SRC]assert 45, homer.age [MSG]The assert statement within class grails.spring.BeanBuilderTests has a constant boolean expression [45] |
ConstantAssertExpression | 3 | 635 | [SRC]assert "marge", ctx.getBean("marge").person [MSG]The assert statement within class grails.spring.BeanBuilderTests has a constant boolean expression [marge] |
ConstantAssertExpression | 3 | 637 | [SRC]assert "mcBain", ctx.getBean("mcBain").person [MSG]The assert statement within class grails.spring.BeanBuilderTests has a constant boolean expression [mcBain] |
UnnecessaryGetter | 3 | 877 | [SRC]objectFactory.getObject() [MSG]Violation in class grails.spring.TestScope. getObject() can probably be rewritten as object |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 10 | [SRC]void testControllerClass() { [MSG]Violation in class ControllerUnitTestCaseTests. Test method 'testControllerClass' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 17 | [SRC]void testExplicitControllerClass() { [MSG]Violation in class ControllerUnitTestCaseTests. Test method 'testExplicitControllerClass' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 25 | [SRC]void testMockCommandObject() { [MSG]Violation in class ControllerUnitTestCaseTests. Test method 'testMockCommandObject' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 32 | [SRC]void testGetSetModelAndView() { [MSG]Violation in class ControllerUnitTestCaseTests. Test method 'testGetSetModelAndView' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 39 | [SRC]void testResetWithResponseNotCommitted() { [MSG]Violation in class ControllerUnitTestCaseTests. Test method 'testResetWithResponseNotCommitted' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 46 | [SRC]void testResetWithResponseCommitted() { [MSG]Violation in class ControllerUnitTestCaseTests. Test method 'testResetWithResponseCommitted' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 56 | [SRC]void testModelAndView() { [MSG]Violation in class UnitTestControllerTestCase. Test method 'testModelAndView' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 89 | [SRC]void testResetWithResponseNotCommitted() { [MSG]Violation in class UnitTestControllerTestCase. Test method 'testResetWithResponseNotCommitted' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 386 | [SRC]String multiMethod(String str) { "static" } [MSG]Violation in class GrailsMockCollaborator. Method parameter [str] is never referenced in the method multiMethod of class grails.test.GrailsMockCollaborator |
UnusedMethodParameter | 2 | 388 | [SRC]String multiMethod(String str, Map map) { "static" } [MSG]Violation in class GrailsMockCollaborator. Method parameter [str] is never referenced in the method multiMethod of class grails.test.GrailsMockCollaborator |
UnusedMethodParameter | 2 | 388 | [SRC]String multiMethod(String str, Map map) { "static" } [MSG]Violation in class GrailsMockCollaborator. Method parameter [map] is never referenced in the method multiMethod of class grails.test.GrailsMockCollaborator |
UnusedMethodParameter | 2 | 390 | [SRC]String someMethod(String str1, Object[] args, String str..{ 'static' } [MSG]Violation in class GrailsMockCollaborator. Method parameter [str1] is never referenced in the method someMethod of class grails.test.GrailsMockCollaborator |
UnusedMethodParameter | 2 | 390 | [SRC]String someMethod(String str1, Object[] args, String str..{ 'static' } [MSG]Violation in class GrailsMockCollaborator. Method parameter [args] is never referenced in the method someMethod of class grails.test.GrailsMockCollaborator |
UnusedMethodParameter | 2 | 390 | [SRC]String someMethod(String str1, Object[] args, String str..{ 'static' } [MSG]Violation in class GrailsMockCollaborator. Method parameter [str2] is never referenced in the method someMethod of class grails.test.GrailsMockCollaborator |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 97 | [SRC]mockControl.demand.update() { -> "Success!"} [MSG]Violation in class grails.test.GrailsMockTests. Parentheses in the 'update' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 151 | [SRC]mockControl.demand.static.findByNothing() { -> "Success!"} [MSG]Violation in class grails.test.GrailsMockTests. Parentheses in the 'findByNothing' method call are unnecessary and can be removed. |
UnnecessaryGetter | 3 | 407 | [SRC]setMetaClass(GroovySystem.getMetaClassRegistry().getMeta..erty.class); [MSG]Violation in class grails.test.GrailsMockWithMetaClassGetProperty. getMetaClassRegistry() can probably be rewritten as metaClassRegistry |
UnnecessaryDotClass | 3 | 407 | [SRC]setMetaClass(GroovySystem.getMetaClassRegistry().getMeta..erty.class); [MSG]GrailsMockWithMetaClassGetProperty.class can be rewritten as GrailsMockWithMetaClassGetProperty |
UnnecessaryDotClass | 3 | 407 | [SRC]setMetaClass(GroovySystem.getMetaClassRegistry().getMeta..erty.class); [MSG]GrailsMockWithMetaClassGetProperty.class can be rewritten as GrailsMockWithMetaClassGetProperty |
UnnecessaryGetter | 3 | 417 | [SRC]GroovySystem.getMetaClassRegistry().setMetaClass(nodeCla..wMetaClass); [MSG]Violation in class grails.test.GrailsMockWithMetaClassGetProperty. getMetaClassRegistry() can probably be rewritten as metaClassRegistry |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 32 | [SRC]protected void setUp() { [MSG]Violation in class GrailsUnitTestCaseTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 37 | [SRC]protected void tearDown() { [MSG]Violation in class GrailsUnitTestCaseTests. The method tearDown() does not call super.tearDown() |
JUnitTestMethodWithoutAssert | 2 | 42 | [SRC]void testMockConfig() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testMockConfig' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 65 | [SRC]void testMockConfigReturnsConfig() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testMockConfigReturnsConfig' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 72 | [SRC]void testMockLogging() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testMockLogging' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 82 | [SRC]void testMockLoggingWithDebugEnabled() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testMockLoggingWithDebugEnabled' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 92 | [SRC]void testMockDomainErrors() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testMockDomainErrors' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 106 | [SRC]void testMockForConstraintsTests() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testMockForConstraintsTests' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 118 | [SRC]void testMockFor() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testMockFor' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 141 | [SRC]void testCascadingValidation() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testCascadingValidation' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 148 | [SRC]void testMockDynamicMethodsWithInstanceList() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testMockDynamicMethodsWithInstanceList' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 162 | [SRC]void testLoadCodec() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testLoadCodec' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 169 | [SRC]void testConverters() { [MSG]Violation in class GrailsUnitTestCaseTests. Test method 'testConverters' makes no assertions |
UnusedMethodParameter | 2 | 412 | [SRC]def foo(s) { 1 } [MSG]Violation in class ClassToMock. Method parameter [s] is never referenced in the method foo of class grails.test.ClassToMock |
UnnecessaryObjectReferences | 3 | 126 | [SRC]testCase.tearDown() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 128 | [SRC]testCase.setUp() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 129 | [SRC]testCase.testMockInterface1() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 130 | [SRC]testCase.tearDown() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 132 | [SRC]testCase.setUp() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 133 | [SRC]testCase.testMockInterface2() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 134 | [SRC]testCase.tearDown() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 177 | [SRC]testCase.tearDown() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 223 | [SRC]mocker.demand.foo() {s -> 1 } [MSG]Violation in class grails.test.TestUnitTestCase. Parentheses in the 'foo' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 231 | [SRC]mocker.demand.foo() {s -> 1 } [MSG]Violation in class grails.test.TestUnitTestCase. Parentheses in the 'foo' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 239 | [SRC]mocker.demand.foo() {s -> 1 } [MSG]Violation in class grails.test.TestUnitTestCase. Parentheses in the 'foo' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 247 | [SRC]mocker.demand.foo() {s -> 1 } [MSG]Violation in class grails.test.TestUnitTestCase. Parentheses in the 'foo' method call are unnecessary and can be removed. |
UnnecessaryObjectReferences | 3 | 365 | [SRC]log.warn "Test warning with exception", new Exception("s..ent wrong!") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 366 | [SRC]log.info "Test info message" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 367 | [SRC]log.info "Test info message with exception", new Excepti..ent wrong!") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 368 | [SRC]log.debug "Test debug" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 369 | [SRC]log.debug "Test debug with exception", new Exception("so..ent wrong!") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 370 | [SRC]log.trace "Test trace" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 371 | [SRC]log.trace "Test trace with exception", new Exception("so..ent wrong!") [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 14 | [SRC]protected void tearDown() { [MSG]Violation in class MockDomainWithInheritanceTests. The method tearDown() does not call super.tearDown() |
JUnitTestMethodWithoutAssert | 2 | 18 | [SRC]void testMockDomainWithInheritance() { [MSG]Violation in class MockDomainWithInheritanceTests. Test method 'testMockDomainWithInheritance' makes no assertions |
JUnitTearDownCallsSuper | 2 | 34 | [SRC]protected void tearDown() { [MSG]Violation in class PersonTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 11 | [SRC]void testUnregisteredMockedStaticMethods() { [MSG]Violation in class MockForTests. Test method 'testUnregisteredMockedStaticMethods' makes no assertions |
UnnecessaryObjectReferences | 3 | 19 | [SRC]testcase.tearDown() [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 17 | [SRC]protected void setUp() { [MSG]Violation in class MockUtilsAndHasManyTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 22 | [SRC]protected void tearDown() { [MSG]Violation in class MockUtilsAndHasManyTests. The method tearDown() does not call super.tearDown() |
JUnitTestMethodWithoutAssert | 2 | 26 | [SRC]void testMockDomainWithHasMany() { [MSG]Violation in class MockUtilsAndHasManyTests. Test method 'testMockDomainWithHasMany' makes no assertions |
JUnitTearDownCallsSuper | 2 | 36 | [SRC]protected void tearDown() { [MSG]Violation in class MagazineTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 30 | [SRC]void setUp() { [MSG]Violation in class MockUtilsDeleteDomainTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 35 | [SRC]void tearDown() { [MSG]Violation in class MockUtilsDeleteDomainTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 34 | [SRC]protected void setUp() { [MSG]Violation in class MockUtilsSaveDomainTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 41 | [SRC]protected void tearDown() { [MSG]Violation in class MockUtilsSaveDomainTests. The method tearDown() does not call super.tearDown() |
UnusedVariable | 2 | 78 | [SRC]def domain1 = new TestDomainWithUUID(name: "Alice Doe", ..: 35).save() [MSG]The variable [domain1] in class grails.test.MockUtilsSaveDomainTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertFalseInsteadOfNegation | 2 | 1135 | [SRC]assertTrue !model [MSG]Violation in class grails.test.MockUtilsTests. assertTrue(!model) can be simplified to assertFalse(model) |
EqualsAndHashCode | 2 | 1589 | [SRC]class TestDomain { [MSG]The class grails.test.TestDomain defines equals(Object) but not hashCode() |
EqualsAndHashCode | 2 | 1685 | [SRC]class TestDomainWithUUID { [MSG]The class grails.test.TestDomainWithUUID defines equals(Object) but not hashCode() |
UnusedMethodParameter | 2 | 1882 | [SRC]def beforeValidate(List properties) { [MSG]Violation in class ClassWithListArgBeforeValidate. Method parameter [properties] is never referenced in the method beforeValidate of class grails.test.ClassWithListArgBeforeValidate |
UnusedMethodParameter | 2 | 1896 | [SRC]def beforeValidate(List properties) { [MSG]Violation in class ClassWithOverloadedBeforeValidate. Method parameter [properties] is never referenced in the method beforeValidate of class grails.test.ClassWithOverloadedBeforeValidate |
UnnecessaryObjectReferences | 3 | 1202 | [SRC]cmd.validate() [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 8 | [SRC]void testTagThatPopulatesPageScope() { [MSG]Violation in class TagLibUnitTestCaseTests. Test method 'testTagThatPopulatesPageScope' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 16 | [SRC]void testTagThatAccessesPageScope() { [MSG]Violation in class TagLibUnitTestCaseTests. Test method 'testTagThatAccessesPageScope' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 22 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 34 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 42 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 50 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 60 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 70 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 81 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 104 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 112 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 121 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 131 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 149 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 159 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 168 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 178 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 188 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 196 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.AstEnhancedControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 16 | [SRC]void testThatBeansAreWired() { [MSG]Violation in class AutowireServiceViaDefineBeansTests. Test method 'testThatBeansAreWired' makes no assertions |
UnusedImport | 3 | 3 | [SRC]import org.junit.Before [MSG]The [org.junit.Before] import is never referenced |
UnusedImport | 3 | 7 | [SRC]import org.junit.BeforeClass [MSG]The [org.junit.BeforeClass] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 12 | [SRC]void testRelationship() { [MSG]Violation in class BidirectionalOneToManyUnitTestTests. Test method 'testRelationship' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 25 | [SRC]def index() { } [MSG]Violation in class SecureUserController. The method index is both empty and not marked with @Override |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 9 | [SRC]void testIndexWithoutUsingMockFor() { [MSG]Violation in class ControllerAndMockForTests. Test method 'testIndexWithoutUsingMockFor' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 29 | [SRC]void testIndexWithoutUsingMockForAgain() { [MSG]Violation in class ControllerAndMockForTests. Test method 'testIndexWithoutUsingMockForAgain' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
BrokenOddnessCheck | 2 | 564 | [SRC]if(val.size() % 2 == 1) { [MSG]The code uses '(val.size() % 2 == 1)' to check for oddness, which does not work for negative numbers. Use (val.size() & 1 == 1) or (val.size() % 2 != 0) instead |
BrokenOddnessCheck | 2 | 564 | [SRC]if(val.size() % 2 == 1) { [MSG]The code uses '(val.size() % 2 == 1)' to check for oddness, which does not work for negative numbers. Use (val.size() & 1 == 1) or (val.size() % 2 != 0) instead |
UnnecessaryGetter | 3 | 26 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 47 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 55 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 63 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 73 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 83 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 94 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 117 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 125 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 134 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 143 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 154 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 172 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 182 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 191 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 201 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 211 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 219 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 229 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryGetter | 3 | 251 | [SRC]def controller = getMockController() [MSG]Violation in class grails.test.mixin.ControllerUnitTestMixinTests. getMockController() can probably be rewritten as mockController |
UnnecessaryOverridingMethod | 3 | 552 | [SRC]def method1() { [MSG]Violation in class SubController. The method method1 contains no logic and can be safely deleted |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 12 | [SRC]void testFirstCall() { [MSG]Violation in class ControllerWithMockCollabTests. Test method 'testFirstCall' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 17 | [SRC]void testSecondCall() { [MSG]Violation in class ControllerWithMockCollabTests. Test method 'testSecondCall' makes no assertions |
UseAssertTrueInsteadOfAssertEquals | 3 | 35 | [SRC]assert called == true [MSG]The expression '(called == true)' can be simplified to 'called' |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 16 | [SRC]void testSaveInSetup() { [MSG]Violation in class DomainClassAnnotatedSetupMethodTests. The method testSaveInSetup is both empty and not marked with @Override |
JUnitTestMethodWithoutAssert | 2 | 16 | [SRC]void testSaveInSetup() { [MSG]Violation in class DomainClassAnnotatedSetupMethodTests. Test method 'testSaveInSetup' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 6 | [SRC]import grails.validation.ValidationErrors [MSG]The [grails.validation.ValidationErrors] import is never referenced |
UseAssertTrueInsteadOfAssertEquals | 3 | 57 | [SRC]assert book.validate() == false [MSG]The expression '(book.validate() == false)' can be simplified to '!book.validate()' |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 12 | [SRC]void setUp() { [MSG]Violation in class DomainClassSetupMethodTests. The method setUp() does not call super.setUp() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 46 | [SRC]void request(HttpServletRequest request) { [MSG]Violation in class SolrServer. Method parameter [request] is never referenced in the method request of class grails.test.mixin.SolrServer |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 35 | [SRC]void testIndexWithoutUsingMockForAgain() { [MSG]Violation in class ServiceAndMockForTests. Test method 'testIndexWithoutUsingMockForAgain' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 73 | [SRC]catch (e) {} [MSG]The catch block is empty |
EmptyMethod | 2 | 151 | [SRC]@Action def action1(){} [MSG]Violation in class GrailsUrlMappingsTestCaseFakeController. The method action1 is both empty and not marked with @Override |
EmptyMethod | 2 | 152 | [SRC]@Action def action2(){} [MSG]Violation in class GrailsUrlMappingsTestCaseFakeController. The method action2 is both empty and not marked with @Override |
EmptyMethod | 2 | 153 | [SRC]@Action def action3(){} [MSG]Violation in class GrailsUrlMappingsTestCaseFakeController. The method action3 is both empty and not marked with @Override |
EmptyMethod | 2 | 157 | [SRC]@Action def publicProfile() {} [MSG]Violation in class UserController. The method publicProfile is both empty and not marked with @Override |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 9 | [SRC]protected void tearDown() { [MSG]Violation in class BuildScopeTests. The method tearDown() does not call super.tearDown() |
UnnecessaryGetter | 3 | 14 | [SRC]assertEquals BuildScope.ALL, BuildScope.getCurrent() [MSG]Violation in class grails.util.BuildScopeTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 18 | [SRC]assertEquals BuildScope.WAR, BuildScope.getCurrent() [MSG]Violation in class grails.util.BuildScopeTests. getCurrent() can probably be rewritten as current |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 15 | [SRC]protected void setUp() { [MSG]Violation in class BuildSettingsTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 29 | [SRC]protected void tearDown() { [MSG]Violation in class BuildSettingsTests. The method tearDown() does not call super.tearDown() |
EmptyMethod | 2 | 332 | [SRC]void receiveGrailsBuildEvent(String name, Object[] args) {} [MSG]Violation in class BuildSettingsTestsGrailsBuildListener. The method receiveGrailsBuildEvent is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 332 | [SRC]void receiveGrailsBuildEvent(String name, Object[] args) {} [MSG]Violation in class BuildSettingsTestsGrailsBuildListener. Method parameter [name] is never referenced in the method receiveGrailsBuildEvent of class grails.util.BuildSettingsTestsGrailsBuildListener |
UnusedMethodParameter | 2 | 332 | [SRC]void receiveGrailsBuildEvent(String name, Object[] args) {} [MSG]Violation in class BuildSettingsTestsGrailsBuildListener. Method parameter [args] is never referenced in the method receiveGrailsBuildEvent of class grails.util.BuildSettingsTestsGrailsBuildListener |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 9 | [SRC]protected void tearDown() { [MSG]Violation in class EnvironmentTests. The method tearDown() does not call super.tearDown() |
UnnecessaryGetter | 3 | 14 | [SRC]Metadata.getCurrent().clear() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 20 | [SRC]assertEquals Environment.PRODUCTION, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 51 | [SRC]assertEquals Environment.DEVELOPMENT, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 68 | [SRC]assertEquals Environment.CUSTOM, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 88 | [SRC]assertEquals Environment.PRODUCTION, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 107 | [SRC]assertEquals Environment.DEVELOPMENT, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 126 | [SRC]assertEquals Environment.CUSTOM, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 148 | [SRC]assertEquals Environment.PRODUCTION, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 151 | [SRC]assertEquals Environment.DEVELOPMENT, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 154 | [SRC]assertEquals Environment.CUSTOM, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 169 | [SRC]assertEquals Environment.PRODUCTION, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 172 | [SRC]assertEquals Environment.DEVELOPMENT, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 175 | [SRC]assertEquals Environment.PRODUCTION, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 178 | [SRC]assertEquals Environment.DEVELOPMENT, Environment.getCurrent() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 186 | [SRC]assertFalse "reload should be disabled by default in pro..oadEnabled() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 189 | [SRC]assertFalse "reload should be disabled by default in dev..oadEnabled() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 192 | [SRC]assertTrue "reload should be enabled by default in devel..oadEnabled() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 196 | [SRC]assertFalse "reload should be disabled by default in pro..oadEnabled() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 199 | [SRC]assertFalse "reload should be disabled by default in pro..oadEnabled() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
UnnecessaryObjectReferences | 3 | 201 | [SRC]System.setProperty(Environment.RELOAD_LOCATION, ".") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 202 | [SRC]assertTrue "reload should be enabled by default in produ..oadEnabled() [MSG]Violation in class grails.util.EnvironmentTests. getCurrent() can probably be rewritten as current |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 15 | [SRC]assertEquals "1.1", m.getInstalledPlugins().tomcat [MSG]Violation in class grails.util.MetadataTests. getInstalledPlugins() can probably be rewritten as installedPlugins |
UnnecessaryGetter | 3 | 16 | [SRC]assertEquals "1.2", m.getInstalledPlugins().hibernate [MSG]Violation in class grails.util.MetadataTests. getInstalledPlugins() can probably be rewritten as installedPlugins |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 28 | [SRC]PluginBuildSettings createPluginBuildSettings(File proje.._PROJ_DIR) { [MSG]Violation in class PluginBuildSettingsTests. The method createPluginBuildSettings is public but not a test method |
UseAssertFalseInsteadOfNegation | 2 | 277 | [SRC]assertTrue("should not be a plugin-two dir in same dir a..pp.exists()) [MSG]Violation in class grails.util.PluginBuildSettingsTests. assertTrue(!pluginTwoInSameDirAsRootApp.exists()) can be simplified to assertFalse(pluginTwoInSameDirAsRootApp.exists()) |
UnnecessaryGetter | 3 | 71 | [SRC]def sourceFiles = pluginSettings.getPluginSourceFiles() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginSourceFiles() can probably be rewritten as pluginSourceFiles |
UnnecessaryGetter | 3 | 102 | [SRC]assertEquals 2, pluginSettings.getPluginLibDirectories().size() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginLibDirectories() can probably be rewritten as pluginLibDirectories |
UnnecessaryGetter | 3 | 103 | [SRC]assertEquals 2, pluginSettings.getPluginLibDirectories().size() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginLibDirectories() can probably be rewritten as pluginLibDirectories |
UnnecessaryGetter | 3 | 108 | [SRC]assertEquals 2, pluginSettings.getPluginDescriptors().size() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginDescriptors() can probably be rewritten as pluginDescriptors |
UnnecessaryGetter | 3 | 109 | [SRC]assertEquals 2, pluginSettings.getPluginDescriptors().size() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginDescriptors() can probably be rewritten as pluginDescriptors |
UnnecessaryGetter | 3 | 116 | [SRC]assertEquals 6, pluginSettings.getArtefactResources().size() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getArtefactResources() can probably be rewritten as artefactResources |
UnnecessaryGetter | 3 | 117 | [SRC]assertEquals 6, pluginSettings.getArtefactResources().size() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getArtefactResources() can probably be rewritten as artefactResources |
UnnecessaryGetter | 3 | 131 | [SRC]def scripts = pluginSettings.getAvailableScripts() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getAvailableScripts() can probably be rewritten as availableScripts |
UnnecessaryGetter | 3 | 143 | [SRC]def scripts = pluginSettings.getPluginScripts() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginScripts() can probably be rewritten as pluginScripts |
UnnecessaryGetter | 3 | 151 | [SRC]assertEquals 2, pluginSettings.getPluginXmlMetadata().size() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginXmlMetadata() can probably be rewritten as pluginXmlMetadata |
UnnecessaryGetter | 3 | 152 | [SRC]assertEquals 2, pluginSettings.getPluginXmlMetadata().size() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginXmlMetadata() can probably be rewritten as pluginXmlMetadata |
UnnecessaryGetter | 3 | 158 | [SRC]def pluginInfos = pluginSettings.getPluginInfos() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginInfos() can probably be rewritten as pluginInfos |
UnnecessaryGetter | 3 | 177 | [SRC]def pluginDirs = createPluginBuildSettings().getImplicit..irectories() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getImplicitPluginDirectories() can probably be rewritten as implicitPluginDirectories |
UnnecessaryGetter | 3 | 199 | [SRC]def pluginDirs = pluginSettings.getPluginDirectories() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginDirectories() can probably be rewritten as pluginDirectories |
UnnecessaryGetter | 3 | 282 | [SRC]def pluginInfos = pluginSettings.getPluginInfos() [MSG]Violation in class grails.util.PluginBuildSettingsTests. getPluginInfos() can probably be rewritten as pluginInfos |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 42 | [SRC]protected void setUp() { [MSG]Violation in class AbstractCliTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 51 | [SRC]protected void tearDown() { [MSG]Violation in class AbstractCliTests. The method tearDown() does not call super.tearDown() |
UnnecessaryObjectReferences | 3 | 100 | [SRC]settings.resourcesDir = new File("$projectDir/resources") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 101 | [SRC]settings.testClassesDir = new File("$projectDir/test-classes") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 102 | [SRC]settings.projectPluginsDir = new File("$projectDir/plugins") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 103 | [SRC]settings.globalPluginsDir = new File("$workDir/global-plugins") [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 13 | [SRC]void testSetDepedenciesExternallyConfigured() { [MSG]Violation in class GrailsBuildHelperTests. Test method 'testSetDepedenciesExternallyConfigured' makes no assertions |
UnnecessaryObjectReferences | 3 | 42 | [SRC]testHelper.projectPluginsDir = new File("plugins") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 43 | [SRC]testHelper.globalPluginsDir = new File("global-work/plugins") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 44 | [SRC]testHelper.testReportsDir = new File("target/test-reports") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 45 | [SRC]testHelper.compileDependencies = testCompileDeps [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 46 | [SRC]testHelper.testDependencies = testTestDeps [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 47 | [SRC]testHelper.runtimeDependencies = testRuntimeDeps [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import javax.naming.Context [MSG]The [javax.naming.Context] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import javax.naming.spi.ObjectFactory [MSG]The [javax.naming.spi.ObjectFactory] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 9 | [SRC]protected void setUp() { [MSG]Violation in class DefaultGrailsCodecClassTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 13 | [SRC]protected void tearDown() { [MSG]Violation in class DefaultGrailsCodecClassTests. The method tearDown() does not call super.tearDown() |
UnusedMethodParameter | 2 | 36 | [SRC]def encode(obj) { "encoded" } [MSG]Violation in class CodecWithMethodsCodec. Method parameter [obj] is never referenced in the method encode of class org.codehaus.groovy.grails.commons.CodecWithMethodsCodec |
UnusedMethodParameter | 2 | 37 | [SRC]def decode(obj) { "decoded" } [MSG]Violation in class CodecWithMethodsCodec. Method parameter [obj] is never referenced in the method decode of class org.codehaus.groovy.grails.commons.CodecWithMethodsCodec |
UnnecessaryGetter | 3 | 19 | [SRC]assertEquals "encoded", codecClass.getEncodeMethod().call("stuff") [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsCodecClassTests. getEncodeMethod() can probably be rewritten as encodeMethod |
UnnecessaryGetter | 3 | 20 | [SRC]assertEquals "decoded", codecClass.getDecodeMethod().call("stuff") [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsCodecClassTests. getDecodeMethod() can probably be rewritten as decodeMethod |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 13 | [SRC]void setUp() { [MSG]Violation in class DefaultGrailsDomainClassPropertyTests. The method setUp() does not call super.setUp() |
ComparisonWithSelf | 2 | 24 | [SRC]assertTrue(prop1Child.equals(prop1Child)) [MSG]Comparing an object to itself is useless and may indicate a bug: prop1Child.equals(prop1Child) |
UnnecessaryGroovyImport | 3 | 3 | [SRC]import groovy.util.GroovyTestCase |
UnnecessaryDotClass | 3 | 15 | [SRC]parentClass = new DefaultGrailsDomainClass(ParentClass.class) [MSG]ParentClass.class can be rewritten as ParentClass |
UnnecessaryDotClass | 3 | 16 | [SRC]childClass = new DefaultGrailsDomainClass(ChildClass.class) [MSG]ChildClass.class can be rewritten as ChildClass |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 272 | [SRC]Class topClass = gcl.parseClass("class Top {\n" + [MSG]The variable [topClass] in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests is not used |
UnusedVariable | 2 | 279 | [SRC]Class middleClass = gcl.parseClass("class Middle extends Top {\n" + [MSG]The variable [middleClass] in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests is not used |
UnusedVariable | 2 | 284 | [SRC]Class bottomClass = gcl.parseClass("class Bottom extends Middle {\n" + [MSG]The variable [bottomClass] in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests is not used |
EmptyCatchBlock | 2 | 372 | [SRC]catch(InvalidPropertyException ipe) { [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 38 | [SRC]assertEquals(GrailsDomainClassProperty.FETCH_EAGER, test..FetchMode()) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getFetchMode() can probably be rewritten as fetchMode |
UnnecessaryGetter | 3 | 41 | [SRC]assertEquals(GrailsDomainClassProperty.FETCH_LAZY, other..FetchMode()) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getFetchMode() can probably be rewritten as fetchMode |
UnnecessaryGetter | 3 | 200 | [SRC]domainMap.put(dc.getFullName(),dc) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getFullName() can probably be rewritten as fullName |
UnnecessaryGetter | 3 | 207 | [SRC]assertTrue(dc.getPropertyByName("children").getOtherSide..("parent"))) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getOtherSide() can probably be rewritten as otherSide |
UnnecessaryGetter | 3 | 208 | [SRC]assertTrue(dc.getPropertyByName("parent").getOtherSide()..children"))) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getOtherSide() can probably be rewritten as otherSide |
UnnecessaryGetter | 3 | 256 | [SRC]assertEquals(c1dc.getPropertyByName("ones").getOtherSide..me("other")) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getOtherSide() can probably be rewritten as otherSide |
UnnecessaryGetter | 3 | 263 | [SRC]assertEquals(c2dc.getPropertyByName("other").getOtherSid..ame("ones")) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getOtherSide() can probably be rewritten as otherSide |
UnnecessaryGetter | 3 | 362 | [SRC]assertEquals("UserTest",domainClass.getName()) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 364 | [SRC]assertNotNull(domainClass.getIdentifier()) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getIdentifier() can probably be rewritten as identifier |
UnnecessaryGetter | 3 | 365 | [SRC]assertNotNull(domainClass.getVersion()) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getVersion() can probably be rewritten as version |
UnnecessaryGetter | 3 | 366 | [SRC]assertTrue(domainClass.getIdentifier().isIdentity()) [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getIdentifier() can probably be rewritten as identifier |
UnnecessaryGetter | 3 | 390 | [SRC]GrailsDomainClassProperty[] persistantProperties = domai..Properties() [MSG]Violation in class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassTests. getPersistentProperties() can probably be rewritten as persistentProperties |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 15 | [SRC]assertNotNull(GrailsMetaClassUtils.getRegistry()) [MSG]Violation in class org.codehaus.groovy.grails.commons.GrailsMetaClassUtilsTests. getRegistry() can probably be rewritten as registry |
UnnecessaryGetter | 3 | 39 | [SRC]assertEquals "bar", d.getFoo() [MSG]Violation in class org.codehaus.groovy.grails.commons.GrailsMetaClassUtilsTests. getFoo() can probably be rewritten as foo |
UnnecessaryGetter | 3 | 48 | [SRC]assertEquals "bar", d.getFoo() [MSG]Violation in class org.codehaus.groovy.grails.commons.GrailsMetaClassUtilsTests. getFoo() can probably be rewritten as foo |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 8 | [SRC]void testDoWithWebDescriptor() { [MSG]Violation in class GrailsPluginManagerDescriptorTests. Test method 'testDoWithWebDescriptor' makes no assertions |
UnusedVariable | 2 | 20 | [SRC]def xml = new XmlSlurper().parseText(text) [MSG]The variable [xml] in class org.codehaus.groovy.grails.commons.GrailsPluginManagerDescriptorTests is not used |
JUnitTestMethodWithoutAssert | 2 | 23 | [SRC]void testDevelopmentDescriptor() { [MSG]Violation in class GrailsPluginManagerDescriptorTests. Test method 'testDevelopmentDescriptor' makes no assertions |
UnusedVariable | 2 | 36 | [SRC]def xml = new XmlSlurper().parseText(text) [MSG]The variable [xml] in class org.codehaus.groovy.grails.commons.GrailsPluginManagerDescriptorTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 122 | [SRC]void testWithLoadLastPlugin() { [MSG]Violation in class GrailsPluginManagerTests. Test method 'testWithLoadLastPlugin' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 134 | [SRC]void testDependencyResolutionSucces() { [MSG]Violation in class GrailsPluginManagerTests. Test method 'testDependencyResolutionSucces' makes no assertions |
UnusedImport | 3 | 5 | [SRC]import org.codehaus.groovy.grails.plugins.exceptions.PluginException [MSG]The [org.codehaus.groovy.grails.plugins.exceptions.PluginException] import is never referenced |
UnnecessaryGetter | 3 | 103 | [SRC]assertEquals(1, manager.getPluginResources().length) [MSG]Violation in class org.codehaus.groovy.grails.commons.GrailsPluginManagerTests. getPluginResources() can probably be rewritten as pluginResources |
UnnecessaryGetter | 3 | 112 | [SRC]assertEquals("classEditor",plugin.getName()) [MSG]Violation in class org.codehaus.groovy.grails.commons.GrailsPluginManagerTests. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 113 | [SRC]assertEquals("1.1", plugin.getVersion()) [MSG]Violation in class org.codehaus.groovy.grails.commons.GrailsPluginManagerTests. getVersion() can probably be rewritten as version |
UnnecessaryGetter | 3 | 153 | [SRC]def ctx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.commons.GrailsPluginManagerTests. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 171 | [SRC]def ctx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.commons.GrailsPluginManagerTests. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 18 | [SRC]import org.springframework.beans.BeanUtils [MSG]The [org.springframework.beans.BeanUtils] import is never referenced |
UnnecessaryDotClass | 3 | 26 | [SRC]def metaClass = new DynamicMethodsExpandoMetaClass(Book.class) [MSG]Book.class can be rewritten as Book |
UnnecessaryDotClass | 3 | 44 | [SRC]def metaClass = new DynamicMethodsExpandoMetaClass(Book.class, true) [MSG]Book.class can be rewritten as Book |
UnnecessaryDotClass | 3 | 57 | [SRC]def metaClass = new DynamicMethodsExpandoMetaClass(Book.class, true) [MSG]Book.class can be rewritten as Book |
UnnecessaryGetter | 3 | 76 | [SRC]assertEquals "bar", b.getFoo() [MSG]Violation in class org.codehaus.groovy.grails.commons.metaclass.DynamicMethodsExpandoMetaClassTests. getFoo() can probably be rewritten as foo |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CoupledTestCase | 2 | 11 | [SRC]def obj = new PropertyMapTest(name:"Homer", age:45) [MSG]new PropertyMapTest([name:Homer, age:45]) creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
CoupledTestCase | 2 | 19 | [SRC]def map = new LazyMetaPropertyMap(new PropertyMapTest(na..er:"stuff")) [MSG]new PropertyMapTest([name:Bart, age:11, other:stuff]) creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
CoupledTestCase | 2 | 28 | [SRC]def map = new LazyMetaPropertyMap(new PropertyMapTest()) [MSG]new PropertyMapTest() creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
CoupledTestCase | 2 | 33 | [SRC]def map = new LazyMetaPropertyMap(new PropertyMapTest()) [MSG]new PropertyMapTest() creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
CoupledTestCase | 2 | 38 | [SRC]def map = new LazyMetaPropertyMap(new PropertyMapTest()) [MSG]new PropertyMapTest() creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
CoupledTestCase | 2 | 46 | [SRC]def map = new LazyMetaPropertyMap(new PropertyMapTest(na..r", age:45)) [MSG]new PropertyMapTest([name:Homer, age:45]) creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
CoupledTestCase | 2 | 54 | [SRC]def map = new LazyMetaPropertyMap(new PropertyMapTest(na..r", age:45)) [MSG]new PropertyMapTest([name:Homer, age:45]) creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
CoupledTestCase | 2 | 70 | [SRC]def map = new LazyMetaPropertyMap(new PropertyMapTest(na..t", age:11)) [MSG]new PropertyMapTest([name:Bart, age:11]) creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
CoupledTestCase | 2 | 85 | [SRC]def map = new LazyMetaPropertyMap(new PropertyMapTest(na..t", age:11)) [MSG]new PropertyMapTest([name:Bart, age:11]) creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
CoupledTestCase | 2 | 94 | [SRC]def map = new LazyMetaPropertyMap(new PropertyMapTest(na..t", age:11)) [MSG]new PropertyMapTest([name:Bart, age:11]) creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 41 | [SRC]protected void tearDown() throws Exception { [MSG]Violation in class MetaClassEnhancerTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.control.CompilerConfiguration [MSG]The [org.codehaus.groovy.control.CompilerConfiguration] import is never referenced |
UnusedImport | 3 | 4 | [SRC]import org.codehaus.groovy.grails.compiler.support.Grail..sourceLoader [MSG]The [org.codehaus.groovy.grails.compiler.support.GrailsResourceLoader] import is never referenced |
UnnecessaryGetter | 3 | 32 | [SRC]assert e == gcl.getCompilationError() : "should have sto..ation error" [MSG]Violation in class org.codehaus.groovy.grails.compiler.GrailsClassLoaderTests. getCompilationError() can probably be rewritten as compilationError |
UnnecessaryGetter | 3 | 38 | [SRC]assert !gcl.getCompilationError() : "shouldn't have any ..tion errors" [MSG]Violation in class org.codehaus.groovy.grails.compiler.GrailsClassLoaderTests. getCompilationError() can probably be rewritten as compilationError |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertTrueInsteadOfAssertEquals | 3 | 64 | [SRC]assert true == firstNameBindableExpression.value [MSG]The expression '(true == firstNameBindableExpression.value)' can be simplified to 'firstNameBindableExpression.value' |
UseAssertTrueInsteadOfAssertEquals | 3 | 72 | [SRC]assert false == lastNameBindableExpression.value [MSG]The expression '(false == lastNameBindableExpression.value)' can be simplified to '!lastNameBindableExpression.value' |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 16 | [SRC]protected void setUp() { [MSG]Violation in class PluginAwareResourceBundleMessageSourceTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 20 | [SRC]protected void tearDown() { [MSG]Violation in class PluginAwareResourceBundleMessageSourceTests. The method tearDown() does not call super.tearDown() |
UnusedMethodParameter | 2 | 61 | [SRC]protected Resource[] getPluginBundles(String pluginName) { [MSG]Violation in class TestPluginAwareResourceBundleMessageSource. Method parameter [pluginName] is never referenced in the method getPluginBundles of class org.codehaus.groovy.grails.context.support.TestPluginAwareResourceBundleMessageSource |
UnnecessaryGetter | 3 | 17 | [SRC]Metadata.getCurrent().put(Metadata.WAR_DEPLOYED, "true") [MSG]Violation in class org.codehaus.groovy.grails.context.support.PluginAwareResourceBundleMessageSourceTests. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 21 | [SRC]Metadata.getCurrent().put(Metadata.WAR_DEPLOYED, "") [MSG]Violation in class org.codehaus.groovy.grails.context.support.PluginAwareResourceBundleMessageSourceTests. getCurrent() can probably be rewritten as current |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import groovy.xml.StreamingMarkupBuilder [MSG]The [groovy.xml.StreamingMarkupBuilder] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import org.codehaus.groovy.grails.commons.ControllerArtefactHandler [MSG]The [org.codehaus.groovy.grails.commons.ControllerArtefactHandler] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 12 | [SRC]void testComponentScan() { [MSG]Violation in class CoreGrailsPluginTests. Test method 'testComponentScan' makes no assertions |
UnusedVariable | 2 | 25 | [SRC]def appCtx = springConfig.getApplicationContext() [MSG]The variable [appCtx] in class org.codehaus.groovy.grails.plugins.CoreGrailsPluginTests is not used |
UnnecessaryGetter | 3 | 25 | [SRC]def appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.plugins.CoreGrailsPluginTests. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 38 | [SRC]def appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.plugins.CoreGrailsPluginTests. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 55 | [SRC]def appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.plugins.CoreGrailsPluginTests. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 119 | [SRC]def appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.plugins.CoreGrailsPluginTests. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 12 | [SRC]void onSetUp() { [MSG]Violation in class DomainClassGrailsPluginTests. The method onSetUp is public but not a test method |
UnusedMethodParameter | 2 | 202 | [SRC]boolean shouldInject(URL url) { true } [MSG]Violation in class AlwaysInjector. Method parameter [url] is never referenced in the method shouldInject of class org.codehaus.groovy.grails.plugins.AlwaysInjector |
UnusedMethodParameter | 2 | 204 | [SRC]protected boolean isDomainClass(ClassNode classNode, Sou..e) { true } [MSG]Violation in class AlwaysInjector. Method parameter [classNode] is never referenced in the method isDomainClass of class org.codehaus.groovy.grails.plugins.AlwaysInjector |
UnusedMethodParameter | 2 | 204 | [SRC]protected boolean isDomainClass(ClassNode classNode, Sou..e) { true } [MSG]Violation in class AlwaysInjector. Method parameter [sourceNode] is never referenced in the method isDomainClass of class org.codehaus.groovy.grails.plugins.AlwaysInjector |
UnusedMethodParameter | 2 | 206 | [SRC]protected boolean shouldInjectClass(ClassNode classNode) { true } [MSG]Violation in class AlwaysInjector. Method parameter [classNode] is never referenced in the method shouldInjectClass of class org.codehaus.groovy.grails.plugins.AlwaysInjector |
UnnecessaryObjectReferences | 3 | 43 | [SRC]gcl.parseClass("""class Child3 extends grails.test.Parent2 { [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 4 | [SRC]import grails.util.BuildSettings [MSG]The [grails.util.BuildSettings] import is never referenced |
UnnecessaryGetter | 3 | 181 | [SRC]System.setProperty(Environment.KEY, Environment.PRODUCTION.getName()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginTests. getName() can probably be rewritten as name |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 17 | [SRC]protected void setUp() { [MSG]Violation in class GrailsPluginUtilsTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 37 | [SRC]void tearDown() { [MSG]Violation in class GrailsPluginUtilsTests. The method tearDown() does not call super.tearDown() |
UnusedImport | 3 | 6 | [SRC]import org.apache.commons.io.FileUtils [MSG]The [org.apache.commons.io.FileUtils] import is never referenced |
UnnecessaryGetter | 3 | 146 | [SRC]def pluginDirs = GrailsPluginUtils.getPluginDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtilsTests. getPluginDirectories() can probably be rewritten as pluginDirectories |
UnnecessaryGetter | 3 | 155 | [SRC]def pluginDirs = GrailsPluginUtils.getImplicitPluginDirectories() [MSG]Violation in class org.codehaus.groovy.grails.plugins.GrailsPluginUtilsTests. getImplicitPluginDirectories() can probably be rewritten as implicitPluginDirectories |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 50 | [SRC]Resource createRelative(String relativePath) { new ByteA..xml.bytes) } [MSG]Violation in class PluginDescriptorReaderTests$1. Method parameter [relativePath] is never referenced in the method createRelative of class org.codehaus.groovy.grails.plugins.PluginDescriptorReaderTests$1 |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 38 | [SRC]GPathResult parseMetadata(Resource pluginDir) { null } [MSG]Violation in class MockPluginInfo. Method parameter [pluginDir] is never referenced in the method parseMetadata of class org.codehaus.groovy.grails.plugins.MockPluginInfo |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryObjectReferences | 3 | 20 | [SRC]ctx.registerMockResource("WEB-INF/grails-app/i18n/sub/di..properties") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 21 | [SRC]ctx.registerMockResource("WEB-INF/grails-app/i18n/nobundle") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 22 | [SRC]ctx.registerMockResource("WEB-INF/grails-app/i18n/nobundle.txt") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 23 | [SRC]ctx.registerMockResource("WEB-INF/grails-app/i18n/nobundle.xml") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 34 | [SRC]def appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.plugins.i18n.I18nGrailsPluginTests. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 201 | [SRC]def consoleAppender [MSG]The variable [consoleAppender] in class org.codehaus.groovy.grails.plugins.logging.Log4jDslTests is not used |
UnnecessaryGetter | 3 | 120 | [SRC]def r = Logger.getRootLogger() [MSG]Violation in class org.codehaus.groovy.grails.plugins.logging.Log4jDslTests. getRootLogger() can probably be rewritten as rootLogger |
UnnecessaryGetter | 3 | 139 | [SRC]r = Logger.getRootLogger() [MSG]Violation in class org.codehaus.groovy.grails.plugins.logging.Log4jDslTests. getRootLogger() can probably be rewritten as rootLogger |
UnnecessaryGetter | 3 | 158 | [SRC]r = Logger.getRootLogger() [MSG]Violation in class org.codehaus.groovy.grails.plugins.logging.Log4jDslTests. getRootLogger() can probably be rewritten as rootLogger |
UnnecessaryGetter | 3 | 178 | [SRC]def root = Logger.getRootLogger() [MSG]Violation in class org.codehaus.groovy.grails.plugins.logging.Log4jDslTests. getRootLogger() can probably be rewritten as rootLogger |
UnnecessaryGetter | 3 | 181 | [SRC]def appenders = root.getAllAppenders() [MSG]Violation in class org.codehaus.groovy.grails.plugins.logging.Log4jDslTests. getAllAppenders() can probably be rewritten as allAppenders |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 249 | [SRC]protected GPathResult getPluginMetadata(String pluginName) { [MSG]Violation in class TestPluginPublisher. Method parameter [pluginName] is never referenced in the method getPluginMetadata of class org.codehaus.groovy.grails.plugins.publishing.TestPluginPublisher |
UnusedMethodParameter | 2 | 253 | [SRC]GPathResult parsePluginList(Resource pluginsListFile) { [MSG]Violation in class TestPluginPublisher. Method parameter [pluginsListFile] is never referenced in the method parsePluginList of class org.codehaus.groovy.grails.plugins.publishing.TestPluginPublisher |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 180 | [SRC]Class parseTestBean() { [MSG]Violation in class ControllersGrailsPluginTests. The method parseTestBean is public but not a test method |
UseAssertEqualsInsteadOfAssertTrue | 3 | 115 | [SRC]assertTrue ga.config.grails.disableCommonsMultipart.size() == 0 [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPluginTests. Replace assertTrue with a call to assertEquals() |
UnnecessaryGetter | 3 | 131 | [SRC]assertNotNull beanDef.getPropertyValues().getPropertyVal..seResource') [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPluginTests. getPropertyValues() can probably be rewritten as propertyValues |
UnnecessaryGetter | 3 | 133 | [SRC]assertEquals "file:.", beanDef.getPropertyValues().getPr..).getValue() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPluginTests. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 133 | [SRC]assertEquals "file:.", beanDef.getPropertyValues().getPr..).getValue() [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPluginTests. getPropertyValues() can probably be rewritten as propertyValues |
UnnecessaryGetter | 3 | 136 | [SRC]assertEquals "groovyPageLocator", beanDef.getPropertyVal..()?.beanName [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPluginTests. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 136 | [SRC]assertEquals "groovyPageLocator", beanDef.getPropertyVal..()?.beanName [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ControllersGrailsPluginTests. getPropertyValues() can probably be rewritten as propertyValues |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 41 | [SRC]def registry = GroovySystem.metaClassRegistry [MSG]The variable [registry] in class org.codehaus.groovy.grails.plugins.web.LoggingGrailsPluginTests is not used |
UnusedVariable | 2 | 47 | [SRC]def registry = GroovySystem.metaClassRegistry [MSG]The variable [registry] in class org.codehaus.groovy.grails.plugins.web.LoggingGrailsPluginTests is not used |
UnusedVariable | 2 | 53 | [SRC]def registry = GroovySystem.metaClassRegistry [MSG]The variable [registry] in class org.codehaus.groovy.grails.plugins.web.LoggingGrailsPluginTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 60 | [SRC]def httpSessionMetaClass = GroovySystem.getMetaClassRegi..HttpSession) [MSG]The variable [httpSessionMetaClass] in class org.codehaus.groovy.grails.plugins.web.ServletsGrailsPluginTests is not used |
UnusedVariable | 2 | 61 | [SRC]def metaClass = GroovySystem.getMetaClassRegistry().getM...getClass()) [MSG]The variable [metaClass] in class org.codehaus.groovy.grails.plugins.web.ServletsGrailsPluginTests is not used |
UnnecessaryGroovyImport | 3 | 3 | [SRC]import groovy.lang.GroovySystem; |
UnnecessaryGetter | 3 | 60 | [SRC]def httpSessionMetaClass = GroovySystem.getMetaClassRegi..HttpSession) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ServletsGrailsPluginTests. getMetaClassRegistry() can probably be rewritten as metaClassRegistry |
UnnecessaryGetter | 3 | 61 | [SRC]def metaClass = GroovySystem.getMetaClassRegistry().getM...getClass()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.web.ServletsGrailsPluginTests. getMetaClassRegistry() can probably be rewritten as metaClassRegistry |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 87 | [SRC]protected void tearDown() { [MSG]Violation in class UrlMappingsGrailsPluginTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 18 | [SRC]Class oldClass = ga.getTagLibClass("TestTagLib").getClazz() [MSG]The variable [oldClass] in class org.codehaus.groovy.grails.reload.TagLibReloadTests is not used |
UnusedVariable | 2 | 19 | [SRC]def result [MSG]The variable [result] in class org.codehaus.groovy.grails.reload.TagLibReloadTests is not used |
JUnitPublicNonTestMethod | 2 | 45 | [SRC]void onInit() { [MSG]Violation in class TagLibReloadTests. The method onInit is public but not a test method |
UnnecessaryGetter | 3 | 18 | [SRC]Class oldClass = ga.getTagLibClass("TestTagLib").getClazz() [MSG]Violation in class org.codehaus.groovy.grails.reload.TagLibReloadTests. getClazz() can probably be rewritten as clazz |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 23 | [SRC]protected void setUp() { [MSG]Violation in class IvyDependencyManagerTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 27 | [SRC]protected void tearDown() { [MSG]Violation in class IvyDependencyManagerTests. The method tearDown() does not call super.tearDown() |
JUnitTestMethodWithoutAssert | 2 | 119 | [SRC]void testPluginResolve() { [MSG]Violation in class IvyDependencyManagerTests. Test method 'testPluginResolve' makes no assertions |
UnusedVariable | 2 | 132 | [SRC]def report = manager.resolveDependencies() [MSG]The variable [report] in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests is not used |
JUnitTestMethodWithoutAssert | 2 | 449 | [SRC]void testResolveApplicationDependencies() { [MSG]Violation in class IvyDependencyManagerTests. Test method 'testResolveApplicationDependencies' makes no assertions |
UnusedVariable | 2 | 638 | [SRC]def grailsVersion = getCurrentGrailsVersion() [MSG]The variable [grailsVersion] in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests is not used |
JUnitPublicNonTestMethod | 2 | 671 | [SRC]def getCurrentGrailsVersion() { [MSG]Violation in class IvyDependencyManagerTests. The method getCurrentGrailsVersion is public but not a test method |
JUnitTestMethodWithoutAssert | 2 | 799 | [SRC]void testResolve() { [MSG]Violation in class IvyDependencyManagerTests. Test method 'testResolve' makes no assertions |
UnusedVariable | 2 | 831 | [SRC]ModuleRevisionId junit = manager.dependencies.find { Mo.. == 'junit'} [MSG]The variable [junit] in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests is not used |
UseAssertTrueInsteadOfAssertEquals | 3 | 38 | [SRC]assert manager.ivySettings.defaultUseOrigin == true [MSG]The expression '(manager.ivySettings.defaultUseOrigin == true)' can be simplified to 'manager.ivySettings.defaultUseOrigin' |
UnnecessaryGetter | 3 | 219 | [SRC]assertEquals "1.5", dd.getDependencyRevisionId().revision [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getDependencyRevisionId() can probably be rewritten as dependencyRevisionId |
UnnecessaryGetter | 3 | 226 | [SRC]assertEquals "0.5.5", dd.getDependencyRevisionId().revision [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getDependencyRevisionId() can probably be rewritten as dependencyRevisionId |
UnnecessaryGetter | 3 | 233 | [SRC]assertEquals "0.5.6", dd.getDependencyRevisionId().revision [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getDependencyRevisionId() can probably be rewritten as dependencyRevisionId |
UnnecessaryGetter | 3 | 298 | [SRC]assertEquals 1, dep.getModuleConfigurations().length [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getModuleConfigurations() can probably be rewritten as moduleConfigurations |
UnnecessaryGetter | 3 | 486 | [SRC]assertEquals 2, manager.getApplicationDependencyDescriptors().size() [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getApplicationDependencyDescriptors() can probably be rewritten as applicationDependencyDescriptors |
UnnecessaryGetter | 3 | 617 | [SRC]def grailsVersion = getCurrentGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getCurrentGrailsVersion() can probably be rewritten as currentGrailsVersion |
UnnecessaryGetter | 3 | 638 | [SRC]def grailsVersion = getCurrentGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getCurrentGrailsVersion() can probably be rewritten as currentGrailsVersion |
UnnecessaryGetter | 3 | 741 | [SRC]DefaultDependencyDescriptor dd = manager.getDependencyDe..tor().next() [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getDependencyDescriptors() can probably be rewritten as dependencyDescriptors |
UnnecessaryGetter | 3 | 757 | [SRC]dd = manager.getDependencyDescriptors().iterator().next() [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getDependencyDescriptors() can probably be rewritten as dependencyDescriptors |
UnnecessaryGetter | 3 | 772 | [SRC]DefaultDependencyDescriptor dd = manager.getPluginDepend..tor().next() [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getPluginDependencyDescriptors() can probably be rewritten as pluginDependencyDescriptors |
UnnecessaryGetter | 3 | 786 | [SRC]DefaultDependencyDescriptor dd = manager.getPluginDepend..tor().next() [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getPluginDependencyDescriptors() can probably be rewritten as pluginDependencyDescriptors |
UnnecessaryGetter | 3 | 850 | [SRC]DefaultDependencyDescriptor dd = manager.getDependencyDe..tor().next() [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getDependencyDescriptors() can probably be rewritten as dependencyDescriptors |
UnnecessaryGetter | 3 | 866 | [SRC]dd = manager.getDependencyDescriptors().iterator().next() [MSG]Violation in class org.codehaus.groovy.grails.resolve.IvyDependencyManagerTests. getDependencyDescriptors() can probably be rewritten as dependencyDescriptors |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryObjectReferences | 3 | 106 | [SRC]gcl.parseClass(''' [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 119 | [SRC]gcl.parseClass(''' [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 132 | [SRC]gcl.parseClass(''' [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 153 | [SRC]assertNotNull(personCommand.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 154 | [SRC]assertEquals(5, personCommand.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 155 | [SRC]assertNull(personCommand.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 156 | [SRC]assertNotNull(personCommand.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 160 | [SRC]assertNotNull(person.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 161 | [SRC]assertEquals(5, person.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 162 | [SRC]assertNull(person.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 163 | [SRC]assertNotNull(person.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryObjectReferences | 3 | 181 | [SRC]personCommand.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 184 | [SRC]assertEquals(1, personCommand.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrorCount() can probably be rewritten as errorCount |
UnnecessaryGetter | 3 | 184 | [SRC]assertEquals(1, personCommand.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 185 | [SRC]assertEquals(1, personCommand.getErrors().getFieldErrors..me").size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 186 | [SRC]assertNull(personCommand.getErrors().getFieldErrors("fir..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getRejectedValue() can probably be rewritten as rejectedValue |
UnnecessaryGetter | 3 | 186 | [SRC]assertNull(personCommand.getErrors().getFieldErrors("fir..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryObjectReferences | 3 | 199 | [SRC]person.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 202 | [SRC]assertEquals(1, person.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrorCount() can probably be rewritten as errorCount |
UnnecessaryGetter | 3 | 202 | [SRC]assertEquals(1, person.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 203 | [SRC]assertEquals(1, person.getErrors().getFieldErrors("firstName").size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 204 | [SRC]assertNull(person.getErrors().getFieldErrors("firstName"..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getRejectedValue() can probably be rewritten as rejectedValue |
UnnecessaryGetter | 3 | 204 | [SRC]assertNull(person.getErrors().getFieldErrors("firstName"..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 214 | [SRC]assertNotNull(personCommand.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 215 | [SRC]assertEquals(2, personCommand.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 216 | [SRC]assertNull(personCommand.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 217 | [SRC]assertNotNull(personCommand.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 221 | [SRC]assertNotNull(person.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 222 | [SRC]assertEquals(5, person.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 223 | [SRC]assertNull(person.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 224 | [SRC]assertNotNull(person.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 225 | [SRC]assertNotNull(person.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryObjectReferences | 3 | 243 | [SRC]personCommand.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 246 | [SRC]assertEquals(1, personCommand.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrorCount() can probably be rewritten as errorCount |
UnnecessaryGetter | 3 | 246 | [SRC]assertEquals(1, personCommand.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 247 | [SRC]assertEquals(1, personCommand.getErrors().getFieldErrors..me").size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 248 | [SRC]assertNull(personCommand.getErrors().getFieldErrors("fir..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getRejectedValue() can probably be rewritten as rejectedValue |
UnnecessaryGetter | 3 | 248 | [SRC]assertNull(personCommand.getErrors().getFieldErrors("fir..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryObjectReferences | 3 | 261 | [SRC]person.email = "wrongEmail" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 262 | [SRC]person.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 265 | [SRC]assertEquals(1, person.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrorCount() can probably be rewritten as errorCount |
UnnecessaryGetter | 3 | 265 | [SRC]assertEquals(1, person.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 266 | [SRC]assertEquals(1, person.getErrors().getFieldErrors("email").size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 267 | [SRC]assertEquals("wrongEmail", person.getErrors().getFieldEr..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getRejectedValue() can probably be rewritten as rejectedValue |
UnnecessaryGetter | 3 | 267 | [SRC]assertEquals("wrongEmail", person.getErrors().getFieldEr..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 277 | [SRC]assertNotNull(personCommand.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 278 | [SRC]assertEquals(5, personCommand.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 279 | [SRC]assertNull(personCommand.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 280 | [SRC]assertNotNull(personCommand.getConstraints().get("telephone")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 282 | [SRC]assertEquals(30, personCommand.getConstraints().get("fir..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 282 | [SRC]assertEquals(30, personCommand.getConstraints().get("fir..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 283 | [SRC]assertEquals(50, personCommand.getConstraints().get("las..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 283 | [SRC]assertEquals(50, personCommand.getConstraints().get("las..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 286 | [SRC]personCommand.getConstraints().get("telephone").getAppli..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 286 | [SRC]personCommand.getConstraints().get("telephone").getAppli..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 290 | [SRC]assertNotNull(person.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 291 | [SRC]assertEquals(5, person.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 292 | [SRC]assertNull(person.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 293 | [SRC]assertNotNull(person.getConstraints().get("telephone")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 295 | [SRC]assertEquals(30, person.getConstraints().get("firstName"..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 295 | [SRC]assertEquals(30, person.getConstraints().get("firstName"..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 296 | [SRC]assertEquals(50, person.getConstraints().get("lastName")..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 296 | [SRC]assertEquals(50, person.getConstraints().get("lastName")..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 297 | [SRC]assertEquals("123123", person.getConstraints().get("tele..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 297 | [SRC]assertEquals("123123", person.getConstraints().get("tele..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryObjectReferences | 3 | 315 | [SRC]personCommand.lastName = null [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 316 | [SRC]personCommand.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 319 | [SRC]assertEquals(2, personCommand.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrorCount() can probably be rewritten as errorCount |
UnnecessaryGetter | 3 | 319 | [SRC]assertEquals(2, personCommand.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryObjectReferences | 3 | 332 | [SRC]person.firstName = null [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 333 | [SRC]person.email = "wrongEmail" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 334 | [SRC]person.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 337 | [SRC]assertEquals(2, person.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrorCount() can probably be rewritten as errorCount |
UnnecessaryGetter | 3 | 337 | [SRC]assertEquals(2, person.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 338 | [SRC]assertEquals(1, person.getErrors().getFieldErrors("firstName").size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 339 | [SRC]assertNull(person.getErrors().getFieldErrors("firstName"..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getRejectedValue() can probably be rewritten as rejectedValue |
UnnecessaryGetter | 3 | 339 | [SRC]assertNull(person.getErrors().getFieldErrors("firstName"..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 340 | [SRC]assertEquals(1, person.getErrors().getFieldErrors("email").size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 341 | [SRC]assertEquals("wrongEmail", person.getErrors().getFieldEr..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getRejectedValue() can probably be rewritten as rejectedValue |
UnnecessaryGetter | 3 | 341 | [SRC]assertEquals("wrongEmail", person.getErrors().getFieldEr..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 351 | [SRC]assertNotNull(personCommand.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 352 | [SRC]assertEquals(5, personCommand.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 353 | [SRC]assertNull(personCommand.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 354 | [SRC]assertNotNull(personCommand.getConstraints().get("telephone")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 356 | [SRC]assertEquals(10, personCommand.getConstraints().get("fir..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 356 | [SRC]assertEquals(10, personCommand.getConstraints().get("fir..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 357 | [SRC]assertEquals(20, personCommand.getConstraints().get("las..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 357 | [SRC]assertEquals(20, personCommand.getConstraints().get("las..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 360 | [SRC]personCommand.getConstraints().get("telephone").getAppli..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 360 | [SRC]personCommand.getConstraints().get("telephone").getAppli..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 364 | [SRC]assertNotNull(person.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 365 | [SRC]assertEquals(5, person.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 366 | [SRC]assertNull(person.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 367 | [SRC]assertNotNull(person.getConstraints().get("telephone")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 369 | [SRC]assertEquals(30, person.getConstraints().get("firstName"..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 369 | [SRC]assertEquals(30, person.getConstraints().get("firstName"..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 370 | [SRC]assertEquals(50, person.getConstraints().get("lastName")..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 370 | [SRC]assertEquals(50, person.getConstraints().get("lastName")..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 371 | [SRC]assertEquals("123123", person.getConstraints().get("tele..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getParameter() can probably be rewritten as parameter |
UnnecessaryGetter | 3 | 371 | [SRC]assertEquals("123123", person.getConstraints().get("tele..Parameter()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryObjectReferences | 3 | 389 | [SRC]personCommand.firstName = null [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 390 | [SRC]personCommand.lastName = null [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 391 | [SRC]personCommand.email = "wrongEmail" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 392 | [SRC]personCommand.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 395 | [SRC]assertEquals(1, personCommand.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrorCount() can probably be rewritten as errorCount |
UnnecessaryGetter | 3 | 395 | [SRC]assertEquals(1, personCommand.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryObjectReferences | 3 | 408 | [SRC]person.firstName = null [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 409 | [SRC]person.email = "wrongEmail" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 410 | [SRC]person.validate() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 413 | [SRC]assertEquals(2, person.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrorCount() can probably be rewritten as errorCount |
UnnecessaryGetter | 3 | 413 | [SRC]assertEquals(2, person.getErrors().getErrorCount()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 414 | [SRC]assertEquals(1, person.getErrors().getFieldErrors("firstName").size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 415 | [SRC]assertNull(person.getErrors().getFieldErrors("firstName"..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getRejectedValue() can probably be rewritten as rejectedValue |
UnnecessaryGetter | 3 | 415 | [SRC]assertNull(person.getErrors().getFieldErrors("firstName"..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 416 | [SRC]assertEquals(1, person.getErrors().getFieldErrors("email").size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 417 | [SRC]assertEquals("wrongEmail", person.getErrors().getFieldEr..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getRejectedValue() can probably be rewritten as rejectedValue |
UnnecessaryGetter | 3 | 417 | [SRC]assertEquals("wrongEmail", person.getErrors().getFieldEr..ctedValue()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getErrors() can probably be rewritten as errors |
UnnecessaryGetter | 3 | 427 | [SRC]assertNotNull(personCommand.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 428 | [SRC]assertEquals(2, personCommand.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 429 | [SRC]assertNull(personCommand.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 430 | [SRC]assertNotNull(personCommand.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 431 | [SRC]assertNull(personCommand.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 435 | [SRC]assertNotNull(person.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 436 | [SRC]assertEquals(5, person.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 437 | [SRC]assertNull(person.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 438 | [SRC]assertNotNull(person.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 439 | [SRC]assertNotNull(person.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 449 | [SRC]assertNotNull(personCommand.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 450 | [SRC]assertEquals(3, personCommand.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 451 | [SRC]assertNull(personCommand.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 452 | [SRC]assertNull(personCommand.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 453 | [SRC]assertNull(personCommand.getConstraints().get("lastName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 454 | [SRC]assertNotNull(personCommand.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 458 | [SRC]assertNotNull(person.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 459 | [SRC]assertEquals(5, person.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 460 | [SRC]assertNull(person.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 461 | [SRC]assertNotNull(person.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 462 | [SRC]assertNotNull(person.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 472 | [SRC]assertNotNull(personCommand.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 473 | [SRC]assertEquals(3, personCommand.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 474 | [SRC]assertNull(personCommand.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 475 | [SRC]assertNotNull(personCommand.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 476 | [SRC]assertNotNull(personCommand.getConstraints().get("lastName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 477 | [SRC]assertNotNull(personCommand.getConstraints().get("middleName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 478 | [SRC]assertNull(personCommand.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 482 | [SRC]assertNotNull(person.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 483 | [SRC]assertEquals(5, person.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 484 | [SRC]assertNull(person.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 485 | [SRC]assertNotNull(person.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 486 | [SRC]assertNotNull(person.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 497 | [SRC]assertNotNull(personCommand.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 498 | [SRC]assertEquals(2, personCommand.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 499 | [SRC]assertNull(personCommand.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 500 | [SRC]assertNotNull(personCommand.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 501 | [SRC]assertNotNull(personCommand.getConstraints().get("lastName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 502 | [SRC]assertNull(personCommand.getConstraints().get("middleName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 503 | [SRC]assertNull(personCommand.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 507 | [SRC]assertNotNull(person.getConstraints()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 508 | [SRC]assertEquals(5, person.getConstraints().size()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 509 | [SRC]assertNull(person.getConstraints().get("importFrom")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 510 | [SRC]assertNotNull(person.getConstraints().get("firstName")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
UnnecessaryGetter | 3 | 511 | [SRC]assertNotNull(person.getConstraints().get("email")) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstrainedPropertyBuilderForCommandsTests. getConstraints() can probably be rewritten as constraints |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 54 | [SRC]void processValidate(Object target, Object propertyValue..rs errors) { [MSG]Violation in class TestConstraint. Method parameter [propertyValue] is never referenced in the method processValidate of class org.codehaus.groovy.grails.validation.TestConstraint |
UnusedMethodParameter | 2 | 58 | [SRC]boolean supports(Class type) { true } [MSG]Violation in class TestConstraint. Method parameter [type] is never referenced in the method supports of class org.codehaus.groovy.grails.validation.TestConstraint |
UnnecessaryGetter | 3 | 39 | [SRC]'test'] as String[], errors.getFieldError().getCodes()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstraintMessageTests. getCodes() can probably be rewritten as codes |
UnnecessaryGetter | 3 | 39 | [SRC]'test'] as String[], errors.getFieldError().getCodes()) [MSG]Violation in class org.codehaus.groovy.grails.validation.ConstraintMessageTests. getFieldError() can probably be rewritten as fieldError |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 74 | [SRC]Errors validateInstance(instance, validator) { [MSG]Violation in class ConstraintsBuilderTests. The method validateInstance is public but not a test method |
JUnitPublicNonTestMethod | 2 | 80 | [SRC]GrailsDomainClassValidator configureValidator(theClass, instance) { [MSG]Violation in class ConstraintsBuilderTests. The method configureValidator is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 64 | [SRC]def configurator = GrailsConfigUtils.determineGrailsRunt..ontext, ctx) [MSG]The variable [configurator] in class org.codehaus.groovy.grails.web.context.GrailsConfigUtilsTests is not used |
JUnitTearDownCallsSuper | 2 | 79 | [SRC]protected void tearDown() { [MSG]Violation in class GrailsConfigUtilsTests. The method tearDown() does not call super.tearDown() |
UnnecessaryGetter | 3 | 48 | [SRC]servletContext.addInitParameter("grailsConfiguratorClass..s.getName()) [MSG]Violation in class org.codehaus.groovy.grails.web.context.GrailsConfigUtilsTests. getName() can probably be rewritten as name |
UnnecessaryDotClass | 3 | 48 | [SRC]servletContext.addInitParameter("grailsConfiguratorClass..s.getName()) [MSG]MyGrailsRuntimeConfigurator.class can be rewritten as MyGrailsRuntimeConfigurator |
UnnecessaryDotClass | 3 | 53 | [SRC]assertEquals configurator.class.name, MyGrailsRuntimeCon..r.class.name [MSG]MyGrailsRuntimeConfigurator.class can be rewritten as MyGrailsRuntimeConfigurator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 37 | [SRC]protected void tearDown() { [MSG]Violation in class GrailsExceptionResolverTests. The method tearDown() does not call super.tearDown() |
UnusedMethodParameter | 2 | 264 | [SRC]View resolveViewName(String viewName, Locale locale) { [MSG]Violation in class DummyViewResolver. Method parameter [locale] is never referenced in the method resolveViewName of class org.codehaus.groovy.grails.web.errors.DummyViewResolver |
UnnecessaryGetter | 3 | 120 | [SRC]assertEquals "/grails/foo/bar.dispatch",response.getForwardedUrl() [MSG]Violation in class org.codehaus.groovy.grails.web.errors.GrailsExceptionResolverTests. getForwardedUrl() can probably be rewritten as forwardedUrl |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.springframework.mock.web.MockServletContext; [MSG]The [org.springframework.mock.web.MockServletContext] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import org.codehaus.groovy.grails.web.servlet.GrailsAppl..nAttributes; [MSG]The [org.codehaus.groovy.grails.web.servlet.GrailsApplicationAttributes] import is never referenced |
UnusedImport | 3 | 6 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequest; [MSG]The [org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequest] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 16 | [SRC]protected void tearDown() { [MSG]Violation in class ParamsAwareLocaleChangeInterceptorTests. The method tearDown() does not call super.tearDown() |
UnnecessaryGetter | 3 | 24 | [SRC]def request = webRequest.getCurrentRequest() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 25 | [SRC]def response = webRequest.getCurrentResponse() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getCurrentResponse() can probably be rewritten as currentResponse |
UnnecessaryGetter | 3 | 47 | [SRC]assertEquals "de", locale.getLanguage() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getLanguage() can probably be rewritten as language |
UnnecessaryGetter | 3 | 48 | [SRC]assertEquals "DE", locale.getCountry() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getCountry() can probably be rewritten as country |
UnnecessaryGetter | 3 | 55 | [SRC]def request = webRequest.getCurrentRequest() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 56 | [SRC]def response = webRequest.getCurrentResponse() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getCurrentResponse() can probably be rewritten as currentResponse |
UnnecessaryGetter | 3 | 78 | [SRC]assertEquals "de", locale.getLanguage() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getLanguage() can probably be rewritten as language |
UnnecessaryGetter | 3 | 79 | [SRC]assertEquals "DE", locale.getCountry() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getCountry() can probably be rewritten as country |
UnnecessaryGetter | 3 | 86 | [SRC]MockHttpServletRequest request = webRequest.getCurrentRequest() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 87 | [SRC]def response = webRequest.getCurrentResponse() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getCurrentResponse() can probably be rewritten as currentResponse |
UnnecessaryGetter | 3 | 109 | [SRC]assertEquals "de", locale.getLanguage() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getLanguage() can probably be rewritten as language |
UnnecessaryGetter | 3 | 110 | [SRC]assertEquals "DE", locale.getCountry() [MSG]Violation in class org.codehaus.groovy.grails.web.i18n.ParamsAwareLocaleChangeInterceptorTests. getCountry() can probably be rewritten as country |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertEqualsInsteadOfAssertTrue | 3 | 32 | [SRC]assertTrue j1 == j2 [MSG]Violation in class org.codehaus.groovy.grails.web.json.JSONObjectTests. Replace assertTrue with a call to assertEquals() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 30 | [SRC]@Override protected void tearDown() { [MSG]Violation in class WithFormMethodTests. The method tearDown() does not call super.tearDown() |
UnusedVariable | 2 | 146 | [SRC]def result = withForm.withForm(request) { [MSG]The variable [result] in class org.codehaus.groovy.grails.web.metaclass.WithFormMethodTests is not used |
UnusedVariable | 2 | 170 | [SRC]def result = withForm.withForm(request) { [MSG]The variable [result] in class org.codehaus.groovy.grails.web.metaclass.WithFormMethodTests is not used |
UnusedImport | 3 | 20 | [SRC]import org.apache.commons.lang.StringUtils; [MSG]The [org.apache.commons.lang.StringUtils] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 160 | [SRC]void onSetUp() { [MSG]Violation in class BindDataMethodTests. The method onSetUp is public but not a test method |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 34 | [SRC]runTest() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'runTest' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 46 | [SRC]runTest() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'runTest' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 60 | [SRC]runTest() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'runTest' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 74 | [SRC]runTest() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'runTest' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 86 | [SRC]runTest() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'runTest' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 100 | [SRC]runTest() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'runTest' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 113 | [SRC]runTest() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'runTest' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 117 | [SRC]input.each() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 133 | [SRC]runTest() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'runTest' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 147 | [SRC]runTest() { [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.BindDataMethodTests. Parentheses in the 'runTest' method call are unnecessary and can be removed. |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 12 | [SRC]void setUp() { [MSG]Violation in class DefaultGrailsApplicationAttributesTests. The method setUp() does not call super.setUp() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 21 | [SRC]import org.springframework.mock.web.MockHttpServletRequest [MSG]The [org.springframework.mock.web.MockHttpServletRequest] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 30 | [SRC]void onSetUp() { [MSG]Violation in class GrailsHttpSessionTests. The method onSetUp is public but not a test method |
UnusedVariable | 2 | 42 | [SRC]def mock = new MockHttpSession() [MSG]The variable [mock] in class org.codehaus.groovy.grails.web.servlet.GrailsHttpSessionTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 199 | [SRC]def resopnse = mockController.response [MSG]The variable [resopnse] in class org.codehaus.groovy.grails.web.servlet.RenderMethodTests is not used |
UnusedVariable | 2 | 213 | [SRC]def resopnse = mockController.response [MSG]The variable [resopnse] in class org.codehaus.groovy.grails.web.servlet.RenderMethodTests is not used |
JUnitPublicNonTestMethod | 2 | 291 | [SRC]String toString() { foo } [MSG]Violation in class RenderTest. The method toString is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 54 | [SRC]void tearDown() { [MSG]Violation in class AbstractServletFilterTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UseAssertTrueInsteadOfAssertEquals | 3 | 19 | [SRC]assert WebMetaUtils.isCommandObjectAction(action) == true [MSG]The expression '(WebMetaUtils.isCommandObjectAction(action) == true)' can be simplified to 'WebMetaUtils.isCommandObjectAction(action)' |
UseAssertTrueInsteadOfAssertEquals | 3 | 23 | [SRC]assert WebMetaUtils.isCommandObjectAction(fresh.index) == false [MSG]The expression '(WebMetaUtils.isCommandObjectAction(fresh.index) == false)' can be simplified to '!WebMetaUtils.isCommandObjectAction(fresh.index)' |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 23 | [SRC]void testCallSuperMethod() { [MSG]Violation in class ControllerInheritanceTests. Test method 'testCallSuperMethod' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 17 | [SRC]void onSetUp() { [MSG]Violation in class ControllersDynamicMethodsTests. The method onSetUp is public but not a test method |
JUnitPublicNonTestMethod | 2 | 28 | [SRC]void runTest(Closure callable) { [MSG]Violation in class ControllersDynamicMethodsTests. The method runTest is public but not a test method |
JUnitTestMethodWithoutAssert | 2 | 135 | [SRC]void testRenderMethod() { [MSG]Violation in class ControllersDynamicMethodsTests. Test method 'testRenderMethod' makes no assertions |
UnnecessaryGetter | 3 | 53 | [SRC]def appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.web.servlet.mvc.ControllersDynamicMethodsTests. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 240 | [SRC]void testIterateOverMapContainingDate() { [MSG]Violation in class GrailsParameterMapTests. Test method 'testIterateOverMapContainingDate' makes no assertions |
UnusedImport | 3 | 4 | [SRC]import grails.util.GrailsWebUtil [MSG]The [grails.util.GrailsWebUtil] import is never referenced |
UnusedImport | 3 | 6 | [SRC]import org.springframework.web.context.WebApplicationContext [MSG]The [org.springframework.web.context.WebApplicationContext] import is never referenced |
UnnecessaryPackageReference | 3 | 21 | [SRC]final webRequest = grails.util.GrailsWebUtil.bindMockWebRequest(ctx) [MSG]The grails.util.GrailsWebUtil class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryObjectReferences | 3 | 112 | [SRC]map.aList = [1,2] [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 113 | [SRC]map.array = ["one", "two" ] as String[] [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 114 | [SRC]map.longNumber = 1234567890 [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 115 | [SRC]map.z = 'z' [MSG]The code could be more concise by using a with() or identity() block |
UseAssertTrueInsteadOfAssertEquals | 3 | 209 | [SRC]assertEquals false, map.boolean('one') [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 210 | [SRC]assertEquals true, map.boolean('nonexistent', Boolean.TRUE) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 211 | [SRC]assertEquals false, map.boolean('nonexistent', Boolean.FALSE) [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UseAssertTrueInsteadOfAssertEquals | 3 | 212 | [SRC]assertEquals true, map.boolean('bool') [MSG]assertEquals can be simplified using assertTrue or assertFalse |
UnnecessaryObjectReferences | 3 | 262 | [SRC]mockRequest.addParameter("a.e.g", "gValue") [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryObjectReferences | 3 | 24 | [SRC]request.addParameter("book.id", "10") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 25 | [SRC]request.addParameter("publisher.name", "Apress") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 26 | [SRC]request.addParameter("publisher.authors[0].name", "Fred") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 27 | [SRC]request.addParameter("publisher.authors[1].name", "Joe") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 28 | [SRC]request.addParameter("test..foo..bar", "Stuff") [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
ConsecutiveStringConcatenation | 3 | 107 | [SRC]render "${'te' + 'xt'}" [MSG]String concatenation in class org.codehaus.groovy.grails.web.servlet.mvc.RenderDynamicMethodTestController can be joined into the literal 'text' |
ConsecutiveStringConcatenation | 3 | 107 | [SRC]render "${'te' + 'xt'}" [MSG]String concatenation in class org.codehaus.groovy.grails.web.servlet.mvc.RenderDynamicMethodTestController can be joined into the literal 'text' |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 17 | [SRC]void onSetUp() { [MSG]Violation in class TagLibDynamicMethodsTests. The method onSetUp is public but not a test method |
ImportFromSamePackage | 3 | 8 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.* |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 36 | [SRC]boolean isPathExcluded(String path) { false } [MSG]Violation in class DummyFactory. Method parameter [path] is never referenced in the method isPathExcluded of class org.codehaus.groovy.grails.web.sitemesh.DummyFactory |
UnusedMethodParameter | 2 | 37 | [SRC]boolean shouldParsePage(String contentType) { false } [MSG]Violation in class DummyFactory. Method parameter [contentType] is never referenced in the method shouldParsePage of class org.codehaus.groovy.grails.web.sitemesh.DummyFactory |
EmptyMethod | 2 | 39 | [SRC]void refresh() {} [MSG]Violation in class DummyFactory. The method refresh is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 40 | [SRC]PageParser getPageParser(String contentType) { null } [MSG]Violation in class DummyFactory. Method parameter [contentType] is never referenced in the method getPageParser of class org.codehaus.groovy.grails.web.sitemesh.DummyFactory |
UnnecessaryGetter | 3 | 12 | [SRC]assertSame factory, FactoryHolder.getFactory() [MSG]Violation in class org.codehaus.groovy.grails.web.sitemesh.FactoryHolderTests. getFactory() can probably be rewritten as factory |
UnnecessaryGetter | 3 | 18 | [SRC]FactoryHolder.getFactory() [MSG]Violation in class org.codehaus.groovy.grails.web.sitemesh.FactoryHolderTests. getFactory() can probably be rewritten as factory |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 15 | [SRC]def result = applyTemplate(template, [:]) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.sitemesh.GSPSitemeshPageTests is not used |
UnusedVariable | 2 | 23 | [SRC]def result = applyTemplate(template, [:]) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.sitemesh.GSPSitemeshPageTests is not used |
UnusedVariable | 2 | 31 | [SRC]def result = applyTemplate(template, [:]) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.sitemesh.GSPSitemeshPageTests is not used |
UnusedVariable | 2 | 39 | [SRC]def result = applyTemplate(template, [:]) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.sitemesh.GSPSitemeshPageTests is not used |
UnusedVariable | 2 | 52 | [SRC]def result = applyTemplate(template, [:]) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.sitemesh.GSPSitemeshPageTests is not used |
UnusedVariable | 2 | 61 | [SRC]def result = applyTemplate(template, [:]) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.sitemesh.GSPSitemeshPageTests is not used |
UnusedVariable | 2 | 79 | [SRC]def result = applyTemplate(template, [:], target1) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.sitemesh.GSPSitemeshPageTests is not used |
UnusedVariable | 2 | 96 | [SRC]def result = applyTemplate(template, [:]) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.sitemesh.GSPSitemeshPageTests is not used |
UnusedVariable | 2 | 113 | [SRC]def result = applyTemplate(template, [:]) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.sitemesh.GSPSitemeshPageTests is not used |
JUnitTearDownCallsSuper | 2 | 125 | [SRC]void tearDown() { [MSG]Violation in class GSPSitemeshPageTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 7 | [SRC]protected void setUp() { [MSG]Violation in class StreamCharBufferGroovyTests. The method setUp() does not call super.setUp() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 22 | [SRC]protected void setUp() { [MSG]Violation in class WebUtilsTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 42 | [SRC]protected void tearDown() { [MSG]Violation in class WebUtilsTests. The method tearDown() does not call super.tearDown() |
JUnitPublicNonTestMethod | 2 | 141 | [SRC]void clearGrailsWebRequest() { [MSG]Violation in class WebUtilsTests. The method clearGrailsWebRequest is public but not a test method |
UnnecessaryDefInMethodDeclaration | 3 | 61 | [SRC]private def bindMockRequest(DefaultGrailsApplication ga) { [MSG]Violation in class org.codehaus.groovy.grails.web.util.WebUtilsTests. The def keyword is unneeded when a method is marked private |
UnnecessaryGetter | 3 | 67 | [SRC]ctx.registerMockBean(MimeType.BEAN_NAME, factory.getObject()) [MSG]Violation in class org.codehaus.groovy.grails.web.util.WebUtilsTests. getObject() can probably be rewritten as object |
UnnecessaryGetter | 3 | 103 | [SRC]assertNull RequestContextHolder.getRequestAttributes() [MSG]Violation in class org.codehaus.groovy.grails.web.util.WebUtilsTests. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 123 | [SRC]assertNull RequestContextHolder.getRequestAttributes() [MSG]Violation in class org.codehaus.groovy.grails.web.util.WebUtilsTests. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 137 | [SRC]assertEquals mockWebRequest, RequestContextHolder.getReq..Attributes() [MSG]Violation in class org.codehaus.groovy.grails.web.util.WebUtilsTests. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 154 | [SRC]assertNull RequestContextHolder.getRequestAttributes() [MSG]Violation in class org.codehaus.groovy.grails.web.util.WebUtilsTests. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 160 | [SRC]assertNull RequestContextHolder.getRequestAttributes() [MSG]Violation in class org.codehaus.groovy.grails.web.util.WebUtilsTests. getRequestAttributes() can probably be rewritten as requestAttributes |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 5 | [SRC]def withSpring() {} [MSG]Violation in class ClassEditorGrailsPlugin. The method withSpring is both empty and not marked with @Override |
EmptyMethod | 2 | 7 | [SRC]def withApplicationContext(ctx) {} [MSG]Violation in class ClassEditorGrailsPlugin. The method withApplicationContext is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 7 | [SRC]def withApplicationContext(ctx) {} [MSG]Violation in class ClassEditorGrailsPlugin. Method parameter [ctx] is never referenced in the method withApplicationContext of class ClassEditorGrailsPlugin |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 63 | [SRC]void testSetup() { [MSG]Violation in class GrailsUrlMappingsTestCaseTests. Test method 'testSetup' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 73 | [SRC]void testSetupExplicitMappingClass() { [MSG]Violation in class GrailsUrlMappingsTestCaseTests. Test method 'testSetupExplicitMappingClass' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 176 | [SRC]void test_GRAILS_3571_Bug() { [MSG]Violation in class GrailsUrlMappingsTestCaseTests. Test method 'test_GRAILS_3571_Bug' makes no assertions |
EmptyCatchBlock | 2 | 209 | [SRC]catch (e) {} [MSG]The catch block is empty |
JUnitTestMethodWithoutAssert | 2 | 265 | [SRC]void testGrails5786() { [MSG]Violation in class GrailsUrlMappingsTestCaseTests. Test method 'testGrails5786' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 272 | [SRC]void testGrails5222() { [MSG]Violation in class GrailsUrlMappingsTestCaseTests. Test method 'testGrails5222' makes no assertions |
JUnitPublicNonTestMethod | 2 | 353 | [SRC]def assertView(controller, view, url) { [MSG]Violation in class MultipleMappingsTestCase. The method assertView is public but not a test method |
UnusedMethodParameter | 2 | 353 | [SRC]def assertView(controller, view, url) { [MSG]Violation in class MultipleMappingsTestCase. Method parameter [controller] is never referenced in the method assertView of class grails.test.MultipleMappingsTestCase |
UnusedMethodParameter | 2 | 353 | [SRC]def assertView(controller, view, url) { [MSG]Violation in class MultipleMappingsTestCase. Method parameter [view] is never referenced in the method assertView of class grails.test.MultipleMappingsTestCase |
UnusedMethodParameter | 2 | 353 | [SRC]def assertView(controller, view, url) { [MSG]Violation in class MultipleMappingsTestCase. Method parameter [url] is never referenced in the method assertView of class grails.test.MultipleMappingsTestCase |
EqualsAndHashCode | 2 | 396 | [SRC]class MockUrlMapping implements UrlMapping { [MSG]The class grails.test.MockUrlMapping defines equals(Object) but not hashCode() |
UnusedMethodParameter | 2 | 410 | [SRC]UrlMappingInfo match(String uri) { null } [MSG]Violation in class MockUrlMapping. Method parameter [uri] is never referenced in the method match of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 414 | [SRC]int compareTo(Object o) { 0 } [MSG]Violation in class MockUrlMapping. Method parameter [o] is never referenced in the method compareTo of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 416 | [SRC]String createURL(Map parameterValues, String encoding) { null } [MSG]Violation in class MockUrlMapping. Method parameter [parameterValues] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 416 | [SRC]String createURL(Map parameterValues, String encoding) { null } [MSG]Violation in class MockUrlMapping. Method parameter [encoding] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 418 | [SRC]String createURL(Map parameterValues, String encoding, S..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [parameterValues] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 418 | [SRC]String createURL(Map parameterValues, String encoding, S..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [encoding] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 418 | [SRC]String createURL(Map parameterValues, String encoding, S..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [fragment] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 420 | [SRC]String createURL(String controller, String action, Map p..ng) { null } [MSG]Violation in class MockUrlMapping. Method parameter [controller] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 420 | [SRC]String createURL(String controller, String action, Map p..ng) { null } [MSG]Violation in class MockUrlMapping. Method parameter [action] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 420 | [SRC]String createURL(String controller, String action, Map p..ng) { null } [MSG]Violation in class MockUrlMapping. Method parameter [parameterValues] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 420 | [SRC]String createURL(String controller, String action, Map p..ng) { null } [MSG]Violation in class MockUrlMapping. Method parameter [encoding] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 422 | [SRC]String createRelativeURL(String controller, String actio..ng) { null } [MSG]Violation in class MockUrlMapping. Method parameter [controller] is never referenced in the method createRelativeURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 422 | [SRC]String createRelativeURL(String controller, String actio..ng) { null } [MSG]Violation in class MockUrlMapping. Method parameter [action] is never referenced in the method createRelativeURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 422 | [SRC]String createRelativeURL(String controller, String actio..ng) { null } [MSG]Violation in class MockUrlMapping. Method parameter [parameterValues] is never referenced in the method createRelativeURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 422 | [SRC]String createRelativeURL(String controller, String actio..ng) { null } [MSG]Violation in class MockUrlMapping. Method parameter [encoding] is never referenced in the method createRelativeURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 424 | [SRC]String createRelativeURL(String controller, String actio..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [controller] is never referenced in the method createRelativeURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 424 | [SRC]String createRelativeURL(String controller, String actio..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [action] is never referenced in the method createRelativeURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 424 | [SRC]String createRelativeURL(String controller, String actio..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [parameterValues] is never referenced in the method createRelativeURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 424 | [SRC]String createRelativeURL(String controller, String actio..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [encoding] is never referenced in the method createRelativeURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 424 | [SRC]String createRelativeURL(String controller, String actio..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [fragment] is never referenced in the method createRelativeURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 426 | [SRC]String createURL(String controller, String action, Map p..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [controller] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 426 | [SRC]String createURL(String controller, String action, Map p..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [action] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 426 | [SRC]String createURL(String controller, String action, Map p..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [parameterValues] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 426 | [SRC]String createURL(String controller, String action, Map p..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [encoding] is never referenced in the method createURL of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 426 | [SRC]String createURL(String controller, String action, Map p..nt) { null } [MSG]Violation in class MockUrlMapping. Method parameter [fragment] is never referenced in the method createURL of class grails.test.MockUrlMapping |
EmptyMethod | 2 | 436 | [SRC]void setParameterValues(Map parameterValues) {} [MSG]Violation in class MockUrlMapping. The method setParameterValues is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 436 | [SRC]void setParameterValues(Map parameterValues) {} [MSG]Violation in class MockUrlMapping. Method parameter [parameterValues] is never referenced in the method setParameterValues of class grails.test.MockUrlMapping |
EmptyMethod | 2 | 438 | [SRC]void setParseRequest(boolean shouldParse) { [MSG]Violation in class MockUrlMapping. The method setParseRequest is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 438 | [SRC]void setParseRequest(boolean shouldParse) { [MSG]Violation in class MockUrlMapping. Method parameter [shouldParse] is never referenced in the method setParseRequest of class grails.test.MockUrlMapping |
EmptyMethod | 2 | 444 | [SRC]void setMappingName(String name) {} [MSG]Violation in class MockUrlMapping. The method setMappingName is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 444 | [SRC]void setMappingName(String name) {} [MSG]Violation in class MockUrlMapping. Method parameter [name] is never referenced in the method setMappingName of class grails.test.MockUrlMapping |
UnusedMethodParameter | 2 | 446 | [SRC]boolean hasRuntimeVariable(String name) { false } [MSG]Violation in class MockUrlMapping. Method parameter [name] is never referenced in the method hasRuntimeVariable of class grails.test.MockUrlMapping |
UnnecessaryObjectReferences | 3 | 224 | [SRC]test.assertUrlMapping(500, controller: "grailsUrlMapping..: "action1") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 226 | [SRC]test.assertForwardUrlMapping("/controllerView", controll..iew: "view") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 235 | [SRC]test.assertUrlMapping("/absoluteView", view: "view") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 236 | [SRC]test.assertUrlMapping("/absoluteView", view: "/view") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 237 | [SRC]test.assertUrlMapping("/absoluteViewWithSlash", view: "view") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 238 | [SRC]test.assertUrlMapping("/absoluteViewWithSlash", view: "/view") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 240 | [SRC]test.assertUrlMapping("/params/value1/value2", controlle.."action3") { [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 260 | [SRC]test.assertUrlMapping("/params/value1", controller: "gra.."action3") { [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryConstructor | 3 | 26 | [SRC]TimeTagLib() { [MSG]The constructor can be safely deleted |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 23 | [SRC]def list() { } [MSG]Violation in class BookController. The method list is both empty and not marked with @Override |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 27 | [SRC]void setUp() { [MSG]Violation in class FilterConfigTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 135 | [SRC]void tearDown() { [MSG]Violation in class FilterConfigTests. The method tearDown() does not call super.tearDown() |
UseAssertTrueInsteadOfAssertEquals | 3 | 80 | [SRC]assert mockDefinition.generateNumberCalled == true [MSG]The expression '(mockDefinition.generateNumberCalled == true)' can be simplified to 'mockDefinition.generateNumberCalled' |
UseAssertTrueInsteadOfAssertEquals | 3 | 85 | [SRC]assert mockDefinition.generateNumberCalled == true [MSG]The expression '(mockDefinition.generateNumberCalled == true)' can be simplified to 'mockDefinition.generateNumberCalled' |
UseAssertTrueInsteadOfAssertEquals | 3 | 90 | [SRC]assert mockDefinition.generateNumberCalled == true [MSG]The expression '(mockDefinition.generateNumberCalled == true)' can be simplified to 'mockDefinition.generateNumberCalled' |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 29 | [SRC]def version = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.plugins.webflow.MockWebFlowGrailsPlugin. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 48 | [SRC]def model = controller.update() [MSG]The variable [model] in class org.codehaus.groovy.grails.web.binding.BindingToNullableTests is not used |
UnusedImport | 3 | 4 | [SRC]import org.springframework.web.context.request.RequestContextHolder [MSG]The [org.springframework.web.context.request.RequestContextHolder] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CoupledTestCase | 2 | 23 | [SRC]def map = new DataBindingLazyMetaPropertyMap(new Propert..er:"stuff")) [MSG]new PropertyMapTest([name:Bart, age:11, other:stuff]) creates an instance of a test case. Test cases should not be coupled. Move this method to a helper object |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 185 | [SRC]def error = b.errors.getFieldError('site') [MSG]The variable [error] in class org.codehaus.groovy.grails.web.binding.DataBindingTests is not used |
UnusedVariable | 2 | 246 | [SRC]def authorClass = ga.getDomainClass("databindingtests.Au..).getClazz() [MSG]The variable [authorClass] in class org.codehaus.groovy.grails.web.binding.DataBindingTests is not used |
UnnecessaryGetter | 3 | 246 | [SRC]def authorClass = ga.getDomainClass("databindingtests.Au..).getClazz() [MSG]Violation in class org.codehaus.groovy.grails.web.binding.DataBindingTests. getClazz() can probably be rewritten as clazz |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 12 | [SRC]assertEquals(getJSONArray(), getJSONArray()) [MSG]Violation in class org.codehaus.groovy.grails.web.converters.JSONArrayTests. getJSONArray() can probably be rewritten as JSONArray |
UnnecessaryGetter | 3 | 12 | [SRC]assertEquals(getJSONArray(), getJSONArray()) [MSG]Violation in class org.codehaus.groovy.grails.web.converters.JSONArrayTests. getJSONArray() can probably be rewritten as JSONArray |
UnnecessaryGetter | 3 | 17 | [SRC]assertEquals(getJSONArray().hashCode(), getJSONArray().hashCode()) [MSG]Violation in class org.codehaus.groovy.grails.web.converters.JSONArrayTests. getJSONArray() can probably be rewritten as JSONArray |
UnnecessaryGetter | 3 | 17 | [SRC]assertEquals(getJSONArray().hashCode(), getJSONArray().hashCode()) [MSG]Violation in class org.codehaus.groovy.grails.web.converters.JSONArrayTests. getJSONArray() can probably be rewritten as JSONArray |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 100 | [SRC]void onSetUp() { [MSG]Violation in class JSONConverterTests. The method onSetUp is public but not a test method |
UnnecessaryPackageReference | 3 | 82 | [SRC]enumClass.metaClass.asType = {java.lang.Class clazz -> [MSG]Specifying the package name is not necessary for java.lang.Class |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 92 | [SRC]def proxy = [getHibernateLazyInitializer:{hibernateIniti..bernateProxy [MSG]The variable [proxy] in class org.codehaus.groovy.grails.web.converters.XMLConverterTests is not used |
JUnitPublicNonTestMethod | 2 | 106 | [SRC]void onSetUp() { [MSG]Violation in class XMLConverterTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitUnnecessarySetUp | 3 | 16 | [SRC]protected void setUp() { [MSG]Violation in class FilterToHandlerAdapterTests. The setUp() method contains no logic and can be removed |
UnnecessaryOverridingMethod | 3 | 16 | [SRC]protected void setUp() { [MSG]Violation in class FilterToHandlerAdapterTests. The method setUp contains no logic and can be safely deleted |
JUnitUnnecessaryTearDown | 3 | 20 | [SRC]protected void tearDown() { [MSG]Violation in class FilterToHandlerAdapterTests. The tearDown() method contains no logic and can be removed |
UnnecessaryOverridingMethod | 3 | 20 | [SRC]protected void tearDown() { [MSG]Violation in class FilterToHandlerAdapterTests. The method tearDown contains no logic and can be safely deleted |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 33 | [SRC]void tearDown() { [MSG]Violation in class DefaultUrlCreatorTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.Abstra..trollerTests [MSG]The [org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import org.springframework.mock.web.MockServletContext [MSG]The [org.springframework.mock.web.MockServletContext] import is never referenced |
UnnecessaryGetter | 3 | 72 | [SRC]assertEquals 'wrong controller name', 'someOther', info...rollerName() [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.DoubleWildcardUrlMappingTests. getControllerName() can probably be rewritten as controllerName |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.Abstra..trollerTests [MSG]The [org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import org.springframework.mock.web.MockServletContext [MSG]The [org.springframework.mock.web.MockServletContext] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 26 | [SRC]void onSetUp() { [MSG]Violation in class IdUrlMappingTests. The method onSetUp is public but not a test method |
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.Abstra..trollerTests [MSG]The [org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import org.springframework.mock.web.MockServletContext [MSG]The [org.springframework.mock.web.MockServletContext] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 357 | [SRC]void testInit() { [MSG]Violation in class RegexUrlMappingTests. Test method 'testInit' makes no assertions |
UnusedVariable | 2 | 359 | [SRC]def m = new RegexUrlMapping(parser.parse("/(*)/hello"), ..vletContext) [MSG]The variable [m] in class org.codehaus.groovy.grails.web.mapping.RegexUrlMappingTests is not used |
UnusedImport | 3 | 6 | [SRC]import org.springframework.mock.web.MockServletContext [MSG]The [org.springframework.mock.web.MockServletContext] import is never referenced |
UnnecessaryGetter | 3 | 72 | [SRC]assertEquals "/x/y", info.getURI() [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.RegexUrlMappingTests. getURI() can probably be rewritten as URI |
UnnecessaryDotClass | 3 | 308 | [SRC]def cp = new ConstrainedProperty(RegexUrlMappingTests.cl..tring.class) [MSG]RegexUrlMappingTests.class can be rewritten as RegexUrlMappingTests |
UnnecessaryDotClass | 3 | 308 | [SRC]def cp = new ConstrainedProperty(RegexUrlMappingTests.cl..tring.class) [MSG]String.class can be rewritten as String |
UnnecessaryDotClass | 3 | 325 | [SRC]def cp = new ConstrainedProperty(RegexUrlMappingTests.cl..tring.class) [MSG]RegexUrlMappingTests.class can be rewritten as RegexUrlMappingTests |
UnnecessaryDotClass | 3 | 325 | [SRC]def cp = new ConstrainedProperty(RegexUrlMappingTests.cl..tring.class) [MSG]String.class can be rewritten as String |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 6 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.Abstra..trollerTests [MSG]The [org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests] import is never referenced |
UnusedImport | 3 | 8 | [SRC]import org.springframework.mock.web.MockServletContext [MSG]The [org.springframework.mock.web.MockServletContext] import is never referenced |
UnnecessaryDefInFieldDeclaration | 3 | 22 | [SRC]def UrlMappingsHolder holder [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.ResponseCodeUrlMappingTests. The def keyword is unneeded when a field type is specified |
UnnecessaryGetter | 3 | 59 | [SRC]assertEquals("errors", info.getControllerName()); [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.ResponseCodeUrlMappingTests. getControllerName() can probably be rewritten as controllerName |
UnnecessaryGetter | 3 | 60 | [SRC]assertEquals("error404", info.getActionName()); [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.ResponseCodeUrlMappingTests. getActionName() can probably be rewritten as actionName |
UnnecessaryGetter | 3 | 66 | [SRC]assertEquals("errors", info.getControllerName()); [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.ResponseCodeUrlMappingTests. getControllerName() can probably be rewritten as controllerName |
UnnecessaryGetter | 3 | 67 | [SRC]assertEquals("error500", info.getActionName()); [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.ResponseCodeUrlMappingTests. getActionName() can probably be rewritten as actionName |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.validation.ConstrainedProperty; [MSG]The [org.codehaus.groovy.grails.validation.ConstrainedProperty] import is never referenced |
UnusedImport | 3 | 6 | [SRC]import org.springframework.mock.web.MockServletContext [MSG]The [org.springframework.mock.web.MockServletContext] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.Abstra..trollerTests [MSG]The [org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 11 | [SRC]void onSetUp() { [MSG]Violation in class ReverseMappingWithDefaultActionTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.Abstra..trollerTests [MSG]The [org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerTests] import is never referenced |
UnusedImport | 3 | 4 | [SRC]import org.springframework.core.io.ByteArrayResource [MSG]The [org.springframework.core.io.ByteArrayResource] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import org.springframework.mock.web.MockServletContext [MSG]The [org.springframework.mock.web.MockServletContext] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.validation.ConstrainedProperty; [MSG]The [org.codehaus.groovy.grails.validation.ConstrainedProperty] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryDefInFieldDeclaration | 3 | 21 | [SRC]def UrlMappingsHolder holder [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.UrlMappingWithCustomValidatorTests. The def keyword is unneeded when a field type is specified |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.validation.ConstrainedProperty; [MSG]The [org.codehaus.groovy.grails.validation.ConstrainedProperty] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryDefInFieldDeclaration | 3 | 20 | [SRC]def UrlMappingsHolder holder [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.ViewUrlMappingTests. The def keyword is unneeded when a field type is specified |
UnnecessaryGetter | 3 | 40 | [SRC]assertEquals "book.gsp", info.getViewName() [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.ViewUrlMappingTests. getViewName() can probably be rewritten as viewName |
UnnecessaryGetter | 3 | 47 | [SRC]assertEquals "book.gsp", info.getViewName() [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.ViewUrlMappingTests. getViewName() can probably be rewritten as viewName |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 7 | [SRC]import org.codehaus.groovy.grails.commons.ControllerArtefactHandler; [MSG]The [org.codehaus.groovy.grails.commons.ControllerArtefactHandler] import is never referenced |
UnusedImport | 3 | 8 | [SRC]import org.codehaus.groovy.grails.commons.DefaultGrailsApplication [MSG]The [org.codehaus.groovy.grails.commons.DefaultGrailsApplication] import is never referenced |
UnnecessaryGetter | 3 | 52 | [SRC]def mappings = evaluator.evaluateMappings(new ByteArrayR..getBytes())) [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.filter.RestfulMappingsFilterTests. getBytes() can probably be rewritten as bytes |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 13 | [SRC]protected void setUp() { [MSG]Violation in class AcceptHeaderParserTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 30 | [SRC]protected void tearDown() { [MSG]Violation in class AcceptHeaderParserTests. The method tearDown() does not call super.tearDown() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 15 | [SRC]assertEquals binding.getMetaClass(), binding.metaClass [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageBindingTests. getMetaClass() can probably be rewritten as metaClass |
UnnecessaryGetter | 3 | 26 | [SRC]assertEquals(shouldbe, binding.getVariables()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageBindingTests. getVariables() can probably be rewritten as variables |
UnnecessaryGetter | 3 | 28 | [SRC]for(e in binding.getVariables().entrySet()) { [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageBindingTests. getVariables() can probably be rewritten as variables |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 14 | [SRC]void testSpanningMultipleLines() { [MSG]Violation in class GroovyPageLineNumberTests. Test method 'testSpanningMultipleLines' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 8 | [SRC]void onSetUp() { [MSG]Violation in class GroovyPageMethodDispatchWithNamespaceTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 67 | [SRC]def runPageCode(pageCode) { [MSG]Violation in class GroovyPageTests. The method runPageCode is public but not a test method |
JUnitPublicNonTestMethod | 2 | 146 | [SRC]def getBinding(out) { [MSG]Violation in class GroovyPageTests. The method getBinding is public but not a test method |
UnnecessaryGetter | 3 | 157 | [SRC]binding.setVariable(GroovyPage.SESSION, request.getSession()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageTests. getSession() can probably be rewritten as session |
UnnecessaryObjectReferences | 3 | 160 | [SRC]binding.setVariable(GroovyPage.OUT, out) [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 188 | [SRC]def webRequest = GrailsWebUtil.bindMockWebRequest() [MSG]The variable [webRequest] in class org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngineTests is not used |
JUnitTearDownCallsSuper | 2 | 570 | [SRC]void tearDown() { [MSG]Violation in class GroovyPagesTemplateEngineTests. The method tearDown() does not call super.tearDown() |
JUnitSetUpCallsSuper | 2 | 574 | [SRC]void setUp() { [MSG]Violation in class GroovyPagesTemplateEngineTests. The method setUp() does not call super.setUp() |
UnusedImport | 3 | 8 | [SRC]import org.codehaus.groovy.grails.plugins.MockGrailsPluginManager; [MSG]The [org.codehaus.groovy.grails.plugins.MockGrailsPluginManager] import is never referenced |
UseAssertEqualsInsteadOfAssertTrue | 3 | 40 | [SRC]assertTrue(sw.toString().indexOf("should not be in the output") == -1) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngineTests. Replace assertTrue with a call to assertEquals() |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
ComparisonOfTwoConstants | 2 | 29 | [SRC]test="${2 > 1}">rejoice</g:if>""" [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
ComparisonOfTwoConstants | 2 | 36 | [SRC]<g:if test="${2 > 1}">rejoice</g:if> [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
ComparisonOfTwoConstants | 2 | 46 | [SRC]<g:if test="${2 > 1}">testing</g:if> [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
ComparisonOfTwoConstants | 2 | 59 | [SRC]<g:if test="${2 > 1}">testing</g:if> [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
ComparisonOfTwoConstants | 2 | 71 | [SRC]def template = """Hello <g:if test="${2 > 1}">one</g:if>..ee</g:if>""" [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
ComparisonOfTwoConstants | 2 | 71 | [SRC]def template = """Hello <g:if test="${2 > 1}">one</g:if>..ee</g:if>""" [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
ComparisonOfTwoConstants | 2 | 71 | [SRC]def template = """Hello <g:if test="${2 > 1}">one</g:if>..ee</g:if>""" [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
ComparisonOfTwoConstants | 2 | 77 | [SRC]def template = """Hello <g:if test="${2 > 1}">one</g:if> [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
ComparisonOfTwoConstants | 2 | 78 | [SRC]<g:if test="${2 > 1}">two</g:if> [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
ComparisonOfTwoConstants | 2 | 79 | [SRC]<g:if test="${2 > 1}">three</g:if>""" [MSG]Comparing two constants or constant literals is useless and may indicate a bug: (2 > 1) |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 5 | [SRC]import junit.framework.TestCase [MSG]The [junit.framework.TestCase] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 4 | [SRC]import org.codehaus.groovy.grails.commons.ConfigurationHolder [MSG]The [org.codehaus.groovy.grails.commons.ConfigurationHolder] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 22 | [SRC]void onTearDown() { [MSG]Violation in class TagLibNamespaceTests. The method onTearDown is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 22 | [SRC]def rootLoader = new RootLoader([] as URL[], Thread.curr..assLoader()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPageWithJSPTagsTests. getContextClassLoader() can probably be rewritten as contextClassLoader |
UnnecessaryGetter | 3 | 24 | [SRC]rootLoader.addURL res.getURL() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPageWithJSPTagsTests. getURL() can probably be rewritten as URL |
UnnecessaryGetter | 3 | 26 | [SRC]rootLoader.addURL it.getURL() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPageWithJSPTagsTests. getURL() can probably be rewritten as URL |
UnnecessaryGetter | 3 | 30 | [SRC]webRequest.getCurrentRequest().setAttribute(GroovyPagesS..esServlet()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPageWithJSPTagsTests. getCurrentRequest() can probably be rewritten as currentRequest |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 13 | [SRC]protected void setUp() { [MSG]Violation in class GroovyPagesPageContextTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 17 | [SRC]protected void tearDown() { [MSG]Violation in class GroovyPagesPageContextTests. The method tearDown() does not call super.tearDown() |
UnnecessaryGetter | 3 | 25 | [SRC]assert pageContext.getServletConfig() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesPageContextTests. getServletConfig() can probably be rewritten as servletConfig |
UnnecessaryGetter | 3 | 26 | [SRC]assert pageContext.getServletContext() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesPageContextTests. getServletContext() can probably be rewritten as servletContext |
UnnecessaryGetter | 3 | 27 | [SRC]assert pageContext.getRequest() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesPageContextTests. getRequest() can probably be rewritten as request |
UnnecessaryGetter | 3 | 28 | [SRC]assert pageContext.getResponse() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesPageContextTests. getResponse() can probably be rewritten as response |
UnnecessaryGetter | 3 | 29 | [SRC]assert pageContext.getPage() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesPageContextTests. getPage() can probably be rewritten as page |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 21 | [SRC]protected void setUp() { [MSG]Violation in class IterativeJspTagTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 26 | [SRC]protected void tearDown() { [MSG]Violation in class IterativeJspTagTests. The method tearDown() does not call super.tearDown() |
UnnecessaryGetter | 3 | 23 | [SRC]webRequest.getCurrentRequest().setAttribute(GroovyPagesS..esServlet()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.IterativeJspTagTests. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 34 | [SRC]def rootLoader = new RootLoader([] as URL[], Thread.curr..assLoader()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.IterativeJspTagTests. getContextClassLoader() can probably be rewritten as contextClassLoader |
UnnecessaryGetter | 3 | 36 | [SRC]rootLoader.addURL res.getURL() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.IterativeJspTagTests. getURL() can probably be rewritten as URL |
UnnecessaryGetter | 3 | 52 | [SRC]JstlUtils.exposeLocalizationContext webRequest.getRequest(),null [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.IterativeJspTagTests. getRequest() can probably be rewritten as request |
UnnecessaryGetter | 3 | 55 | [SRC]def pageContext = PageContextFactory.getCurrent() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.IterativeJspTagTests. getCurrent() can probably be rewritten as current |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 15 | [SRC]def rootLoader = new RootLoader([] as URL[], Thread.curr..assLoader()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.MockRootLoaderTagLibraryResolver. getContextClassLoader() can probably be rewritten as contextClassLoader |
UnnecessaryGetter | 3 | 17 | [SRC]rootLoader.addURL res.getURL() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.MockRootLoaderTagLibraryResolver. getURL() can probably be rewritten as URL |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 22 | [SRC]protected void setUp() { [MSG]Violation in class SimpleJspTagTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 27 | [SRC]protected void tearDown() { [MSG]Violation in class SimpleJspTagTests. The method tearDown() does not call super.tearDown() |
UnusedImport | 3 | 9 | [SRC]import org.springframework.core.io.FileSystemResource [MSG]The [org.springframework.core.io.FileSystemResource] import is never referenced |
UnnecessaryGetter | 3 | 24 | [SRC]webRequest.getCurrentRequest().setAttribute(GroovyPagesS..esServlet()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.SimpleJspTagTests. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 47 | [SRC]JstlUtils.exposeLocalizationContext webRequest.getRequest(),null [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.SimpleJspTagTests. getRequest() can probably be rewritten as request |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 21 | [SRC]protected void setUp() { [MSG]Violation in class SimpleTagTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 26 | [SRC]protected void tearDown() { [MSG]Violation in class SimpleTagTests. The method tearDown() does not call super.tearDown() |
UnnecessaryGetter | 3 | 23 | [SRC]webRequest.getCurrentRequest().setAttribute(GroovyPagesS..esServlet()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.SimpleTagTests. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 61 | [SRC]getJspContext().getOut().println("extendsSimpleTagSupport:output"); [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.ExtendsSimpleTagSupport. getOut() can probably be rewritten as out |
UnnecessaryGetter | 3 | 61 | [SRC]getJspContext().getOut().println("extendsSimpleTagSupport:output"); [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.ExtendsSimpleTagSupport. getJspContext() can probably be rewritten as jspContext |
UnnecessaryGetter | 3 | 68 | [SRC]JspWriter out = getJspContext().getOut() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.BodySimpleTagSupport. getOut() can probably be rewritten as out |
UnnecessaryGetter | 3 | 68 | [SRC]JspWriter out = getJspContext().getOut() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.BodySimpleTagSupport. getJspContext() can probably be rewritten as jspContext |
UnnecessaryGetter | 3 | 70 | [SRC]super.getJspBody().invoke(out) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.BodySimpleTagSupport. getJspBody() can probably be rewritten as jspBody |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 65 | [SRC]new RootLoader([] as URL[], Thread.currentThread().getCo..assLoader()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.MockWebXmlTagLibraryResolver. getContextClassLoader() can probably be rewritten as contextClassLoader |
UnnecessaryGetter | 3 | 72 | [SRC]new ByteArrayResource('''<?xml version="1.0" encoding="UTF-8"?> [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.MockWebXmlTagLibraryResolver. getInputStream() can probably be rewritten as inputStream |
UnnecessaryGetter | 3 | 72 | [SRC]new ByteArrayResource('''<?xml version="1.0" encoding="UTF-8"?> [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.MockWebXmlTagLibraryResolver. getBytes() can probably be rewritten as bytes |
UnnecessaryGetter | 3 | 118 | [SRC]new ByteArrayResource('''<?xml version="1.0" encoding="UTF-8"?> [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.MockWebXmlTagLibraryResolver. getBytes() can probably be rewritten as bytes |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 28 | [SRC]def is = new InputSource(res.getInputStream()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TldReaderTests. getInputStream() can probably be rewritten as inputStream |
UnnecessaryGetter | 3 | 33 | [SRC]def reader = factory.newSAXParser().getXMLReader() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TldReaderTests. getXMLReader() can probably be rewritten as XMLReader |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
ImportFromSamePackage | 3 | 20 | [SRC]import org.codehaus.groovy.grails.web.pages.ext.jsp.WebX..ibraryReader |
UnnecessaryGetter | 3 | 31 | [SRC]def reader = factory.newSAXParser().getXMLReader() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.WebXmlTagLibraryReaderTests. getXMLReader() can probably be rewritten as XMLReader |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTearDownCallsSuper | 2 | 45 | [SRC]void tearDown() { [MSG]Violation in class GroovyPageViewTests. The method tearDown() does not call super.tearDown() |
DuplicateImport | 3 | 7 | [SRC]import org.springframework.web.context.request.* |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 21 | [SRC]void onInitMockBeans() { [MSG]Violation in class ApplicationTagLibResourcesTests. The method onInitMockBeans is public but not a test method |
JUnitPublicNonTestMethod | 2 | 25 | [SRC]def replaceMetaClass(Object o) { [MSG]Violation in class ApplicationTagLibResourcesTests. The method replaceMetaClass is public but not a test method |
UnusedImport | 3 | 3 | [SRC]import grails.util.GrailsUtil [MSG]The [grails.util.GrailsUtil] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import javax.servlet.http.Cookie [MSG]The [javax.servlet.http.Cookie] import is never referenced |
UnusedImport | 3 | 7 | [SRC]import groovy.mock.interceptor.StubFor [MSG]The [groovy.mock.interceptor.StubFor] import is never referenced |
UnusedImport | 3 | 9 | [SRC]import org.codehaus.groovy.grails.commons.ConfigurationHolder [MSG]The [org.codehaus.groovy.grails.commons.ConfigurationHolder] import is never referenced |
UnusedImport | 3 | 11 | [SRC]import org.codehaus.groovy.grails.plugins.web.taglib.JavascriptTagLib; [MSG]The [org.codehaus.groovy.grails.plugins.web.taglib.JavascriptTagLib] import is never referenced |
UnusedImport | 3 | 12 | [SRC]import org.codehaus.groovy.grails.web.pages.GroovyPageBinding [MSG]The [org.codehaus.groovy.grails.web.pages.GroovyPageBinding] import is never referenced |
UnusedImport | 3 | 13 | [SRC]import org.codehaus.groovy.grails.web.servlet.GrailsAppl..onAttributes [MSG]The [org.codehaus.groovy.grails.web.servlet.GrailsApplicationAttributes] import is never referenced |
UnusedImport | 3 | 14 | [SRC]import org.codehaus.groovy.grails.web.taglib.exceptions...TagException [MSG]The [org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException] import is never referenced |
UnusedImport | 3 | 16 | [SRC]import org.codehaus.groovy.grails.commons.TagLibArtefactHandler [MSG]The [org.codehaus.groovy.grails.commons.TagLibArtefactHandler] import is never referenced |
UnusedImport | 3 | 17 | [SRC]import org.springframework.mock.web.MockHttpServletResponse [MSG]The [org.springframework.mock.web.MockHttpServletResponse] import is never referenced |
UnnecessaryDotClass | 3 | 40 | [SRC]def taglib = appCtx.getBean(ApplicationTagLib.class.name) [MSG]ApplicationTagLib.class can be rewritten as ApplicationTagLib |
UnnecessaryDotClass | 3 | 60 | [SRC]def taglib = appCtx.getBean(ApplicationTagLib.class.name) [MSG]ApplicationTagLib.class can be rewritten as ApplicationTagLib |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 7 | [SRC]import groovy.mock.interceptor.StubFor [MSG]The [groovy.mock.interceptor.StubFor] import is never referenced |
UnusedImport | 3 | 15 | [SRC]import org.codehaus.groovy.grails.commons.TagLibArtefactHandler [MSG]The [org.codehaus.groovy.grails.commons.TagLibArtefactHandler] import is never referenced |
UnnecessaryGetter | 3 | 23 | [SRC]assertOutputEquals "/test/plugins/controllers-${GrailsUt..g", template [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.ApplicationTagLibTests. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import grails.util.GrailsUtil [MSG]The [grails.util.GrailsUtil] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 88 | [SRC]void assertResultContains(result, expectedSubstring) { [MSG]Violation in class CountryTagLibTests. The method assertResultContains is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 26 | [SRC]void assertOutputEquals(expected, template, params = [:]) { [MSG]Violation in class FormRenderingTagLibTests. The method assertOutputEquals is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateField | 2 | 16 | [SRC]private static final def SELECT_TAG_NAME = "testSelect" [MSG]The field SELECT_TAG_NAME is not used within the class org.codehaus.groovy.grails.web.taglib.FormTagLib2Tests |
JUnitTestMethodWithoutAssert | 2 | 23 | [SRC]void testDatePickerTagWithDefaultDateAndPrecision() { [MSG]Violation in class FormTagLib2Tests. Test method 'testDatePickerTagWithDefaultDateAndPrecision' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 27 | [SRC]void testDatePickerTagWithYearPrecision() { [MSG]Violation in class FormTagLib2Tests. Test method 'testDatePickerTagWithYearPrecision' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 31 | [SRC]void testDatePickerTagWithMonthPrecision() { [MSG]Violation in class FormTagLib2Tests. Test method 'testDatePickerTagWithMonthPrecision' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 35 | [SRC]void testDatePickerTagWithDayPrecision() { [MSG]Violation in class FormTagLib2Tests. Test method 'testDatePickerTagWithDayPrecision' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 39 | [SRC]void testDatePickerTagWithHourPrecision() { [MSG]Violation in class FormTagLib2Tests. Test method 'testDatePickerTagWithHourPrecision' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 43 | [SRC]void testDatePickerTagWithMinutePrecision() { [MSG]Violation in class FormTagLib2Tests. Test method 'testDatePickerTagWithMinutePrecision' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 47 | [SRC]void testDatePickerTagWithCustomDate() { [MSG]Violation in class FormTagLib2Tests. Test method 'testDatePickerTagWithCustomDate' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 74 | [SRC]void testDatePickerTagWithCustomDateAndPrecision() { [MSG]Violation in class FormTagLib2Tests. Test method 'testDatePickerTagWithCustomDateAndPrecision' makes no assertions |
UnusedVariable | 2 | 121 | [SRC]String xp [MSG]The variable [xp] in class org.codehaus.groovy.grails.web.taglib.FormTagLib2Tests is not used |
UnusedPrivateMethod | 2 | 230 | [SRC]private void assertSelectFieldPresentWithValue(Document ..ing value) { [MSG]The method assertSelectFieldPresentWithValue is not used within FormTagLib2Tests.groovy |
UnusedPrivateMethod | 2 | 236 | [SRC]private void assertSelectFieldPresentWithValueAndText(Do..ing label) { [MSG]The method assertSelectFieldPresentWithValueAndText is not used within FormTagLib2Tests.groovy |
UnusedPrivateMethod | 2 | 248 | [SRC]private void assertSelectPresent(Document document, Stri..fieldName) { [MSG]The method assertSelectPresent is not used within FormTagLib2Tests.groovy |
UnnecessaryDefInFieldDeclaration | 3 | 16 | [SRC]private static final def SELECT_TAG_NAME = "testSelect" [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormTagLib2Tests. The def keyword is unneeded when a field is marked private |
UnnecessaryGetter | 3 | 52 | [SRC]def defaultDate = Calendar.getInstance() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormTagLib2Tests. getInstance() can probably be rewritten as instance |
UnnecessaryGetter | 3 | 54 | [SRC]Document document = getDatePickerOutput(null, 'day', def..e.getTime()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormTagLib2Tests. getTime() can probably be rewritten as time |
UnnecessaryGetter | 3 | 69 | [SRC]DateFormat defaultFormat = DateFormat.getInstance() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormTagLib2Tests. getInstance() can probably be rewritten as instance |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateField | 2 | 17 | [SRC]private static final String DATE_PICKER_TAG_NAME = "testDatePicker" [MSG]The field DATE_PICKER_TAG_NAME is not used within the class org.codehaus.groovy.grails.web.taglib.FormTagLib3Tests |
UnusedPrivateField | 2 | 19 | [SRC]private static final Collection DATE_PRECISIONS_INCLUDIN..s String[])) [MSG]The field DATE_PRECISIONS_INCLUDING_MINUTE is not used within the class org.codehaus.groovy.grails.web.taglib.FormTagLib3Tests |
UnusedPrivateField | 2 | 20 | [SRC]private static final Collection DATE_PRECISIONS_INCLUDIN..s String[])) [MSG]The field DATE_PRECISIONS_INCLUDING_HOUR is not used within the class org.codehaus.groovy.grails.web.taglib.FormTagLib3Tests |
UnusedPrivateField | 2 | 21 | [SRC]private static final Collection DATE_PRECISIONS_INCLUDIN..s String[])) [MSG]The field DATE_PRECISIONS_INCLUDING_DAY is not used within the class org.codehaus.groovy.grails.web.taglib.FormTagLib3Tests |
UnusedPrivateField | 2 | 22 | [SRC]private static final Collection DATE_PRECISIONS_INCLUDIN..s String[])) [MSG]The field DATE_PRECISIONS_INCLUDING_MONTH is not used within the class org.codehaus.groovy.grails.web.taglib.FormTagLib3Tests |
UnnecessaryGetter | 3 | 207 | [SRC]final Element inputElement = document.getDocumentElement() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormTagLib3Tests. getDocumentElement() can probably be rewritten as documentElement |
UnnecessaryGetter | 3 | 233 | [SRC]final Element inputElement = document.getDocumentElement() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormTagLib3Tests. getDocumentElement() can probably be rewritten as documentElement |
UnnecessaryGetter | 3 | 262 | [SRC]final Element inputElement = document.getDocumentElement() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormTagLib3Tests. getDocumentElement() can probably be rewritten as documentElement |
UnnecessaryGetter | 3 | 288 | [SRC]final Element inputElement = document.getDocumentElement() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormTagLib3Tests. getDocumentElement() can probably be rewritten as documentElement |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 234 | [SRC]void testBooleanAttributes() { [MSG]Violation in class FormTagLibTests. Test method 'testBooleanAttributes' makes no assertions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 32 | [SRC]assertOutputEquals("1980-02-03", template, [date:calender.getTime()]) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormatTagLibTests. getTime() can probably be rewritten as time |
UnnecessaryGetter | 3 | 38 | [SRC]assertOutputEquals("February 3, 1980", template, [date:c...getTime()]) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormatTagLibTests. getTime() can probably be rewritten as time |
UnnecessaryGetter | 3 | 44 | [SRC]assertOutputEquals("February 3, 1980 12:00 AM", template...getTime()]) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormatTagLibTests. getTime() can probably be rewritten as time |
UnnecessaryGetter | 3 | 79 | [SRC]assertOutputEquals("1980-02-03", template, [date:calender.getTime()]) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.FormatTagLibTests. getTime() can probably be rewritten as time |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.grails.web.taglib.exceptions...TagException [MSG]The [org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException] import is never referenced |
UnnecessaryGetter | 3 | 21 | [SRC]assertEquals("for( "+tag.getForeachRenamedIt()+" in test...toString()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.GroovyEachTagTests. getForeachRenamedIt() can probably be rewritten as foreachRenamedIt |
UnnecessaryGetter | 3 | 21 | [SRC]assertEquals("for( "+tag.getForeachRenamedIt()+" in test...toString()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.GroovyEachTagTests. getForeachRenamedIt() can probably be rewritten as foreachRenamedIt |
UnnecessaryGetter | 3 | 37 | [SRC]assertEquals("for( "+tag.getForeachRenamedIt()+" in test...toString()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.GroovyEachTagTests. getForeachRenamedIt() can probably be rewritten as foreachRenamedIt |
UnnecessaryGetter | 3 | 37 | [SRC]assertEquals("for( "+tag.getForeachRenamedIt()+" in test...toString()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.GroovyEachTagTests. getForeachRenamedIt() can probably be rewritten as foreachRenamedIt |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGroovyImport | 3 | 3 | [SRC]import java.io.ByteArrayInputStream |
UnnecessaryGroovyImport | 3 | 4 | [SRC]import java.io.PrintWriter |
UnnecessaryGroovyImport | 3 | 5 | [SRC]import java.util.HashMap |
UnnecessaryGroovyImport | 3 | 6 | [SRC]import java.util.Map |
UnnecessaryDotClass | 3 | 25 | [SRC]context.put(GroovyPageParser.class, parser); [MSG]GroovyPageParser.class can be rewritten as GroovyPageParser |
UnnecessaryGetter | 3 | 55 | [SRC]assertEquals("for( "+tag.getForeachRenamedIt()+" in eval...toString()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.GroovyFindAllTagTests. getForeachRenamedIt() can probably be rewritten as foreachRenamedIt |
UnnecessaryGetter | 3 | 55 | [SRC]assertEquals("for( "+tag.getForeachRenamedIt()+" in eval...toString()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.GroovyFindAllTagTests. getForeachRenamedIt() can probably be rewritten as foreachRenamedIt |
UnnecessaryGetter | 3 | 64 | [SRC]assertEquals("findAll", tag.getName()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.GroovyFindAllTagTests. getName() can probably be rewritten as name |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 15 | [SRC]catch(Exception e) { [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 23 | [SRC]assertEquals("for( "+tag.getForeachRenamedIt()+" in test...toString()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.GroovyGrepTagTests. getForeachRenamedIt() can probably be rewritten as foreachRenamedIt |
UnnecessaryGetter | 3 | 23 | [SRC]assertEquals("for( "+tag.getForeachRenamedIt()+" in test...toString()) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.GroovyGrepTagTests. getForeachRenamedIt() can probably be rewritten as foreachRenamedIt |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 56 | [SRC]void doEndTag() {} [MSG]Violation in class MyGroovySyntaxTag. The method doEndTag is both empty and not marked with @Override |
EmptyMethod | 2 | 58 | [SRC]void doStartTag() {} [MSG]Violation in class MyGroovySyntaxTag. The method doStartTag is both empty and not marked with @Override |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 5 | [SRC]void onSetUp() { [MSG]Violation in class InvokeTagLibAsMethodTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 7 | [SRC]def replaceMetaClass(o) { [MSG]Violation in class JavascriptTagLibResourcesTests. The method replaceMetaClass is public but not a test method |
JUnitPublicNonTestMethod | 2 | 18 | [SRC]void onInitMockBeans() { [MSG]Violation in class JavascriptTagLibResourcesTests. The method onInitMockBeans is public but not a test method |
UnusedVariable | 2 | 72 | [SRC]def result = applyTemplate(template, [:]) [MSG]The variable [result] in class org.codehaus.groovy.grails.web.taglib.JavascriptTagLibResourcesTests is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 46 | [SRC]String newLine = EOL [MSG]The variable [newLine] in class org.codehaus.groovy.grails.web.taglib.JavascriptTagLibTests is not used |
JUnitPublicNonTestMethod | 2 | 93 | [SRC]def replaceMetaClass(Object o) { [MSG]Violation in class JavascriptTagLibTests. The method replaceMetaClass is public but not a test method |
JUnitPublicNonTestMethod | 2 | 287 | [SRC]def setRequestContext() { [MSG]Violation in class JavascriptTagLibTests. The method setRequestContext is public but not a test method |
JUnitPublicNonTestMethod | 2 | 291 | [SRC]def setRequestContext(path) { [MSG]Violation in class JavascriptTagLibTests. The method setRequestContext is public but not a test method |
JUnitPublicNonTestMethod | 2 | 295 | [SRC]def setupPluginController(tag) { [MSG]Violation in class JavascriptTagLibTests. The method setupPluginController is public but not a test method |
UnusedMethodParameter | 2 | 295 | [SRC]def setupPluginController(tag) { [MSG]Violation in class JavascriptTagLibTests. Method parameter [tag] is never referenced in the method setupPluginController of class org.codehaus.groovy.grails.web.taglib.JavascriptTagLibTests |
UnusedMethodParameter | 2 | 312 | [SRC]def doRemoteFunction(Object taglib, Object attrs, Object out) { [MSG]Violation in class TestProvider. Method parameter [taglib] is never referenced in the method doRemoteFunction of class org.codehaus.groovy.grails.web.taglib.TestProvider |
UnusedMethodParameter | 2 | 312 | [SRC]def doRemoteFunction(Object taglib, Object attrs, Object out) { [MSG]Violation in class TestProvider. Method parameter [attrs] is never referenced in the method doRemoteFunction of class org.codehaus.groovy.grails.web.taglib.TestProvider |
EmptyMethod | 2 | 316 | [SRC]def prepareAjaxForm(Object attrs) {} [MSG]Violation in class TestProvider. The method prepareAjaxForm is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 316 | [SRC]def prepareAjaxForm(Object attrs) {} [MSG]Violation in class TestProvider. Method parameter [attrs] is never referenced in the method prepareAjaxForm of class org.codehaus.groovy.grails.web.taglib.TestProvider |
UnusedImport | 3 | 13 | [SRC]import org.codehaus.groovy.grails.commons.TagLibArtefactHandler [MSG]The [org.codehaus.groovy.grails.commons.TagLibArtefactHandler] import is never referenced |
UnnecessaryGetter | 3 | 52 | [SRC]def grailsVersion = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.JavascriptTagLibTests. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 45 | [SRC]void assertEqualsIgnoreWhiteSpace(String s1, String s2) { [MSG]Violation in class LayoutWriterStackTests. The method assertEqualsIgnoreWhiteSpace is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 38 | [SRC]void assertOutputEquals(expected, template, params = [:]) { [MSG]Violation in class LinkRenderingTagLib2Tests. The method assertOutputEquals is public but not a test method |
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.runtime.InvokerHelper [MSG]The [org.codehaus.groovy.runtime.InvokerHelper] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
DuplicateMapKey | 2 | 46 | [SRC]assertOutputEquals '<a href="/demo" class="B">demo</a>',..'7', x: '4'] [MSG]Key 'x' is duplicated. |
UnusedImport | 3 | 3 | [SRC]import org.codehaus.groovy.runtime.InvokerHelper [MSG]The [org.codehaus.groovy.runtime.InvokerHelper] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 4 | [SRC]import org.springframework.validation.MapBindingResult [MSG]The [org.springframework.validation.MapBindingResult] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 13 | [SRC]def grailsVersion = GrailsUtil.getGrailsVersion() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.PluginTagLibTests. getGrailsVersion() can probably be rewritten as grailsVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryCollectCall | 3 | 84 | [SRC]assertEquals(["grails", "groovy"], obj.tags.collect {it.name}) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.PropertyEditorTests. The call to collect could probably be rewritten as a spread expression: obj.tags*.name |
UnnecessaryGetter | 3 | 119 | [SRC]Object v = getValue() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.TestCustomPropertyEditor. getValue() can probably be rewritten as value |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 41 | [SRC]void testPaginateTag() { [MSG]Violation in class RenderTagLibTests. Test method 'testPaginateTag' makes no assertions |
UnusedVariable | 2 | 103 | [SRC]def head = "" [MSG]The variable [head] in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests is not used |
JUnitTestMethodWithoutAssert | 2 | 205 | [SRC]void testSortableColumnTag() { [MSG]Violation in class RenderTagLibTests. Test method 'testSortableColumnTag' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 219 | [SRC]void testSortableColumnTagWithTitleKey() { [MSG]Violation in class RenderTagLibTests. Test method 'testSortableColumnTagWithTitleKey' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 265 | [SRC]void testSortableColumnTagWithAction() { [MSG]Violation in class RenderTagLibTests. Test method 'testSortableColumnTagWithAction' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 279 | [SRC]void testSortableColumnTagWithDefaultOrder() { [MSG]Violation in class RenderTagLibTests. Test method 'testSortableColumnTagWithDefaultOrder' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 323 | [SRC]void testSortableColumnTagWithAdditionalAttributes() { [MSG]Violation in class RenderTagLibTests. Test method 'testSortableColumnTagWithAdditionalAttributes' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 338 | [SRC]void testSortableColumnTagSorted() { [MSG]Violation in class RenderTagLibTests. Test method 'testSortableColumnTagSorted' makes no assertions |
JUnitPublicNonTestMethod | 2 | 422 | [SRC]void checkTagOutput(output, expectedClassValue, expected..edContent) { [MSG]Violation in class RenderTagLibTests. The method checkTagOutput is public but not a test method |
JUnitPublicNonTestMethod | 2 | 463 | [SRC]void checkTagOutput(output, expectedClassValue, expected..therAttrs) { [MSG]Violation in class RenderTagLibTests. The method checkTagOutput is public but not a test method |
UnnecessaryGetter | 3 | 347 | [SRC]webRequest.getParams().put("sort", "title") [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getParams() can probably be rewritten as params |
UnnecessaryGetter | 3 | 348 | [SRC]webRequest.getParams().put("order", "asc") [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getParams() can probably be rewritten as params |
UnnecessaryGetter | 3 | 364 | [SRC]webRequest.getParams().put("sort", "title") [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getParams() can probably be rewritten as params |
UnnecessaryGetter | 3 | 365 | [SRC]webRequest.getParams().put("order", "desc") [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getParams() can probably be rewritten as params |
UnnecessaryGetter | 3 | 381 | [SRC]webRequest.getParams().put("sort", "price") [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getParams() can probably be rewritten as params |
UnnecessaryGetter | 3 | 382 | [SRC]webRequest.getParams().put("order", "desc") [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getParams() can probably be rewritten as params |
UnnecessaryGetter | 3 | 398 | [SRC]webRequest.getParams().put("sort", "price") [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getParams() can probably be rewritten as params |
UnnecessaryGetter | 3 | 399 | [SRC]webRequest.getParams().put("order", "desc") [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getParams() can probably be rewritten as params |
UnnecessaryGetter | 3 | 553 | [SRC]assertEquals 'my/contenttype', response.getContentType() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getContentType() can probably be rewritten as contentType |
UseAssertNullInsteadOfAssertEquals | 3 | 557 | [SRC]assertEquals null, response.getContentType() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. assertEquals can be simplified using assertNull |
UnnecessaryGetter | 3 | 557 | [SRC]assertEquals null, response.getContentType() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getContentType() can probably be rewritten as contentType |
UnnecessaryGetter | 3 | 560 | [SRC]assertEquals 'my/contenttype', response.getContentType() [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.RenderTagLibTests. getContentType() can probably be rewritten as contentType |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 4 | [SRC]void onSetUp() { [MSG]Violation in class ReturnValueTagLibTests. The method onSetUp is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitTestMethodWithoutAssert | 2 | 255 | [SRC]void testMultipleSelect() { [MSG]Violation in class SelectTagTests. Test method 'testMultipleSelect' makes no assertions |
JUnitTestMethodWithoutAssert | 2 | 267 | [SRC]void testMultipleSelectWithObjectValues() { [MSG]Violation in class SelectTagTests. Test method 'testMultipleSelectWithObjectValues' makes no assertions |
JUnitPublicNonTestMethod | 2 | 281 | [SRC]void checkMultiSelect(List categories, List selected, Cl..sSelected) { [MSG]Violation in class SelectTagTests. The method checkMultiSelect is public but not a test method |
UnusedPrivateMethod | 2 | 370 | [SRC]private void assertSelectFieldNotPresent(Document docume..fieldName) { [MSG]The method assertSelectFieldNotPresent is not used within SelectTagTests.groovy |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 136 | [SRC]range.each() { [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.SelectTagTests. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 154 | [SRC]range.each() { [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.SelectTagTests. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 201 | [SRC]range.each() { [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.SelectTagTests. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 227 | [SRC]categoryMap.each() { value, text -> [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.SelectTagTests. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 233 | [SRC]categoryMap.each() { value, text -> [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.SelectTagTests. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 250 | [SRC]categoryMap.each() { value, text -> [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.SelectTagTests. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 306 | [SRC]categories.each() { cat -> [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.SelectTagTests. Parentheses in the 'each' method call are unnecessary and can be removed. |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryObjectReferences | 3 | 214 | [SRC]b.publisherURL = new URL("http://canoo.com/gia") [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 215 | [SRC]b.releaseDate = new Date() [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 216 | [SRC]b.usPrice = 10.99 [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 87 | [SRC]Closure getFlowClosure() { [MSG]Violation in class FlowCommandObjectsTests. The method getFlowClosure is public but not a test method |
UnusedImport | 3 | 4 | [SRC]import org.springframework.webflow.definition.FlowDefinition [MSG]The [org.springframework.webflow.definition.FlowDefinition] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder [MSG]The [org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder] import is never referenced |
UnusedImport | 3 | 6 | [SRC]import org.springframework.webflow.context.servlet.Servl..ernalContext [MSG]The [org.springframework.webflow.context.servlet.ServletExternalContext] import is never referenced |
UnnecessaryGetter | 3 | 23 | [SRC]def model = getFlowScope() [MSG]Violation in class org.codehaus.groovy.grails.webflow.FlowCommandObjectsTests. getFlowScope() can probably be rewritten as flowScope |
UnnecessaryGetter | 3 | 51 | [SRC]def model = getFlowScope() [MSG]Violation in class org.codehaus.groovy.grails.webflow.FlowCommandObjectsTests. getFlowScope() can probably be rewritten as flowScope |
UnnecessaryGetter | 3 | 74 | [SRC]def model = getFlowScope() [MSG]Violation in class org.codehaus.groovy.grails.webflow.FlowCommandObjectsTests. getFlowScope() can probably be rewritten as flowScope |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 52 | [SRC]Closure getFlowClosure() { [MSG]Violation in class FlowRedirectTests. The method getFlowClosure is public but not a test method |
UnusedImport | 3 | 10 | [SRC]import org.springframework.webflow.definition.FlowDefinition [MSG]The [org.springframework.webflow.definition.FlowDefinition] import is never referenced |
UnnecessaryGetter | 3 | 23 | [SRC]assertEquals "contextRelative:/test/foo",context.getExte..edirectUrl() [MSG]Violation in class org.codehaus.groovy.grails.webflow.FlowRedirectTests. getExternalRedirectUrl() can probably be rewritten as externalRedirectUrl |
UnnecessaryGetter | 3 | 32 | [SRC]assertEquals "contextRelative:/test/foo/1",context.getEx..edirectUrl() [MSG]Violation in class org.codehaus.groovy.grails.webflow.FlowRedirectTests. getExternalRedirectUrl() can probably be rewritten as externalRedirectUrl |
UnnecessaryGetter | 3 | 44 | [SRC]assertEquals "contextRelative:/mycontroller/foo",context..edirectUrl() [MSG]Violation in class org.codehaus.groovy.grails.webflow.FlowRedirectTests. getExternalRedirectUrl() can probably be rewritten as externalRedirectUrl |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 33 | [SRC]void onInit() { [MSG]Violation in class FlowTagInvokationTests. The method onInit is public but not a test method |
JUnitPublicNonTestMethod | 2 | 42 | [SRC]Closure getFlowClosure() { [MSG]Violation in class FlowTagInvokationTests. The method getFlowClosure is public but not a test method |
UnusedImport | 3 | 4 | [SRC]import org.springframework.webflow.definition.FlowDefinition [MSG]The [org.springframework.webflow.definition.FlowDefinition] import is never referenced |
UnusedImport | 3 | 5 | [SRC]import org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder [MSG]The [org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder] import is never referenced |
UnnecessaryGetter | 3 | 20 | [SRC]def model = getFlowScope() [MSG]Violation in class org.codehaus.groovy.grails.webflow.FlowTagInvokationTests. getFlowScope() can probably be rewritten as flowScope |
UnnecessaryGetter | 3 | 29 | [SRC]def model = getFlowScope() [MSG]Violation in class org.codehaus.groovy.grails.webflow.FlowTagInvokationTests. getFlowScope() can probably be rewritten as flowScope |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 29 | [SRC]Closure getFlowClosure() { [MSG]Violation in class SubflowExecutionTests. The method getFlowClosure is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 21 | [SRC]Closure getFlowClosure() { [MSG]Violation in class SubflowExecutionWithExternalSubflowTests. The method getFlowClosure is public but not a test method |
UnusedImport | 3 | 3 | [SRC]import junit.framework.TestCase [MSG]The [junit.framework.TestCase] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 10 | [SRC]Closure getFlowClosure() { [MSG]Violation in class FlowBuilderDecisionExecutionTests. The method getFlowClosure is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 33 | [SRC]String getFlowId() { "myFlow" } [MSG]Violation in class FlowBuilderDynamicTransitionTests. The method getFlowId is public but not a test method |
JUnitPublicNonTestMethod | 2 | 35 | [SRC]Closure getFlowClosure() { [MSG]Violation in class FlowBuilderDynamicTransitionTests. The method getFlowClosure is public but not a test method |
UnnecessaryGetter | 3 | 12 | [SRC]def startState = flowDefinition.getStartState() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilderDynamicTransitionTests. getStartState() can probably be rewritten as startState |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 10 | [SRC]Closure getFlowClosure() { [MSG]Violation in class FlowBuilderExecutionTests. The method getFlowClosure is public but not a test method |
UnnecessaryGetter | 3 | 41 | [SRC]def model = getFlowScope() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilderExecutionTests. getFlowScope() can probably be rewritten as flowScope |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 29 | [SRC]Closure getFlowClosure() { [MSG]Violation in class FlowBuilderSubFlowExecutionTests. The method getFlowClosure is public but not a test method |
JUnitPublicNonTestMethod | 2 | 59 | [SRC]def foo() { "bar" } [MSG]Violation in class FlowBuilderSubFlowExecutionTests. The method foo is public but not a test method |
UnnecessaryGetter | 3 | 73 | [SRC]def theFlow = getFlowDefinition() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilderSubFlowExecutionTests. getFlowDefinition() can probably be rewritten as flowDefinition |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 47 | [SRC]Closure getFlowClosure() { [MSG]Violation in class FlowBuilderSubFlowExecutionWithInputOuputTests. The method getFlowClosure is public but not a test method |
UnusedVariable | 2 | 89 | [SRC]GrailsWebRequest webrequest = grails.util.GrailsWebUtil...WebRequest() [MSG]The variable [webrequest] in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilderSubFlowExecutionWithInputOuputTests is not used |
EmptyCatchBlock | 2 | 124 | [SRC]catch (FlowInputMappingException e) {} [MSG]The catch block is empty |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 16 | [SRC]void setUp() { [MSG]Violation in class FlowBuilderTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 26 | [SRC]void tearDown() { [MSG]Violation in class FlowBuilderTests. The method tearDown() does not call super.tearDown() |
UnnecessaryGetter | 3 | 23 | [SRC]flowBuilderServices.expressionParser = DefaultExpression..sionParser() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilderTests. getExpressionParser() can probably be rewritten as expressionParser |
UnnecessaryGetter | 3 | 154 | [SRC]def flow = new FlowBuilder("myFlow",getFlowBuilderServic..pl()).flow { [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilderTests. getFlowBuilderServices() can probably be rewritten as flowBuilderServices |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 7 | [SRC]Closure getFlowClosure() { [MSG]Violation in class FlowBuilderTransitionCriteriaTests. The method getFlowClosure is public but not a test method |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 27 | [SRC]context.getFlowScope().put("id", "1") [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.RuntimeRedirectActionTests. getFlowScope() can probably be rewritten as flowScope |
UnnecessaryGetter | 3 | 29 | [SRC]assert "contextRelative:/book/show/1" == ext.getExternalRedirectUrl() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.RuntimeRedirectActionTests. getExternalRedirectUrl() can probably be rewritten as externalRedirectUrl |
UnnecessaryGetter | 3 | 31 | [SRC]context.getFlowScope().put("id", "2") [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.RuntimeRedirectActionTests. getFlowScope() can probably be rewritten as flowScope |
UnnecessaryGetter | 3 | 33 | [SRC]assert "contextRelative:/book/show/2" == ext.getExternalRedirectUrl() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.RuntimeRedirectActionTests. getExternalRedirectUrl() can probably be rewritten as externalRedirectUrl |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitSetUpCallsSuper | 2 | 64 | [SRC]final void setUp() throws Exception { [MSG]Violation in class AbstractGrailsTagAwareFlowExecutionTests. The method setUp() does not call super.setUp() |
JUnitTearDownCallsSuper | 2 | 138 | [SRC]final void tearDown() { [MSG]Violation in class AbstractGrailsTagAwareFlowExecutionTests. The method tearDown() does not call super.tearDown() |
JUnitPublicNonTestMethod | 2 | 158 | [SRC]FlowDefinition registerFlow(String flowId, Closure flowClosure) { [MSG]Violation in class AbstractGrailsTagAwareFlowExecutionTests. The method registerFlow is public but not a test method |
JUnitPublicNonTestMethod | 2 | 167 | [SRC]FlowDefinition getFlowDefinition() { [MSG]Violation in class AbstractGrailsTagAwareFlowExecutionTests. The method getFlowDefinition is public but not a test method |
JUnitPublicNonTestMethod | 2 | 175 | [SRC]String getFlowId() { 'testFlow' } [MSG]Violation in class AbstractGrailsTagAwareFlowExecutionTests. The method getFlowId is public but not a test method |
JUnitPublicNonTestMethod | 2 | 177 | [SRC]abstract Closure getFlowClosure() [MSG]Violation in class AbstractGrailsTagAwareFlowExecutionTests. The method getFlowClosure is public but not a test method |
UnusedImport | 3 | 15 | [SRC]import org.codehaus.groovy.runtime.InvokerHelper [MSG]The [org.codehaus.groovy.runtime.InvokerHelper] import is never referenced |
UnusedImport | 3 | 40 | [SRC]import org.springframework.webflow.definition.registry.F..itionLocator [MSG]The [org.springframework.webflow.definition.registry.FlowDefinitionLocator] import is never referenced |
UnnecessaryGetter | 3 | 111 | [SRC]appCtx = springConfig.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.webflow.support.AbstractGrailsTagAwareFlowExecutionTests. getApplicationContext() can probably be rewritten as applicationContext |
UnnecessaryGetter | 3 | 120 | [SRC]flowBuilderServices.expressionParser = DefaultExpression..sionParser() [MSG]Violation in class org.codehaus.groovy.grails.webflow.support.AbstractGrailsTagAwareFlowExecutionTests. getExpressionParser() can probably be rewritten as expressionParser |
UnnecessaryGetter | 3 | 159 | [SRC]FlowBuilder builder = new FlowBuilder(flowId, flowClosur..nRegistry()) [MSG]Violation in class org.codehaus.groovy.grails.webflow.support.AbstractGrailsTagAwareFlowExecutionTests. getFlowDefinitionRegistry() can probably be rewritten as flowDefinitionRegistry |
UnnecessaryGetter | 3 | 162 | [SRC]FlowAssembler assembler = new FlowAssembler(builder, bui..erContext()) [MSG]Violation in class org.codehaus.groovy.grails.webflow.support.AbstractGrailsTagAwareFlowExecutionTests. getFlowBuilderContext() can probably be rewritten as flowBuilderContext |
UnnecessaryGetter | 3 | 163 | [SRC]getFlowDefinitionRegistry().registerFlowDefinition(new D..(assembler)) [MSG]Violation in class org.codehaus.groovy.grails.webflow.support.AbstractGrailsTagAwareFlowExecutionTests. getFlowDefinitionRegistry() can probably be rewritten as flowDefinitionRegistry |
UnnecessaryGetter | 3 | 164 | [SRC]return getFlowDefinitionRegistry().getFlowDefinition(flowId) [MSG]Violation in class org.codehaus.groovy.grails.webflow.support.AbstractGrailsTagAwareFlowExecutionTests. getFlowDefinitionRegistry() can probably be rewritten as flowDefinitionRegistry |
UnnecessaryGetter | 3 | 168 | [SRC]return registerFlow(getFlowId(), getFlowClosure()) [MSG]Violation in class org.codehaus.groovy.grails.webflow.support.AbstractGrailsTagAwareFlowExecutionTests. getFlowId() can probably be rewritten as flowId |
UnnecessaryGetter | 3 | 168 | [SRC]return registerFlow(getFlowId(), getFlowClosure()) [MSG]Violation in class org.codehaus.groovy.grails.webflow.support.AbstractGrailsTagAwareFlowExecutionTests. getFlowClosure() can probably be rewritten as flowClosure |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 140 | [SRC]def methods = demand.mockMetaClass.getMetaMethods() [MSG]Violation in class grails.test.GrailsMock. getMetaMethods() can probably be rewritten as metaMethods |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 43 | [SRC]HttpServletRequest request = GrailsWebRequest.lookup().g..entRequest() [MSG]Violation in class org.codehaus.groovy.grails.plugins.testing.AbstractGrailsMockHttpServletResponse. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 89 | [SRC]webRequest.setOut(getWriter()) [MSG]Violation in class org.codehaus.groovy.grails.plugins.testing.AbstractGrailsMockHttpServletResponse. getWriter() can probably be rewritten as writer |
UnnecessaryGetter | 3 | 94 | [SRC]getRedirectedUrl() [MSG]Violation in class org.codehaus.groovy.grails.plugins.testing.AbstractGrailsMockHttpServletResponse. getRedirectedUrl() can probably be rewritten as redirectedUrl |
UnnecessaryGetter | 3 | 106 | [SRC]if (getStatus() in [301, 302]) { [MSG]Violation in class org.codehaus.groovy.grails.plugins.testing.AbstractGrailsMockHttpServletResponse. getStatus() can probably be rewritten as status |
UnnecessaryGetter | 3 | 110 | [SRC]return super.getRedirectedUrl() [MSG]Violation in class org.codehaus.groovy.grails.plugins.testing.AbstractGrailsMockHttpServletResponse. getRedirectedUrl() can probably be rewritten as redirectedUrl |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 18 | [SRC]import org.codehaus.groovy.grails.commons.GrailsClassUtils [MSG]The [org.codehaus.groovy.grails.commons.GrailsClassUtils] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 455 | [SRC]void delete() { [MSG]Violation in class MockPart. The method delete is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 497 | [SRC]void dispatch(javax.servlet.ServletContext context, String path) { [MSG]Violation in class MockAsyncContext. Method parameter [context] is never referenced in the method dispatch of class org.codehaus.groovy.grails.plugins.testing.MockAsyncContext |
EmptyMethod | 2 | 501 | [SRC]void complete() { [MSG]Violation in class MockAsyncContext. The method complete is both empty and not marked with @Override |
UnusedImport | 3 | 34 | [SRC]import javax.servlet.DispatcherType [MSG]The [javax.servlet.DispatcherType] import is never referenced |
UnnecessaryPackageReference | 3 | 63 | [SRC]javax.servlet.DispatcherType dispatcherType; [MSG]The javax.servlet.DispatcherType class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryGetter | 3 | 339 | [SRC]multipartFiles.add(file.getName(), file); [MSG]Violation in class org.codehaus.groovy.grails.plugins.testing.GrailsMockHttpServletRequest. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 396 | [SRC]getFileMap().values().collect {new MockPart(it)} [MSG]Violation in class org.codehaus.groovy.grails.plugins.testing.GrailsMockHttpServletRequest. getFileMap() can probably be rewritten as fileMap |
UnnecessaryPackageReference | 3 | 399 | [SRC]javax.servlet.http.Part getPart(String name) { [MSG]The javax.servlet.http.Part class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 406 | [SRC]javax.servlet.AsyncContext startAsync() { [MSG]The javax.servlet.AsyncContext class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 415 | [SRC]javax.servlet.AsyncContext startAsync(javax.servlet.Serv..tResponse) { [MSG]The javax.servlet.AsyncContext class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 415 | [SRC]javax.servlet.AsyncContext startAsync(javax.servlet.Serv..tResponse) { [MSG]The javax.servlet.ServletRequest class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 415 | [SRC]javax.servlet.AsyncContext startAsync(javax.servlet.Serv..tResponse) { [MSG]The javax.servlet.ServletResponse class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 526 | [SRC]void addListener(javax.servlet.AsyncListener listener) { [MSG]The javax.servlet.AsyncListener class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 530 | [SRC]void addListener(javax.servlet.AsyncListener listener, j..tResponse) { [MSG]The javax.servlet.AsyncListener class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 530 | [SRC]void addListener(javax.servlet.AsyncListener listener, j..tResponse) { [MSG]The javax.servlet.ServletRequest class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 530 | [SRC]void addListener(javax.servlet.AsyncListener listener, j..tResponse) { [MSG]The javax.servlet.ServletResponse class was explicitly imported, so specifying the package name is not necessary |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessarySubstring | 3 | 61 | [SRC]methodName = rawPattern.substring(pos + 1) [MSG]Violation in class org.codehaus.groovy.grails.test.GrailsTestTargetPattern. The String.substring(int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 62 | [SRC]classPattern = rawPattern.substring(0, pos) [MSG]Violation in class org.codehaus.groovy.grails.test.GrailsTestTargetPattern. The String.substring(int, int) method can be replaced with the subscript operator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 42 | [SRC]protected doTestFailure(String name, failure, boolean isError) { [MSG]Violation in class GrailsTestEventConsoleReporter. Method parameter [failure] is never referenced in the method doTestFailure of class org.codehaus.groovy.grails.test.event.GrailsTestEventConsoleReporter |
UnusedMethodParameter | 2 | 42 | [SRC]protected doTestFailure(String name, failure, boolean isError) { [MSG]Violation in class GrailsTestEventConsoleReporter. Method parameter [isError] is never referenced in the method doTestFailure of class org.codehaus.groovy.grails.test.event.GrailsTestEventConsoleReporter |
UnusedMethodParameter | 2 | 47 | [SRC]protected doTestCaseEnd(String name, String out, String err) { [MSG]Violation in class GrailsTestEventConsoleReporter. Method parameter [name] is never referenced in the method doTestCaseEnd of class org.codehaus.groovy.grails.test.event.GrailsTestEventConsoleReporter |
UnusedMethodParameter | 2 | 47 | [SRC]protected doTestCaseEnd(String name, String out, String err) { [MSG]Violation in class GrailsTestEventConsoleReporter. Method parameter [err] is never referenced in the method doTestCaseEnd of class org.codehaus.groovy.grails.test.event.GrailsTestEventConsoleReporter |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 53 | [SRC]def testClasses = getTestClasses() [MSG]Violation in class org.codehaus.groovy.grails.test.junit4.JUnit4GrailsTestType. getTestClasses() can probably be rewritten as testClasses |
UnnecessaryGetter | 3 | 76 | [SRC]new GrailsTestCaseRunnerBuilder(mode, getApplicationCont..getPatterns) [MSG]Violation in class org.codehaus.groovy.grails.test.junit4.JUnit4GrailsTestType. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 46 | [SRC]void testRunStarted(Description description) { [MSG]Violation in class SuiteRunListener. The method testRunStarted is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 46 | [SRC]void testRunStarted(Description description) { [MSG]Violation in class SuiteRunListener. Method parameter [description] is never referenced in the method testRunStarted of class org.codehaus.groovy.grails.test.junit4.listener.SuiteRunListener |
UnusedMethodParameter | 2 | 68 | [SRC]void testRunFinished(Result result) { [MSG]Violation in class SuiteRunListener. Method parameter [result] is never referenced in the method testRunFinished of class org.codehaus.groovy.grails.test.junit4.listener.SuiteRunListener |
EmptyMethod | 2 | 72 | [SRC]void testIgnored(Description description) { [MSG]Violation in class SuiteRunListener. The method testIgnored is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 72 | [SRC]void testIgnored(Description description) { [MSG]Violation in class SuiteRunListener. Method parameter [description] is never referenced in the method testIgnored of class org.codehaus.groovy.grails.test.junit4.listener.SuiteRunListener |
UnnecessaryGetter | 3 | 69 | [SRC]getPerTestRunListener().finish() [MSG]Violation in class org.codehaus.groovy.grails.test.junit4.listener.SuiteRunListener. getPerTestRunListener() can probably be rewritten as perTestRunListener |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 25 | [SRC]import org.junit.runner.notification.RunNotifier [MSG]The [org.junit.runner.notification.RunNotifier] import is never referenced |
UnusedImport | 3 | 35 | [SRC]import org.codehaus.groovy.grails.test.support.GrailsTestInterceptor [MSG]The [org.codehaus.groovy.grails.test.support.GrailsTestInterceptor] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 81 | [SRC]protected initRequestEnvironmentIfNecessary(Closure body) { [MSG]Violation in class GrailsTestInterceptor. Method parameter [body] is never referenced in the method initRequestEnvironmentIfNecessary of class org.codehaus.groovy.grails.test.support.GrailsTestInterceptor |
UnnecessaryGetter | 3 | 84 | [SRC]def controllerName = getControllerName() [MSG]Violation in class org.codehaus.groovy.grails.test.support.GrailsTestInterceptor. getControllerName() can probably be rewritten as controllerName |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 19 | [SRC]import org.springframework.web.context.request.RequestContextHolder [MSG]The [org.springframework.web.context.request.RequestContextHolder] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 117 | [SRC]Thread.currentThread().contextClassLoader = getTestClassLoader() [MSG]Violation in class org.codehaus.groovy.grails.test.support.GrailsTestTypeSupport. getTestClassLoader() can probably be rewritten as testClassLoader |
UnnecessaryGetter | 3 | 157 | [SRC]def classPathAdditions = [getSourceDir()] [MSG]Violation in class org.codehaus.groovy.grails.test.support.GrailsTestTypeSupport. getSourceDir() can probably be rewritten as sourceDir |
UnnecessaryGetter | 3 | 210 | [SRC]def basePath = getSourceDir().canonicalPath [MSG]Violation in class org.codehaus.groovy.grails.test.support.GrailsTestTypeSupport. getSourceDir() can probably be rewritten as sourceDir |
UnnecessarySubstring | 3 | 216 | [SRC]def relativePath = filePath.substring(basePath.size() + 1) [MSG]Violation in class org.codehaus.groovy.grails.test.support.GrailsTestTypeSupport. The String.substring(int) method can be replaced with the subscript operator |
UnnecessaryGetter | 3 | 250 | [SRC]getTestClassLoader().loadClass(className) [MSG]Violation in class org.codehaus.groovy.grails.test.support.GrailsTestTypeSupport. getTestClassLoader() can probably be rewritten as testClassLoader |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 17 | [SRC]def jspCtx = servletContext.getAttribute(GroovyPagesJspA..t.getName()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory21. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 21 | [SRC]if (!servletContext.getAttribute(GroovyPagesJspApplicati..etName())) { [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory21. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 23 | [SRC]servletContext.setAttribute(GroovyPagesJspApplicationCon..e(), jspCtx) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory21. getName() can probably be rewritten as name |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 30 | [SRC]if (JspFactory.getDefaultFactory() == null) { [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesPageContext21. getDefaultFactory() can probably be rewritten as defaultFactory |
UnnecessaryGetter | 3 | 39 | [SRC]def jspContext = JspFactory.getDefaultFactory().getJspAp..etContext()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesPageContext21. getDefaultFactory() can probably be rewritten as defaultFactory |
UnnecessaryGetter | 3 | 39 | [SRC]def jspContext = JspFactory.getDefaultFactory().getJspAp..etContext()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesPageContext21. getServletContext() can probably be rewritten as servletContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 165 | [SRC]long getDateHeader(String name) { -1L } [MSG]Violation in class PageRenderer$PageRenderRequest. Method parameter [name] is never referenced in the method getDateHeader of class grails.gsp.PageRenderer$PageRenderRequest |
UnusedMethodParameter | 2 | 167 | [SRC]String getHeader(String name) { null } [MSG]Violation in class PageRenderer$PageRenderRequest. Method parameter [name] is never referenced in the method getHeader of class grails.gsp.PageRenderer$PageRenderRequest |
UnusedMethodParameter | 2 | 169 | [SRC]Enumeration getHeaders(String name) { [MSG]Violation in class PageRenderer$PageRenderRequest. Method parameter [name] is never referenced in the method getHeaders of class grails.gsp.PageRenderer$PageRenderRequest |
UnusedMethodParameter | 2 | 177 | [SRC]int getIntHeader(String name) { -1 } [MSG]Violation in class PageRenderer$PageRenderRequest. Method parameter [name] is never referenced in the method getIntHeader of class grails.gsp.PageRenderer$PageRenderRequest |
UnusedMethodParameter | 2 | 191 | [SRC]boolean isUserInRole(String role) { false } [MSG]Violation in class PageRenderer$PageRenderRequest. Method parameter [role] is never referenced in the method isUserInRole of class grails.gsp.PageRenderer$PageRenderRequest |
UnusedMethodParameter | 2 | 205 | [SRC]HttpSession getSession(boolean create) { throw new Unsup..erations") } [MSG]Violation in class PageRenderer$PageRenderRequest. Method parameter [create] is never referenced in the method getSession of class grails.gsp.PageRenderer$PageRenderRequest |
UnusedMethodParameter | 2 | 264 | [SRC]String[] getParameterValues(String name) { [MSG]Violation in class PageRenderer$PageRenderRequest. Method parameter [name] is never referenced in the method getParameterValues of class grails.gsp.PageRenderer$PageRenderRequest |
UnusedMethodParameter | 2 | 318 | [SRC]RequestDispatcher getRequestDispatcher(String path) { [MSG]Violation in class PageRenderer$PageRenderRequest. Method parameter [path] is never referenced in the method getRequestDispatcher of class grails.gsp.PageRenderer$PageRenderRequest |
UnusedMethodParameter | 2 | 322 | [SRC]String getRealPath(String path) { [MSG]Violation in class PageRenderer$PageRenderRequest. Method parameter [path] is never referenced in the method getRealPath of class grails.gsp.PageRenderer$PageRenderRequest |
EmptyMethod | 2 | 389 | [SRC]void addCookie(Cookie cookie) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method addCookie is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 389 | [SRC]void addCookie(Cookie cookie) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [cookie] is never referenced in the method addCookie of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 393 | [SRC]boolean containsHeader(String name) { false } [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [name] is never referenced in the method containsHeader of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 403 | [SRC]void sendError(int sc, String msg) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method sendError is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 403 | [SRC]void sendError(int sc, String msg) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [sc] is never referenced in the method sendError of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 403 | [SRC]void sendError(int sc, String msg) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [msg] is never referenced in the method sendError of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 407 | [SRC]void sendError(int sc) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method sendError is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 407 | [SRC]void sendError(int sc) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [sc] is never referenced in the method sendError of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 411 | [SRC]void sendRedirect(String location) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method sendRedirect is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 411 | [SRC]void sendRedirect(String location) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [location] is never referenced in the method sendRedirect of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 415 | [SRC]void setDateHeader(String name, long date) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method setDateHeader is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 415 | [SRC]void setDateHeader(String name, long date) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [name] is never referenced in the method setDateHeader of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 415 | [SRC]void setDateHeader(String name, long date) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [date] is never referenced in the method setDateHeader of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 419 | [SRC]void addDateHeader(String name, long date) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method addDateHeader is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 419 | [SRC]void addDateHeader(String name, long date) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [name] is never referenced in the method addDateHeader of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 419 | [SRC]void addDateHeader(String name, long date) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [date] is never referenced in the method addDateHeader of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 423 | [SRC]void setHeader(String name, String value) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method setHeader is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 423 | [SRC]void setHeader(String name, String value) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [name] is never referenced in the method setHeader of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 423 | [SRC]void setHeader(String name, String value) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [value] is never referenced in the method setHeader of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 427 | [SRC]void addHeader(String name, String value) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method addHeader is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 427 | [SRC]void addHeader(String name, String value) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [name] is never referenced in the method addHeader of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 427 | [SRC]void addHeader(String name, String value) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [value] is never referenced in the method addHeader of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 431 | [SRC]void setIntHeader(String name, int value) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method setIntHeader is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 431 | [SRC]void setIntHeader(String name, int value) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [name] is never referenced in the method setIntHeader of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 431 | [SRC]void setIntHeader(String name, int value) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [value] is never referenced in the method setIntHeader of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 435 | [SRC]void addIntHeader(String name, int value) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method addIntHeader is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 435 | [SRC]void addIntHeader(String name, int value) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [name] is never referenced in the method addIntHeader of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 435 | [SRC]void addIntHeader(String name, int value) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [value] is never referenced in the method addIntHeader of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 439 | [SRC]void setStatus(int sc) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method setStatus is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 439 | [SRC]void setStatus(int sc) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [sc] is never referenced in the method setStatus of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 443 | [SRC]void setStatus(int sc, String sm) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method setStatus is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 443 | [SRC]void setStatus(int sc, String sm) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [sc] is never referenced in the method setStatus of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 443 | [SRC]void setStatus(int sc, String sm) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [sm] is never referenced in the method setStatus of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 451 | [SRC]String getHeader(String name) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [name] is never referenced in the method getHeader of class grails.gsp.PageRenderer$PageRenderResponse |
UnusedMethodParameter | 2 | 455 | [SRC]Collection<String> getHeaders(String name) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [name] is never referenced in the method getHeaders of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 467 | [SRC]void setContentLength(int len) { [MSG]Violation in class PageRenderer$PageRenderResponse. The method setContentLength is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 467 | [SRC]void setContentLength(int len) { [MSG]Violation in class PageRenderer$PageRenderResponse. Method parameter [len] is never referenced in the method setContentLength of class grails.gsp.PageRenderer$PageRenderResponse |
EmptyMethod | 2 | 471 | [SRC]void flushBuffer() { [MSG]Violation in class PageRenderer$PageRenderResponse. The method flushBuffer is both empty and not marked with @Override |
EmptyMethod | 2 | 475 | [SRC]void resetBuffer() { [MSG]Violation in class PageRenderer$PageRenderResponse. The method resetBuffer is both empty and not marked with @Override |
EmptyMethod | 2 | 481 | [SRC]void reset() { [MSG]Violation in class PageRenderer$PageRenderResponse. The method reset is both empty and not marked with @Override |
UnusedImport | 3 | 20 | [SRC]import java.util.concurrent.ConcurrentLinkedQueue [MSG]The [java.util.concurrent.ConcurrentLinkedQueue] import is never referenced |
UnusedImport | 3 | 32 | [SRC]import org.codehaus.groovy.grails.web.pages.GroovyPagesUriSupport [MSG]The [org.codehaus.groovy.grails.web.pages.GroovyPagesUriSupport] import is never referenced |
UnusedImport | 3 | 37 | [SRC]import org.springframework.core.io.ResourceLoader [MSG]The [org.springframework.core.io.ResourceLoader] import is never referenced |
UnusedImport | 3 | 40 | [SRC]import org.springframework.web.context.support.ServletCo..sourceLoader [MSG]The [org.springframework.web.context.support.ServletContextResourceLoader] import is never referenced |
UnusedImport | 3 | 43 | [SRC]import org.codehaus.groovy.grails.web.pages.discovery.Gr..ScriptSource [MSG]The [org.codehaus.groovy.grails.web.pages.discovery.GroovyPageResourceScriptSource] import is never referenced |
UnusedImport | 3 | 44 | [SRC]import org.codehaus.groovy.grails.web.pages.discovery.Gr..ScriptSource [MSG]The [org.codehaus.groovy.grails.web.pages.discovery.GroovyPageCompiledScriptSource] import is never referenced |
UnnecessaryGetter | 3 | 126 | [SRC]def oldRequestAttributes = RequestContextHolder.getRequestAttributes() [MSG]Violation in class grails.gsp.PageRenderer. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 198 | [SRC]return new StringBuffer(getRequestURI()) [MSG]Violation in class grails.gsp.PageRenderer$PageRenderRequest. getRequestURI() can probably be rewritten as requestURI |
UnnecessaryGetter | 3 | 309 | [SRC]return Locale.getDefault() [MSG]Violation in class grails.gsp.PageRenderer$PageRenderRequest. getDefault() can probably be rewritten as default |
UnnecessaryGetter | 3 | 313 | [SRC]return new IteratorEnumeration(Locale.getAvailableLocale...iterator()) [MSG]Violation in class grails.gsp.PageRenderer$PageRenderRequest. getAvailableLocales() can probably be rewritten as availableLocales |
UnnecessaryGetter | 3 | 381 | [SRC]Locale locale = Locale.getDefault() [MSG]Violation in class grails.gsp.PageRenderer$PageRenderResponse. getDefault() can probably be rewritten as default |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 64 | [SRC]String link(Map attrs, String encoding = 'UTF-8') { [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.DefaultLinkGenerator. The cyclomatic complexity for method [link] is [27] |
EmptyCatchBlock | 2 | 142 | [SRC]} catch(e){} [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 74 | [SRC]if (cp == null) cp = getContextPath() [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.DefaultLinkGenerator. getContextPath() can probably be rewritten as contextPath |
UnnecessaryGetter | 3 | 97 | [SRC]def controller = controllerAttribute != null ? controlle..rollerName() [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.DefaultLinkGenerator. getControllerName() can probably be rewritten as controllerName |
UnnecessaryGetter | 3 | 149 | [SRC]final cp = contextPathAttribute != null ? contextPathAtt..ontextPath() [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.DefaultLinkGenerator. getContextPath() can probably be rewritten as contextPath |
UnnecessaryGetter | 3 | 177 | [SRC]final cp = contextPathAttribute == null ? getContextPath..athAttribute [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.DefaultLinkGenerator. getContextPath() can probably be rewritten as contextPath |
UnnecessaryGetter | 3 | 216 | [SRC]contextPath = requestStateLookupStrategy.getContextPath() [MSG]Violation in class org.codehaus.groovy.grails.web.mapping.DefaultLinkGenerator. getContextPath() can probably be rewritten as contextPath |
UnnecessaryElseStatement | 3 | 259 | [SRC]else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
UnnecessaryElseStatement | 3 | 263 | [SRC]else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 17 | [SRC]import org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequest [MSG]The [org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequest] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 62 | [SRC]def context = webRequest?.getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.web.mime.MimeType. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 87 | [SRC]def relPackagePath = relativePath(viewsDir, gspfile.getParentFile()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageCompiler. getParentFile() can probably be rewritten as parentFile |
UnnecessaryGetter | 3 | 119 | [SRC]gspgroovyfile.getParentFile().mkdirs() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageCompiler. getParentFile() can probably be rewritten as parentFile |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 58 | [SRC]classpath = new Path(getProject()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageCompilerTask. getProject() can probably be rewritten as project |
UnnecessaryGetter | 3 | 81 | [SRC]throw new BuildException("destination [${destdir}] direc..tLocation()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageCompilerTask. getLocation() can probably be rewritten as location |
UnnecessaryGetter | 3 | 87 | [SRC]throw new BuildException("source [${srcdir}] directory d..tLocation()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageCompilerTask. getLocation() can probably be rewritten as location |
UnnecessaryGetter | 3 | 100 | [SRC]GrailsConsole.getInstance().updateStatus("Compiling ${gs..kagename}]") [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPageCompilerTask. getInstance() can probably be rewritten as instance |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGroovyImport | 3 | 4 | [SRC]import groovy.lang.MetaClass |
UnnecessaryGetter | 3 | 20 | [SRC]methodMissingForTagLib(mc, mc.getTheClass(), gspTagLibra..ToMetaClass) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.GroovyPagesMetaUtils. getTheClass() can probably be rewritten as theClass |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 16 | [SRC]PageContext getPageContext(Servlet servlet, ServletReque..oolean b1) { [MSG]Violation in class GroovyPagesJspFactory. Method parameter [servlet] is never referenced in the method getPageContext of class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory |
UnusedMethodParameter | 2 | 16 | [SRC]PageContext getPageContext(Servlet servlet, ServletReque..oolean b1) { [MSG]Violation in class GroovyPagesJspFactory. Method parameter [servletRequest] is never referenced in the method getPageContext of class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory |
UnusedMethodParameter | 2 | 16 | [SRC]PageContext getPageContext(Servlet servlet, ServletReque..oolean b1) { [MSG]Violation in class GroovyPagesJspFactory. Method parameter [servletResponse] is never referenced in the method getPageContext of class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory |
UnusedMethodParameter | 2 | 16 | [SRC]PageContext getPageContext(Servlet servlet, ServletReque..oolean b1) { [MSG]Violation in class GroovyPagesJspFactory. Method parameter [s] is never referenced in the method getPageContext of class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory |
UnusedMethodParameter | 2 | 16 | [SRC]PageContext getPageContext(Servlet servlet, ServletReque..oolean b1) { [MSG]Violation in class GroovyPagesJspFactory. Method parameter [b] is never referenced in the method getPageContext of class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory |
UnusedMethodParameter | 2 | 16 | [SRC]PageContext getPageContext(Servlet servlet, ServletReque..oolean b1) { [MSG]Violation in class GroovyPagesJspFactory. Method parameter [i] is never referenced in the method getPageContext of class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory |
UnusedMethodParameter | 2 | 16 | [SRC]PageContext getPageContext(Servlet servlet, ServletReque..oolean b1) { [MSG]Violation in class GroovyPagesJspFactory. Method parameter [b1] is never referenced in the method getPageContext of class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory |
UnusedMethodParameter | 2 | 19 | [SRC]void releasePageContext(PageContext pageContext) { [MSG]Violation in class GroovyPagesJspFactory. Method parameter [pageContext] is never referenced in the method releasePageContext of class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory |
UnnecessaryGetter | 3 | 24 | [SRC]return { getSpecificationVersion() } as JspEngineInfo [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.GroovyPagesJspFactory. getSpecificationVersion() can probably be rewritten as specificationVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | 60 | [SRC]void doTag(Writer targetWriter, Map attributes, Closure body) { [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.JspTagImpl. The cyclomatic complexity for method [doTag] is [23] |
UnusedMethodParameter | 2 | 153 | [SRC]protected handleSimpleTag(SimpleTag tag, Map attributes,..pageContext, [MSG]Violation in class JspTagImpl. Method parameter [attributes] is never referenced in the method handleSimpleTag of class org.codehaus.groovy.grails.web.pages.ext.jsp.JspTagImpl |
UnnecessaryGetter | 3 | 62 | [SRC]GroovyPagesPageContext pageContext = PageContextFactory.getCurrent(); [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.JspTagImpl. getCurrent() can probably be rewritten as current |
UnnecessaryGetter | 3 | 99 | [SRC]def out = pageContext.getOut() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.JspTagImpl. getOut() can probably be rewritten as out |
UnnecessaryGetter | 3 | 121 | [SRC]LOG.warn "Tag ${tag.getClass().getName()} returned SKIP_..rted in GSP" [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.JspTagImpl. getName() can probably be rewritten as name |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 38 | [SRC]def classLoader = Thread.currentThread().getContextClassLoader() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.PageContextFactory. getContextClassLoader() can probably be rewritten as contextClassLoader |
UnnecessaryGetter | 3 | 51 | [SRC]def request = webRequest.getCurrentRequest() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.PageContextFactory. getCurrentRequest() can probably be rewritten as currentRequest |
UnnecessaryGetter | 3 | 56 | [SRC]ServletContext servletContext = webRequest.getServletContext() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.PageContextFactory. getServletContext() can probably be rewritten as servletContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 64 | [SRC]def jarURLs = grailsApplication.isWarDeployed() ? getJar..().getURLs() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getJarsFromServletContext() can probably be rewritten as jarsFromServletContext |
UnnecessaryGetter | 3 | 64 | [SRC]def jarURLs = grailsApplication.isWarDeployed() ? getJar..().getURLs() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getURLs() can probably be rewritten as URLs |
UnnecessaryGetter | 3 | 70 | [SRC]ZipEntry entry = zipInput.getNextEntry() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getNextEntry() can probably be rewritten as nextEntry |
UnnecessaryGetter | 3 | 76 | [SRC]entry = zipInput.getNextEntry() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getNextEntry() can probably be rewritten as nextEntry |
UnnecessaryGetter | 3 | 86 | [SRC]Resource webXml = getWebXmlFromServletContext() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getWebXmlFromServletContext() can probably be rewritten as webXmlFromServletContext |
UnnecessaryGetter | 3 | 98 | [SRC]def jarURLs = grailsApplication.isWarDeployed() ? getJar..().getURLs() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getJarsFromServletContext() can probably be rewritten as jarsFromServletContext |
UnnecessaryGetter | 3 | 98 | [SRC]def jarURLs = grailsApplication.isWarDeployed() ? getJar..().getURLs() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getURLs() can probably be rewritten as URLs |
UnnecessaryGetter | 3 | 115 | [SRC]def source = new InputSource(webXml.getInputStream()) [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getInputStream() can probably be rewritten as inputStream |
UnnecessaryGetter | 3 | 120 | [SRC]def reader = factory.newSAXParser().getXMLReader() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getXMLReader() can probably be rewritten as XMLReader |
UnnecessaryGetter | 3 | 126 | [SRC]for (entry in webXmlReader.getTagLocations()) { [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getTagLocations() can probably be rewritten as tagLocations |
UnnecessaryGetter | 3 | 157 | [SRC]ZipEntry entry = zipInput.getNextEntry() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getNextEntry() can probably be rewritten as nextEntry |
UnnecessaryGetter | 3 | 159 | [SRC]def name = entry.getName() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 169 | [SRC]if ("taglib".equals(pullParser.getName())) { [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 175 | [SRC]if (token == XmlPullParser.START_TAG && "uri".equals(pul..etName())) { [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getName() can probably be rewritten as name |
UnnecessaryGetter | 3 | 177 | [SRC]tagLibURI = pullParser.getText()?.trim() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getText() can probably be rewritten as text |
UnnecessaryGetter | 3 | 191 | [SRC]entry = zipInput.getNextEntry() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getNextEntry() can probably be rewritten as nextEntry |
UnnecessaryGetter | 3 | 216 | [SRC]def reader = factory.newSAXParser().getXMLReader() [MSG]Violation in class org.codehaus.groovy.grails.web.pages.ext.jsp.TagLibraryResolver. getXMLReader() can probably be rewritten as XMLReader |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 36 | [SRC]void startElement(String nsuri, String localName, String..ttributes) { [MSG]Violation in class TldReader. Method parameter [nsuri] is never referenced in the method startElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.TldReader |
UnusedMethodParameter | 2 | 36 | [SRC]void startElement(String nsuri, String localName, String..ttributes) { [MSG]Violation in class TldReader. Method parameter [localName] is never referenced in the method startElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.TldReader |
UnusedMethodParameter | 2 | 36 | [SRC]void startElement(String nsuri, String localName, String..ttributes) { [MSG]Violation in class TldReader. Method parameter [attributes] is never referenced in the method startElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.TldReader |
UnusedMethodParameter | 2 | 46 | [SRC]void endElement(String nsuri, String localName, String qName) { [MSG]Violation in class TldReader. Method parameter [nsuri] is never referenced in the method endElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.TldReader |
UnusedMethodParameter | 2 | 46 | [SRC]void endElement(String nsuri, String localName, String qName) { [MSG]Violation in class TldReader. Method parameter [localName] is never referenced in the method endElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.TldReader |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedMethodParameter | 2 | 41 | [SRC]void startElement(String ns, String localName, String qN..ttributes) { [MSG]Violation in class WebXmlTagLibraryReader. Method parameter [ns] is never referenced in the method startElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.WebXmlTagLibraryReader |
UnusedMethodParameter | 2 | 41 | [SRC]void startElement(String ns, String localName, String qN..ttributes) { [MSG]Violation in class WebXmlTagLibraryReader. Method parameter [localName] is never referenced in the method startElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.WebXmlTagLibraryReader |
UnusedMethodParameter | 2 | 41 | [SRC]void startElement(String ns, String localName, String qN..ttributes) { [MSG]Violation in class WebXmlTagLibraryReader. Method parameter [attributes] is never referenced in the method startElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.WebXmlTagLibraryReader |
UnusedMethodParameter | 2 | 51 | [SRC]void endElement(String ns, String localName, String qName) { [MSG]Violation in class WebXmlTagLibraryReader. Method parameter [ns] is never referenced in the method endElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.WebXmlTagLibraryReader |
UnusedMethodParameter | 2 | 51 | [SRC]void endElement(String ns, String localName, String qName) { [MSG]Violation in class WebXmlTagLibraryReader. Method parameter [localName] is never referenced in the method endElement of class org.codehaus.groovy.grails.web.pages.ext.jsp.WebXmlTagLibraryReader |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 59 | [SRC]GroovyPagesMetaUtils.methodMissingForTagLib(getMetaClass..lopmentMode) [MSG]Violation in class org.codehaus.groovy.grails.web.taglib.NamespacedTagDispatcher. getMetaClass() can probably be rewritten as metaClass |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
SynchronizedOnThis | 2 | 22 | [SRC]synchronized(this) { [MSG]The synchronized statement uses the 'this' reference |
UnusedImport | 3 | 3 | [SRC]import grails.util.CollectionUtils; [MSG]The [grails.util.CollectionUtils] import is never referenced |
UnnecessaryGroovyImport | 3 | 5 | [SRC]import java.util.Map; |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 18 | [SRC]import org.apache.commons.lang.builder.HashCodeBuilder [MSG]The [org.apache.commons.lang.builder.HashCodeBuilder] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
JUnitPublicNonTestMethod | 2 | 60 | [SRC]abstract getFlow() [MSG]Violation in class WebFlowTestCase. The method getFlow is public but not a test method |
JUnitPublicNonTestMethod | 2 | 65 | [SRC]String getFlowId() { "test" } [MSG]Violation in class WebFlowTestCase. The method getFlowId is public but not a test method |
JUnitPublicNonTestMethod | 2 | 106 | [SRC]FlowDefinition registerFlow(String flowId, Closure flowClosure) { [MSG]Violation in class WebFlowTestCase. The method registerFlow is public but not a test method |
JUnitPublicNonTestMethod | 2 | 115 | [SRC]FlowDefinition getFlowDefinition() { [MSG]Violation in class WebFlowTestCase. The method getFlowDefinition is public but not a test method |
UnnecessaryGetter | 3 | 69 | [SRC]GrailsWebRequest webRequest = RequestContextHolder.getRe..Attributes() [MSG]Violation in class grails.test.WebFlowTestCase. getRequestAttributes() can probably be rewritten as requestAttributes |
UnnecessaryGetter | 3 | 74 | [SRC]mockServletContext = webRequest.getServletContext() [MSG]Violation in class grails.test.WebFlowTestCase. getServletContext() can probably be rewritten as servletContext |
UnnecessaryGetter | 3 | 75 | [SRC]applicationContext = WebApplicationContextUtils.getWebAp..etContext()) [MSG]Violation in class grails.test.WebFlowTestCase. getServletContext() can probably be rewritten as servletContext |
UnnecessaryGetter | 3 | 95 | [SRC]flowBuilderServices.expressionParser = DefaultExpression..sionParser() [MSG]Violation in class grails.test.WebFlowTestCase. getExpressionParser() can probably be rewritten as expressionParser |
UnnecessaryGetter | 3 | 110 | [SRC]FlowAssembler assembler = new FlowAssembler(builder, bui..erContext()) [MSG]Violation in class grails.test.WebFlowTestCase. getFlowBuilderContext() can probably be rewritten as flowBuilderContext |
UnnecessaryGetter | 3 | 116 | [SRC]def flow = getFlow() [MSG]Violation in class grails.test.WebFlowTestCase. getFlow() can probably be rewritten as flow |
UnnecessaryGetter | 3 | 123 | [SRC]return registerFlow(getFlowId(), flow) [MSG]Violation in class grails.test.WebFlowTestCase. getFlowId() can probably be rewritten as flowId |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 24 | [SRC]import org.codehaus.groovy.grails.webflow.persistence.Fl..ssionContext [MSG]The [org.codehaus.groovy.grails.webflow.persistence.FlowAwareCurrentSessionContext] import is never referenced |
UnusedImport | 3 | 25 | [SRC]import org.codehaus.groovy.grails.webflow.persistence.Se..tionListener [MSG]The [org.codehaus.groovy.grails.webflow.persistence.SessionAwareHibernateFlowExecutionListener] import is never referenced |
UnusedImport | 3 | 40 | [SRC]import org.springframework.webflow.execution.factory.Sta..stenerLoader [MSG]The [org.springframework.webflow.execution.factory.StaticFlowExecutionListenerLoader] import is never referenced |
UnnecessarySelfAssignment | 3 | 71 | [SRC]viewFactoryCreator = viewFactoryCreator [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 71 | [SRC]viewFactoryCreator = viewFactoryCreator [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessaryPackageReference | 3 | 80 | [SRC]hibernateConversationListener(org.codehaus.groovy.grails..tionManager) [MSG]The org.codehaus.groovy.grails.webflow.persistence.SessionAwareHibernateFlowExecutionListener class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 80 | [SRC]hibernateConversationListener(org.codehaus.groovy.grails..tionManager) [MSG]The org.codehaus.groovy.grails.webflow.persistence.SessionAwareHibernateFlowExecutionListener class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 81 | [SRC]executionListenerLoader(org.springframework.webflow.exec..ionListener) [MSG]The org.springframework.webflow.execution.factory.StaticFlowExecutionListenerLoader class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 81 | [SRC]executionListenerLoader(org.springframework.webflow.exec..ionListener) [MSG]The org.springframework.webflow.execution.factory.StaticFlowExecutionListenerLoader class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 82 | [SRC]sessionFactory.currentSessionContextClass = org.codehaus..ssionContext [MSG]The org.codehaus.groovy.grails.webflow.persistence.FlowAwareCurrentSessionContext class was explicitly imported, so specifying the package name is not necessary |
UnnecessaryPackageReference | 3 | 82 | [SRC]sessionFactory.currentSessionContextClass = org.codehaus..ssionContext [MSG]The org.codehaus.groovy.grails.webflow.persistence.FlowAwareCurrentSessionContext class was explicitly imported, so specifying the package name is not necessary |
UnnecessarySelfAssignment | 3 | 103 | [SRC]flowExecutor = flowExecutor [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessarySelfAssignment | 3 | 103 | [SRC]flowExecutor = flowExecutor [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessaryGetter | 3 | 122 | [SRC]def assembler = new FlowAssembler(builder, builder.getFl..erContext()) [MSG]Violation in class org.codehaus.groovy.grails.webflow.WebFlowPluginSupport. getFlowBuilderContext() can probably be rewritten as flowBuilderContext |
UnnecessaryGetter | 3 | 170 | [SRC]controller.getReference().getWrappedInstance().metaClass..rollerClass) [MSG]Violation in class org.codehaus.groovy.grails.webflow.WebFlowPluginSupport. getWrappedInstance() can probably be rewritten as wrappedInstance |
UnnecessaryGetter | 3 | 170 | [SRC]controller.getReference().getWrappedInstance().metaClass..rollerClass) [MSG]Violation in class org.codehaus.groovy.grails.webflow.WebFlowPluginSupport. getReference() can probably be rewritten as reference |
UnnecessaryDefInVariableDeclaration | 3 | 172 | [SRC]def FlowBuilder builder = new FlowBuilder(("${controller..lowRegistry) [MSG]Violation in class org.codehaus.groovy.grails.webflow.WebFlowPluginSupport. The def keyword is unneeded when a variable is declared with a type |
UnnecessaryDefInVariableDeclaration | 3 | 172 | [SRC]def FlowBuilder builder = new FlowBuilder(("${controller..lowRegistry) [MSG]Violation in class org.codehaus.groovy.grails.webflow.WebFlowPluginSupport. The def keyword is unneeded when a variable is declared with a type |
UnnecessaryGetter | 3 | 176 | [SRC]FlowAssembler flowAssembler = new FlowAssembler(builder,..erContext()) [MSG]Violation in class org.codehaus.groovy.grails.webflow.WebFlowPluginSupport. getFlowBuilderContext() can probably be rewritten as flowBuilderContext |
UnnecessaryGetter | 3 | 182 | [SRC]controller.getReference().getWrappedInstance().metaClass..entMetaClass [MSG]Violation in class org.codehaus.groovy.grails.webflow.WebFlowPluginSupport. getWrappedInstance() can probably be rewritten as wrappedInstance |
UnnecessaryGetter | 3 | 182 | [SRC]controller.getReference().getWrappedInstance().metaClass..entMetaClass [MSG]Violation in class org.codehaus.groovy.grails.webflow.WebFlowPluginSupport. getReference() can probably be rewritten as reference |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 26 | [SRC]import org.springframework.webflow.execution.repository...onRepository [MSG]The [org.springframework.webflow.execution.repository.FlowExecutionRepository] import is never referenced |
UnusedImport | 3 | 32 | [SRC]import org.codehaus.groovy.grails.webflow.execution.Grai..ExecutorImpl [MSG]The [org.codehaus.groovy.grails.webflow.execution.GrailsFlowExecutorImpl] import is never referenced |
UnnecessarySubstring | 3 | 68 | [SRC]String actionName = flowId.substring(flowId.lastIndexOf('/')+1) [MSG]Violation in class org.codehaus.groovy.grails.webflow.context.servlet.GrailsFlowUrlHandler. The String.substring(int) method can be replaced with the subscript operator |
UnnecessarySubstring | 3 | 107 | [SRC]String actionName = flowId.substring(flowId.lastIndexOf('/') + 1) [MSG]Violation in class org.codehaus.groovy.grails.webflow.context.servlet.GrailsFlowUrlHandler. The String.substring(int) method can be replaced with the subscript operator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryDefInVariableDeclaration | 3 | 66 | [SRC]def MetaProperty property = metaClass.getMetaProperty(name) [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.AbstractDelegate. The def keyword is unneeded when a variable is declared with a type |
UnnecessaryGetter | 3 | 67 | [SRC]def ctx = getApplicationContext() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.AbstractDelegate. getApplicationContext() can probably be rewritten as applicationContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 123 | [SRC]void setValue(Object context, Object value) {} [MSG]Violation in class KeyExpression. The method setValue is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 123 | [SRC]void setValue(Object context, Object value) {} [MSG]Violation in class KeyExpression. Method parameter [context] is never referenced in the method setValue of class org.codehaus.groovy.grails.webflow.engine.builder.KeyExpression |
UnusedMethodParameter | 2 | 123 | [SRC]void setValue(Object context, Object value) {} [MSG]Violation in class KeyExpression. Method parameter [value] is never referenced in the method setValue of class org.codehaus.groovy.grails.webflow.engine.builder.KeyExpression |
UnusedMethodParameter | 2 | 125 | [SRC]Class getValueType(Object context) {Object} [MSG]Violation in class KeyExpression. Method parameter [context] is never referenced in the method getValueType of class org.codehaus.groovy.grails.webflow.engine.builder.KeyExpression |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 35 | [SRC]def attrs = context?.attributes ? context.attributes : [:] [MSG]The variable [attrs] in class org.codehaus.groovy.grails.webflow.engine.builder.ClosureExpression is not used |
EmptyMethod | 2 | 41 | [SRC]void setValue(Object context, Object value) { [MSG]Violation in class ClosureExpression. The method setValue is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 41 | [SRC]void setValue(Object context, Object value) { [MSG]Violation in class ClosureExpression. Method parameter [context] is never referenced in the method setValue of class org.codehaus.groovy.grails.webflow.engine.builder.ClosureExpression |
UnusedMethodParameter | 2 | 41 | [SRC]void setValue(Object context, Object value) { [MSG]Violation in class ClosureExpression. Method parameter [value] is never referenced in the method setValue of class org.codehaus.groovy.grails.webflow.engine.builder.ClosureExpression |
UnusedMethodParameter | 2 | 45 | [SRC]Class getValueType(Object context) { Object } [MSG]Violation in class ClosureExpression. Method parameter [context] is never referenced in the method getValueType of class org.codehaus.groovy.grails.webflow.engine.builder.ClosureExpression |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateField | 2 | 41 | [SRC]private static final String RESULT = "result" [MSG]The field RESULT is not used within the class org.codehaus.groovy.grails.webflow.engine.builder.ClosureInvokingAction |
EmptyCatchBlock | 2 | 154 | [SRC]catch (MissingPropertyException e) { [MSG]The catch block is empty |
UnnecessaryDotClass | 3 | 53 | [SRC]this.hasCommandObjects = noOfParams > 1 || (noOfParams =..ntext.class) [MSG]Object.class can be rewritten as Object |
UnnecessaryDotClass | 3 | 53 | [SRC]this.hasCommandObjects = noOfParams > 1 || (noOfParams =..ntext.class) [MSG]RequestContext.class can be rewritten as RequestContext |
UnnecessaryGetter | 3 | 73 | [SRC]prop.validate(delegate, delegate.getProperty(prop.getPro..localErrors) [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.ClosureInvokingAction. getPropertyName() can probably be rewritten as propertyName |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyCatchBlock | 2 | 252 | [SRC]catch (MissingPropertyException mpe) { [MSG]The catch block is empty |
EmptyCatchBlock | 2 | 262 | [SRC]catch (MissingPropertyException mpe) { [MSG]The catch block is empty |
UnnecessaryGetter | 3 | 100 | [SRC]this.metaClass = GroovySystem.getMetaClassRegistry().get..ilder.class) [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getMetaClassRegistry() can probably be rewritten as metaClassRegistry |
UnnecessaryDotClass | 3 | 100 | [SRC]this.metaClass = GroovySystem.getMetaClassRegistry().get..ilder.class) [MSG]FlowBuilder.class can be rewritten as FlowBuilder |
UnnecessaryGetter | 3 | 113 | [SRC]super.getContext() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getContext() can probably be rewritten as context |
UnnecessaryGetter | 3 | 124 | [SRC]Flow flow = super.getFlow() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getFlow() can probably be rewritten as flow |
UnnecessaryGetter | 3 | 130 | [SRC]FlowArtifactFactory flowFactory = getContext().getFlowAr..actFactory() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getFlowArtifactFactory() can probably be rewritten as flowArtifactFactory |
UnnecessaryGetter | 3 | 130 | [SRC]FlowArtifactFactory flowFactory = getContext().getFlowAr..actFactory() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getContext() can probably be rewritten as context |
UnnecessaryGetter | 3 | 171 | [SRC]state = flowFactory.createEndState(name, getFlow(), getA..ntryAction), [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getFlow() can probably be rewritten as flow |
UnnecessaryGetter | 3 | 195 | [SRC]state.getExceptionHandlerSet().add(eh) [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getExceptionHandlerSet() can probably be rewritten as exceptionHandlerSet |
UnnecessaryGetter | 3 | 201 | [SRC]getFlow().setStartState(startFlow) [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getFlow() can probably be rewritten as flow |
UnnecessarySubstring | 3 | 246 | [SRC]key = key.substring(GrailsApplicationAttributes.ERRORS.length() + 1) [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. The String.substring(int) method can be replaced with the subscript operator |
UnnecessaryGetter | 3 | 276 | [SRC]getFlow(), [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getFlow() can probably be rewritten as flow |
UnnecessaryGetter | 3 | 294 | [SRC]def controllerClass = flowInfo.subflow.getThisObject().getClass() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getThisObject() can probably be rewritten as thisObject |
UnnecessaryGetter | 3 | 306 | [SRC]Class controllerClass = flowClosure.getThisObject().getClass() [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getThisObject() can probably be rewritten as thisObject |
UnnecessaryGetter | 3 | 313 | [SRC]return flowFactory.createSubflowState(stateId, getFlow()..on(subflow), [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getFlow() can probably be rewritten as flow |
UnnecessaryGetter | 3 | 321 | [SRC]getFlow(), [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getFlow() can probably be rewritten as flow |
UnnecessaryGetter | 3 | 333 | [SRC]return flowFactory.createEndState(stateId, getFlow(), [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getFlow() can probably be rewritten as flow |
UnnecessaryGetter | 3 | 346 | [SRC]ViewFactory viewFactory = flowBuilderServices.getViewFac..ViewFactory( [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getViewFactoryCreator() can probably be rewritten as viewFactoryCreator |
UnnecessaryGetter | 3 | 348 | [SRC]flowBuilderServices.getExpressionParser(), [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getExpressionParser() can probably be rewritten as expressionParser |
UnnecessaryGetter | 3 | 349 | [SRC]flowBuilderServices.getConversionService(), [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder. getConversionService() can probably be rewritten as conversionService |
UnnecessaryGetter | 3 | 454 | [SRC]throw new FlowDefinitionException("Event handler in flow..etFlowId() + [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.FlowInfoCapturer. getFlowId() can probably be rewritten as flowId |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
EmptyMethod | 2 | 47 | [SRC]void mapSubflowOutput(AttributeMap output, RequestContext context) {} [MSG]Violation in class GrailsSubflowAttributeMapper. The method mapSubflowOutput is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 47 | [SRC]void mapSubflowOutput(AttributeMap output, RequestContext context) {} [MSG]Violation in class GrailsSubflowAttributeMapper. Method parameter [output] is never referenced in the method mapSubflowOutput of class org.codehaus.groovy.grails.webflow.engine.builder.GrailsSubflowAttributeMapper |
UnusedMethodParameter | 2 | 47 | [SRC]void mapSubflowOutput(AttributeMap output, RequestContext context) {} [MSG]Violation in class GrailsSubflowAttributeMapper. Method parameter [context] is never referenced in the method mapSubflowOutput of class org.codehaus.groovy.grails.webflow.engine.builder.GrailsSubflowAttributeMapper |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryElseStatement | 3 | 41 | [SRC]else { [MSG]When an if statement block ends with a return statement the else is unnecessary |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 52 | [SRC]return new GroovyShell(new BeanBinding(delegate)).evalua...getValue()) [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.RuntimeRedirectAction. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 69 | [SRC]context.getExternalContext().requestExternalRedirect("co..ative:$url") [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.RuntimeRedirectAction. getExternalContext() can probably be rewritten as externalContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 19 | [SRC]import org.codehaus.groovy.grails.web.mapping.UrlCreator [MSG]The [org.codehaus.groovy.grails.web.mapping.UrlCreator] import is never referenced |
UnusedImport | 3 | 20 | [SRC]import org.codehaus.groovy.grails.web.mapping.UrlMappingsHolder [MSG]The [org.codehaus.groovy.grails.web.mapping.UrlMappingsHolder] import is never referenced |
UnnecessarySelfAssignment | 3 | 37 | [SRC]def uri = uri [MSG]Assignment a variable to itself should be unnecessary. Remove this dead code |
UnnecessaryGetter | 3 | 40 | [SRC]uri = new GroovyShell(new BeanBinding(delegate)).evaluat...getValue()) [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.UriRedirectAction. getValue() can probably be rewritten as value |
UnnecessaryGetter | 3 | 43 | [SRC]context.getExternalContext().requestExternalRedirect(uri) [MSG]Violation in class org.codehaus.groovy.grails.webflow.engine.builder.UriRedirectAction. getExternalContext() can probably be rewritten as externalContext |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
BusyWait | 2 | 48 | [SRC]sleep(Integer.MAX_VALUE) [MSG]Busy wait detected. Switch the usage of Thread.sleep() to a lock or gate from java.util.concurrent |
EmptyMethod | 2 | 80 | [SRC]void focusLost(FocusEvent e) {} [MSG]Violation in class ConsoleFocusListener. The method focusLost is both empty and not marked with @Override |
UnusedMethodParameter | 2 | 80 | [SRC]void focusLost(FocusEvent e) {} [MSG]Violation in class ConsoleFocusListener. Method parameter [e] is never referenced in the method focusLost of class ConsoleFocusListener |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 38 | [SRC]def ivySettings = ant.project.setProperty("ivy.cache.dir..bsolutePath) [MSG]The variable [ivySettings] in class None is not used |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedVariable | 2 | 70 | [SRC]def helpText = "" [MSG]The variable [helpText] in class None is not used |
UnnecessaryGetter | 3 | 55 | [SRC]String scriptname = script.getName() [MSG]Violation in class None. getName() can probably be rewritten as name |
UnnecessarySubstring | 3 | 56 | [SRC]return new File(helpDir, scriptname.substring(0, scriptn..)) + ".txt") [MSG]Violation in class None. The String.substring(int, int) method can be replaced with the subscript operator |
UnnecessaryCollectCall | 3 | 68 | [SRC]def scripts = pluginSettings.availableScripts.collect { it.file } [MSG]Violation in class None. The call to collect could probably be rewritten as a spread expression: pluginSettings.availableScripts*.file |
UnnecessaryGetter | 3 | 112 | [SRC]grails ${scriptName} -- ${getDefaultDescription()} [MSG]Violation in class None. getDefaultDescription() can probably be rewritten as defaultDescription |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 61 | [SRC]def availablePluginVersions = getAvailablePluginVersions() [MSG]Violation in class None. getAvailablePluginVersions() can probably be rewritten as availablePluginVersions |
UnnecessaryGetter | 3 | 62 | [SRC]def installedPluginVersions = getInstalledPluginVersions() [MSG]Violation in class None. getInstalledPluginVersions() can probably be rewritten as installedPluginVersions |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 66 | [SRC]def pluginInfos = pluginSettings.getPluginInfos() [MSG]Violation in class None. getPluginInfos() can probably be rewritten as pluginInfos |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 17 | [SRC]import groovy.xml.NamespaceBuilder [MSG]The [groovy.xml.NamespaceBuilder] import is never referenced |
UnusedImport | 3 | 18 | [SRC]import org.codehaus.groovy.grails.resolve.IvyDependencyManager [MSG]The [org.codehaus.groovy.grails.resolve.IvyDependencyManager] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessarySubstring | 3 | 71 | [SRC]file.path.substring(baseDirPathLength) =~ info.path && [MSG]Violation in class None. The String.substring(int) method can be replaced with the subscript operator |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | [SRC]true [MSG]Violation in class None. The cyclomatic complexity for method [run] is [35] | |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 125 | [SRC]['Config.groovy'].each() {template -> [MSG]Violation in class None. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 131 | [SRC]['BuildConfig.groovy'].each() {template -> [MSG]Violation in class None. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 138 | [SRC]['DataSource.groovy'].each() {template -> [MSG]Violation in class None. Parentheses in the 'each' method call are unnecessary and can be removed. |
UnnecessaryParenthesesForMethodCallWithClosure | 3 | 146 | [SRC]['UrlMappings.groovy'].each() {template -> [MSG]Violation in class None. Parentheses in the 'each' method call are unnecessary and can be removed. |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 26 | [SRC]if (getBinding().variables.containsKey("_grails_arg_pars..ed")) return [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryCollectCall | 3 | 65 | [SRC]def locations = new ArrayList(grailsSettings.pluginDirec..olutePath }) [MSG]Violation in class None. The call to collect could probably be rewritten as a spread expression: grailsSettings.pluginDirectories*.absolutePath |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 29 | [SRC]if (getBinding().variables.containsKey("_grails_classpat..ed")) return [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 26 | [SRC]if (getBinding().variables.containsKey("_grails_clean_called")) return [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
UnnecessaryObjectReferences | 3 | 48 | [SRC]ant.delete(dir:classesDirPath) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 49 | [SRC]ant.delete(dir:pluginClassesDirPath, failonerror:false) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 50 | [SRC]ant.delete(dir:resourcesDirPath) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 51 | [SRC]ant.delete(dir:testDirPath) [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 52 | [SRC]ant.delete(failonerror:false, includeemptydirs: true) { [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | [SRC]true [MSG]Violation in class None. The cyclomatic complexity for method [run] is [26] |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | [SRC]true [MSG]Violation in class None. The cyclomatic complexity for method [run] is [30] | |
UnnecessaryGetter | 3 | 209 | [SRC]def context = DocumentationContext.getInstance() [MSG]Violation in class None. getInstance() can probably be rewritten as instance |
UnnecessaryObjectReferences | 3 | 254 | [SRC]publisher.license = "" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 255 | [SRC]publisher.copyright = "" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 256 | [SRC]publisher.footer = "" [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 257 | [SRC]publisher.engineProperties = config?.grails?.doc [MSG]The code could be more concise by using a with() or identity() block |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 28 | [SRC]if (getBinding().variables.containsKey("_grails_events_c..ed")) return [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 25 | [SRC]import org.springframework.core.io.FileSystemResource [MSG]The [org.springframework.core.io.FileSystemResource] import is never referenced |
UnusedImport | 3 | 26 | [SRC]import grails.util.GrailsNameUtils [MSG]The [grails.util.GrailsNameUtils] import is never referenced |
UnnecessaryGetter | 3 | 31 | [SRC]if (getBinding().variables.containsKey("_init_called")) return [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnnecessaryGetter | 3 | 28 | [SRC]if (getBinding().variables.containsKey("_grails_package_..ed")) return [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedPrivateMethod | 2 | 130 | [SRC]private loadBasePlugin() { [MSG]The method loadBasePlugin is not used within _GrailsPluginDev.groovy |
UnusedImport | 3 | 17 | [SRC]import groovy.xml.MarkupBuilder [MSG]The [groovy.xml.MarkupBuilder] import is never referenced |
UnusedImport | 3 | 18 | [SRC]import grails.util.GrailsNameUtils [MSG]The [grails.util.GrailsNameUtils] import is never referenced |
UnusedImport | 3 | 19 | [SRC]import grails.util.PluginBuildSettings [MSG]The [grails.util.PluginBuildSettings] import is never referenced |
UnusedImport | 3 | 21 | [SRC]import org.apache.commons.io.FilenameUtils [MSG]The [org.apache.commons.io.FilenameUtils] import is never referenced |
UnusedImport | 3 | 22 | [SRC]import org.apache.ivy.core.report.ArtifactDownloadReport [MSG]The [org.apache.ivy.core.report.ArtifactDownloadReport] import is never referenced |
UnnecessaryGetter | 3 | 64 | [SRC]def descriptor = pluginSettings.getBasePluginDescriptor() [MSG]Violation in class None. getBasePluginDescriptor() can probably be rewritten as basePluginDescriptor |
UnnecessaryCollectCall | 3 | 104 | [SRC]packager.jarFiles = deps.collect { it.localFile } [MSG]Violation in class None. The call to collect could probably be rewritten as a spread expression: deps*.localFile |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 17 | [SRC]import groovy.xml.dom.DOMCategory [MSG]The [groovy.xml.dom.DOMCategory] import is never referenced |
UnusedImport | 3 | 19 | [SRC]import org.codehaus.groovy.grails.plugins.GrailsPluginInfo [MSG]The [org.codehaus.groovy.grails.plugins.GrailsPluginInfo] import is never referenced |
UnusedImport | 3 | 20 | [SRC]import org.codehaus.groovy.grails.resolve.PluginResolveEngine [MSG]The [org.codehaus.groovy.grails.resolve.PluginResolveEngine] import is never referenced |
UnusedImport | 3 | 21 | [SRC]import grails.util.BuildSettings [MSG]The [grails.util.BuildSettings] import is never referenced |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | [SRC]true [MSG]Violation in class None. The cyclomatic complexity for method [run] is [24] | |
UnusedMethodParameter | 2 | 183 | [SRC]void actionPerformed(ActionEvent e) { [MSG]Violation in class None$1. Method parameter [e] is never referenced in the method actionPerformed of class None$1 |
UnnecessaryGroovyImport | 3 | 24 | [SRC]import java.net.ServerSocket |
UnnecessaryGetter | 3 | 128 | [SRC]Metadata.getCurrent().put(Metadata.WAR_DEPLOYED, "true") [MSG]Violation in class None. getCurrent() can probably be rewritten as current |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
UnusedImport | 3 | 19 | [SRC]import grails.util.GrailsNameUtils [MSG]The [grails.util.GrailsNameUtils] import is never referenced |
UnusedImport | 3 | 21 | [SRC]import grails.util.Metadata [MSG]The [grails.util.Metadata] import is never referenced |
UnusedImport | 3 | 25 | [SRC]import org.springframework.core.io.ClassPathResource [MSG]The [org.springframework.core.io.ClassPathResource] import is never referenced |
UnusedImport | 3 | 26 | [SRC]import org.springframework.core.io.FileSystemResource [MSG]The [org.springframework.core.io.FileSystemResource] import is never referenced |
UnusedImport | 3 | 27 | [SRC]import org.springframework.core.io.Resource [MSG]The [org.springframework.core.io.Resource] import is never referenced |
UnusedImport | 3 | 28 | [SRC]import org.springframework.core.io.support.PathMatchingR..ternResolver [MSG]The [org.springframework.core.io.support.PathMatchingResourcePatternResolver] import is never referenced |
UnusedImport | 3 | 29 | [SRC]import org.springframework.util.FileCopyUtils [MSG]The [org.springframework.util.FileCopyUtils] import is never referenced |
UnnecessaryGetter | 3 | 40 | [SRC]if (getBinding().variables.containsKey("_settings_called")) return [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
UnnecessaryGetter | 3 | 76 | [SRC]if (grailsSettings.defaultEnv && getBinding().variables...riptEnv")) { [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
UnnecessaryGetter | 3 | 88 | [SRC]if (getBinding().variables.containsKey("scriptScope")) { [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | [SRC]true [MSG]Violation in class None. The cyclomatic complexity for method [run] is [53] | |
UnusedImport | 3 | 17 | [SRC]import grails.util.GrailsUtil [MSG]The [grails.util.GrailsUtil] import is never referenced |
UnusedImport | 3 | 27 | [SRC]import org.codehaus.groovy.grails.test.report.junit.JUni..portsFactory [MSG]The [org.codehaus.groovy.grails.test.report.junit.JUnitReportsFactory] import is never referenced |
UnusedImport | 3 | 33 | [SRC]import org.codehaus.groovy.grails.test.event.GrailsTestE..soleReporter [MSG]The [org.codehaus.groovy.grails.test.event.GrailsTestEventConsoleReporter] import is never referenced |
UnnecessaryGetter | 3 | 126 | [SRC]if (reRunTests) testNames = getFailedTests() [MSG]Violation in class None. getFailedTests() can probably be rewritten as failedTests |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | [SRC]true [MSG]Violation in class None. The cyclomatic complexity for method [run] is [32] | |
UnusedVariable | 2 | 191 | [SRC]def compileScopePluginInfo = ps.compileScopePluginInfo [MSG]The variable [compileScopePluginInfo] in class None is not used |
UnnecessaryGetter | 3 | 192 | [SRC]def compileScopePluginInfos = ps.getCompileScopedSupport..luginInfos() [MSG]Violation in class None. getCompileScopedSupportedPluginInfos() can probably be rewritten as compileScopedSupportedPluginInfos |
UnnecessaryGetter | 3 | 193 | [SRC]def resourceList = ps.getCompileScopedArtefactResources() [MSG]Violation in class None. getCompileScopedArtefactResources() can probably be rewritten as compileScopedArtefactResources |
UnnecessaryGetter | 3 | 219 | [SRC]attribute(name:"Bundle-Version",value:"${metadata.getApp..Version()}") [MSG]Violation in class None. getApplicationVersion() can probably be rewritten as applicationVersion |
UnnecessaryGetter | 3 | 225 | [SRC]switch (metadata.getServletVersion()) { [MSG]Violation in class None. getServletVersion() can probably be rewritten as servletVersion |
UnnecessaryGetter | 3 | 258 | [SRC]attribute(name:"Implementation-Version",value:"${metadat..Version()}") [MSG]Violation in class None. getApplicationVersion() can probably be rewritten as applicationVersion |
UnnecessaryGetter | 3 | 259 | [SRC]attribute(name:"Grails-Version",value:"${metadata.getGra..Version()}") [MSG]Violation in class None. getGrailsVersion() can probably be rewritten as grailsVersion |
UnnecessaryDefInMethodDeclaration | 3 | 334 | [SRC]protected def createDescriptorInternal(pluginInfos, resourceList) { [MSG]Violation in class None. The def keyword is unneeded when a method is marked protected |
UnnecessaryDefInMethodDeclaration | 3 | 395 | [SRC]private def warPluginsInternal(pluginInfos) { [MSG]Violation in class None. The def keyword is unneeded when a method is marked private |
UnnecessaryDefInMethodDeclaration | 3 | 405 | [SRC]private def warPluginForPluginInfo(GrailsPluginInfo info) { [MSG]Violation in class None. The def keyword is unneeded when a method is marked private |
UnnecessaryGetter | 3 | 497 | [SRC]def version = metadata.getApplicationVersion() [MSG]Violation in class None. getApplicationVersion() can probably be rewritten as applicationVersion |
Rule Name | Priority | Line # | Source Line / Message |
---|---|---|---|
CyclomaticComplexity | 2 | [SRC]true [MSG]Violation in class None. The cyclomatic complexity for method [run] is [32] | |
UnusedVariable | 2 | 151 | [SRC]def application [MSG]The variable [application] in class None is not used |
EmptyCatchBlock | 2 | 302 | [SRC]catch (e) { [MSG]The catch block is empty |
UnusedImport | 3 | 17 | [SRC]import grails.util.BuildSettings [MSG]The [grails.util.BuildSettings] import is never referenced |
UnusedImport | 3 | 20 | [SRC]import grails.util.PluginBuildSettings [MSG]The [grails.util.PluginBuildSettings] import is never referenced |
UnusedImport | 3 | 26 | [SRC]import org.codehaus.groovy.control.CompilationUnit [MSG]The [org.codehaus.groovy.control.CompilationUnit] import is never referenced |
UnusedImport | 3 | 28 | [SRC]import org.codehaus.groovy.grails.documentation.DocumentationContext [MSG]The [org.codehaus.groovy.grails.documentation.DocumentationContext] import is never referenced |
UnusedImport | 3 | 29 | [SRC]import org.codehaus.groovy.grails.documentation.DocumentedMethod [MSG]The [org.codehaus.groovy.grails.documentation.DocumentedMethod] import is never referenced |
UnusedImport | 3 | 30 | [SRC]import org.codehaus.groovy.grails.documentation.DocumentedProperty [MSG]The [org.codehaus.groovy.grails.documentation.DocumentedProperty] import is never referenced |
UnnecessaryGetter | 3 | 52 | [SRC]if (getBinding().variables.containsKey("_plugin_dependen..ed")) return [MSG]Violation in class None. getBinding() can probably be rewritten as binding |
UnnecessaryGetter | 3 | 147 | [SRC]def pluginFiles = pluginSettings.getPluginDescriptorsFor..nvironment() [MSG]Violation in class None. getPluginDescriptorsForCurrentEnvironment() can probably be rewritten as pluginDescriptorsForCurrentEnvironment |
UnnecessaryObjectReferences | 3 | 308 | [SRC]pluginInstallEngine.pluginDirVariableStore = binding [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryObjectReferences | 3 | 309 | [SRC]pluginInstallEngine.pluginScriptRunner = runPluginScript [MSG]The code could be more concise by using a with() or identity() block |
UnnecessaryGetter | 3 | 317 | [SRC]GrailsResourceLoaderHolder.resourceLoader = new GrailsRe..vironment()) [MSG]Violation in class None. getArtefactResourcesForCurrentEnvironment() can probably be rewritten as artefactResourcesForCurrentEnvironment |