blob: ff72e8e47031bd0a395b0e605380224275031b6f [file] [log] [blame]
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.0//EN"
"http://www.puppycrawl.com/dtds/configuration_1_0.dtd">
<!--
a Checkstyle configuration that checks the sun coding conventions from
the Java Language Specification at
http://java.sun.com/docs/books/jls/second_edition/html/index.html
the Sun Code Conventions at
http://java.sun.com/docs/codeconv/
the Javadoc guidelines at
http://java.sun.com/j2se/javadoc/writingdoccomments/index.html
the JDK Api documentation
http://java.sun.com/j2se/docs/api/index.html
some best practices
-->
<module name="Checker">
<module name="TreeWalker">
<!-- code conventions -->
<!-- naming conventions -->
<module name="ConstantName"/>
<module name="MethodName"/>
<module name="LocalFinalVariableName"/>
<module name="LocalVariableName"/>
<module name="MemberName"/>
<module name="ParameterName"/>
<module name="TypeName"/>
<module name="StaticVariableName"/>
<module name="PackageName"/>
<!-- code layout -->
<module name="RightCurly"/>
<module name="LeftCurly"/>
<module name="NeedBraces"/>
<module name="OperatorWrap"/>
<!-- standard whitespace settings -->
<module name="ParenPad"/>
<module name="NoWhitespaceAfter"/>
<module name="NoWhitespaceBefore"/>
<module name="WhitespaceAfter"/>
<module name="WhitespaceAround"/>
<!-- JavaDoc guidelines -->
<!--
<module name="JavadocMethod"/>
<module name="JavadocType"/>
<module name="JavadocVariable"/>
-->
<!-- JLS -->
<!-- <module name="RedundantModifier"/> -->
<module name="ModifierOrder"/>
<module name="UpperEll"/>
<!-- Api Doc -->
<!-- override hashCode whenever you override equals() -->
<module name="EqualsHashCode"/>
<!-- don't create new instances of Boolean,
use Boolean.TRUE/FALSE or Boolean.valueOf() instead -->
<module name="IllegalInstantiation">
<property name="classes" value="java.lang.Boolean"/>
</module>
<!-- best practices -->
<!-- don't allow empty blocks (in particular catch blocks) -->
<module name="EmptyBlock"/>
<!-- avoid inner assignments -->
<module name="InnerAssignment"/>
<!-- don't allow imports from the sun.* package hierarchy -->
<module name="IllegalImport"/>
<!-- don't allow public members -->
<module name="VisibilityModifier">
<property name="protectedAllowed" value="true"/>
<property name="packageAllowed" value="true"/>
</module>
<!-- simplify your code -->
<!-- <module name="RedundantImport"/> -->
<module name="UnusedImports"/>
<module name="SimplifyBooleanExpression"/>
<module name="SimplifyBooleanReturn"/>
<!-- flag reminder comments -->
<module name="TodoComment"/>
<!-- enforce default length limits -->
<!--
<module name="LineLength"/>
<module name="MethodLength"/>
<module name="FileLength"/>
-->
<!-- don't allow tabs -->
<module name="TabCharacter"/>
</module>
<!-- enforce package documentation -->
<module name="PackageHtml"/>
</module>