<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
        "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
        "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">

<module name="Checker">
    <module name="BeforeExecutionExclusionFileFilter">
        <property name="fileNamePattern" value="module\-info\.java$"/>
    </module>
    <module name="SuppressionFilter">
        <property name="file" value="etc/checkstyle_suppressions.xml"/>
    </module>

    <!-- Checks for file header -->
    <!-- See http://checkstyle.sf.net/config_header.html -->
    <module name="Header">
        <property name="headerFile" value="etc/header-boilerplate.txt"/>
        <property name="ignoreLines" value="2"/>
        <property name="fileExtensions" value="java"/>
    </module>

    <!-- Checks for whitespace -->
    <!-- See http://checkstyle.sf.net/config_whitespace.html -->
    <module name="FileTabCharacter" />
    <module name="NewlineAtEndOfFile">
        <property name="fileExtensions" value="java, xml" />
    </module>

    <module name="TreeWalker">
        <!-- Defining scope as protected means public and protected scopes are checked. -->
        <module name="JavadocMethod">
            <property name="scope" value="protected" />
        </module>
        <module name="JavadocType">
            <property name="scope" value="public" />
        </module>

        <module name="MissingDeprecated" />
        <module name="MissingOverride" />

        <module name="ConstantName" />

        <module name="EqualsHashCode" />
        <module name="StringLiteralEquality" />
    </module>

    <module name="JavadocPackage" />
</module>
