<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
    "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
    "https://checkstyle.org/dtds/configuration_1_3.dtd">

<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements. See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License. You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->

<!-- Checkstyle configuration that checks the commons-configuration coding conventions -->

<module name="Checker">
  <property name="localeLanguage" value="en" />

  <!-- Checks that a package-info.java file exists for each package. -->
  <!-- See https://checkstyle.org/config_javadoc.html#JavadocPackage -->
  <module name="JavadocPackage" />

  <!-- Checks whether files end with a new line. -->
  <!-- See https://checkstyle.org/config_misc.html#NewlineAtEndOfFile -->
  <module name="NewlineAtEndOfFile" />

  <!-- Checks that property files contain the same keys. -->
  <!-- See https://checkstyle.org/config_misc.html#Translation -->
  <module name="Translation" />

  <!-- Checks for Tab characters -->
  <!-- See https://checkstyle.org/config_whitespace.html#FileTabCharacter -->
  <module name="FileTabCharacter">
    <property name="fileExtensions" value="java" />
  </module>

  <!-- Checks for white space at the end of the line -->
  <!-- See https://checkstyle.org/config_regexp.html#RegexpSingleline -->
  <module name="RegexpSingleline">
    <property name="format" value="\s+$" />
    <property name="message" value="Line has trailing spaces." />
    <property name="fileExtensions" value="java" />
  </module>

  <!-- @author tags are deprecated -->
  <module name="RegexpSingleline">
    <property name="format" value="^\s+\*\s+@author\s" />
    <property name="message" value="Deprecated @author tag" />
    <property name="fileExtensions" value="java" />
    <property name="severity" value="warning" />
  </module>

  <!-- Don't use SVN $Date$ variable - it's localized and causes source archives to differ from the SVN tag -->
  <module name="RegexpSingleline">
    <property name="format" value="\$Date.+\$" />
    <property name="message" value="Don't use SVN $Date$ variable" />
    <property name="fileExtensions" value="java" />
    <property name="severity" value="warning" />
  </module>

  <!-- Checks for Size Violations. -->
  <!-- See https://checkstyle.org/config_sizes.html#LineLength -->
  <module name="LineLength">
    <property name="max" value="160" />
  </module>

  <!-- Exceptions -->
  <!--<module name="SuppressionFilter">
    <property name="file" value="conf/checkstyle-suppressions.xml"/>
    </module> -->
  <module name="RegexpSingleline">
    <property name="format" value="\s+$"/>
    <property name="message" value="Line has trailing spaces."/>
  </module>

  <module name="TreeWalker">

    <module name="ExplicitInitializationCheck" />
    <module name="UnusedImports"/>
    <!-- Checks for Javadoc comments. -->
    <!-- See https://checkstyle.org/config_javadoc.html -->
    <module name="JavadocMethod">
      <property name="accessModifiers" value="public" />
    </module>
    <module name="MissingJavadocMethod"/>

    <!-- https://checkstyle.org/config_javadoc.html#JavadocType -->
    <module name="JavadocType">
      <!-- It is unfortunate to have to do this but checkstyle doesn't allow custom tags -->
      <property name="allowUnknownTags" value="true" />
    </module>
    <module name="JavadocVariable">
      <property name="scope" value="protected" />
    </module>
    <module name="JavadocStyle">
      <property name="scope" value="public" />
    </module>

    <!-- Checks for Naming Conventions. -->
    <!-- See https://checkstyle.org/config_naming.html -->
    <module name="ConstantName">
      <property name="format" value="^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$|^capabilities$|^log$" />
    </module>
    <module name="LocalFinalVariableName" />
    <module name="LocalVariableName" />
    <module name="MemberName" />
    <module name="MethodName" />
    <module name="PackageName" />
    <module name="ParameterName" />
    <module name="StaticVariableName" />
    <module name="TypeName" />

    <!-- Following interprets the header file as regular expressions. -->
    <!-- <module name="RegexpHeader"/> -->

    <!-- Checks for imports -->
    <!-- See https://checkstyle.org/config_imports.html -->
    <module name="AvoidStarImport" />
    <module name="IllegalImport" /> <!-- defaults to sun.* packages -->
    <module name="RedundantImport" />
    <module name="UnusedImports" />

    <!-- Checks for Size Violations. -->
    <!-- See https://checkstyle.org/config_sizes.html -->
    <!--<module name="FileLength"/> -->
    <module name="MethodLength" />
    <module name="ParameterNumber">
      <property name="max" value="10" />
    </module>

    <!-- Checks for whitespace -->
    <!-- See https://checkstyle.org/config_whitespace.html -->
    <module name="EmptyForIteratorPad" />
    <module name="NoWhitespaceAfter" />
    <module name="NoWhitespaceBefore" />
    <module name="OperatorWrap">
      <property name="tokens" value="ASSIGN" />
      <property name="option" value="eol" />
    </module>
    <module name="ParenPad" />
    <module name="WhitespaceAfter" />
    <module name="WhitespaceAround" />
    <module name="GenericWhitespace" />

    <!-- Modifier Checks -->
    <!-- See https://checkstyle.org/config_modifier.html -->
    <module name="ModifierOrder" />
    <module name="RedundantModifier" />

    <!-- Checks for blocks. You know, those {}'s -->
    <!-- See https://checkstyle.org/config_blocks.html -->
    <module name="AvoidNestedBlocks" />
    <!-- Require empty catch blocks to have at least a comment -->
    <module name="EmptyBlock">
      <property name="option" value="text" />
      <property name="tokens" value="LITERAL_CATCH" />
    </module>
    <module name="LeftCurly">
      <property name="option" value="eol" />
    </module>
    <module name="NeedBraces" />
    <module name="RightCurly">
      <property name="option" value="same" />
    </module>

    <!-- Checks for common coding problems -->
    <!-- See https://checkstyle.org/config_coding.html -->
    <module name="CovariantEquals" />
    <module name="EqualsHashCode" />
    <module name="IllegalInstantiation" />
    <!-- <module name="InnerAssignment"/> -->
    <module name="MagicNumber">
      <property name="ignoreNumbers" value="-1,0,1,2,3" />
    </module>
    <module name="SimplifyBooleanExpression" />
    <module name="SimplifyBooleanReturn" />
    <module name="StringLiteralEquality" />
    <module name="SuperClone" />
    <module name="SuperFinalize" />
<!-- Can't customize? -->    
<!--     <module name="DeclarationOrder" /> -->
<!--       <property name="ignoreConstructors" value="true" /> -->
<!--     </module> -->
    <!-- <module name="ExplicitInitialization"/> -->
    <module name="DefaultComesLast" />
    <module name="FallThrough" />
    <module name="MultipleVariableDeclarations" />
    <!-- <module name="UnnecessaryParentheses"/> -->

    <!-- Checks for class design -->
    <!-- See https://checkstyle.org/config_design.html -->
    <module name="FinalClass" />
    <module name="HideUtilityClassConstructor" />
    <module name="InterfaceIsType" />
    <module name="VisibilityModifier">
      <property name="protectedAllowed" value="true" />
    </module>

    <!-- Miscellaneous other checks. -->
    <!-- See https://checkstyle.org/config_misc.html -->
    <module name="ArrayTypeStyle" />
    <module name="TodoComment">
      <property name="severity" value="info" />
    </module>
    <module name="UpperEll" />
    <module name="ImportOrder">
      <property name="option" value="top"/>
      <property name="groups" value="java,javax,junit,org"/>
      <property name="ordered" value="true"/>
      <property name="separated" value="true"/>
    </module>

  </module>

</module>
