All Downloads are FREE. Search and download functionalities are using the official Maven repository.

resources.report.rules.pmd.ExceptionsShouldHaveAMessage.html Maven / Gradle / Ivy



ExceptionsShouldHaveAMessage


ExceptionsShouldHaveAMessage

All exceptions should have a message, to help in problem diagnosis.

TODO: This only covers the no-arg constructor; there doesn't seem to be a way of checking the type of a parameter being passed in. For example, the following will pass:
throw new RuntimeException(someOtherException).

This rule is defined by the following XPath expression:

                    
//AllocationExpression
 [ClassOrInterfaceType[ends-with(@Image,'Exception')]]
 [count(Arguments/ArgumentList) = 0]
                    
                

Example:

                
class Foo 
{
  public void doSomething(int x, int y)
  {
  	if (x <= 0)
  	{
  		throw new IllegalArgumentException(); // Bad
  	}
  	else if (y <= 0)
  	{
  		throw new IllegalArgumentException("y must be greater than 0"); // Better
  	}
  }
}
       
            




© 2015 - 2024 Weber Informatics LLC | Privacy Policy