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

hawkular-checkstyle.checkstyle.xml Maven / Gradle / Ivy

<?xml version="1.0"?>
<!--

    Copyright 2014-2015 Red Hat, Inc. and/or its affiliates
    and other contributors as indicated by the @author tags.

    Licensed 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.

-->
<!DOCTYPE module PUBLIC
    "-//Puppy Crawl//DTD Check Configuration 1.2//EN"
    "http://www.puppycrawl.com/dtds/configuration_1_2.dtd">

<module name="Checker">
  <module name="SuppressionFilter">
    <property name="file" value="${checkstyle.suppressions.file}" />
  </module>

  <module name="FileTabCharacter">
    <property name="eachLine" value="true" />
  </module>

  <module name="RegexpSingleline">
    <!-- \s matches whitespace character, $ matches end of line. -->
    <property name="format" value="\s+$" />
    <property name="message" value="Line has trailing spaces." />
  </module>

  <module name="TreeWalker">

    <property name="cacheFile" value="${checkstyle.cache.file}" />

    <!-- Checks for imports -->
    <module name="AvoidStarImport">
      <property name="allowStaticMemberImports" value="true" />
    </module>
    <module name="RedundantImport" />

    <module name="UnusedImports">
      <property name="processJavadoc" value="true" />
    </module>

    <module name="ImportOrder">
        <property name="groups" value="/^javax?\./,org,com"/>
        <property name="ordered" value="true"/>
        <property name="separated" value="true"/>
        <property name="option" value="top"/>
    </module>

    <module name="IllegalImport">
      <property name="illegalPkgs" value="junit.framework" />
    </module>

    <!-- Modifier Checks -->
    <module name="ModifierOrder" />
    <module name="RedundantModifier" />

    <!-- Checks for blocks. You know, those {}'s -->
    <module name="LeftCurly">
      <property name="option" value="eol" />
      <property name="tokens"
        value="CLASS_DEF,CTOR_DEF,INTERFACE_DEF,METHOD_DEF,LITERAL_SWITCH,STATIC_INIT" />
    </module>

    <!-- Checks for common coding problems -->
    <!-- Disabled until http://sourceforge.net/tracker/?func=detail&aid=2843447&group_id=29721&atid=397078
      is fixed -->
    <!--<module name="DoubleCheckedLocking"/> -->
    <module name="EmptyStatement" />
    <module name="EqualsHashCode" />
    <module name="IllegalInstantiation" />

    <!-- Miscellaneous other checks. -->
    <module name="UpperEll" />
    <module name="PackageAnnotation" />
    <module name="CovariantEquals" />
    <module name="ArrayTypeStyle" />

    <module name="LineLength">
      <property name="max" value="120" />
    </module>

    <!-- Package names should be all lower case. Examples of legal package names:
          org.hawkular.my.coolpackage
          org.hawkular.mycoolpackage
          org.hawkular.my.cool.package
        Do not use camelCase.
        Use underscores only as the last resort to make an alien package name legal
    -->
    <module name="PackageName">
      <property name="format" value="^org\.hawkular(\.[a-z][a-z0-9_]*)*$" />
    </module>
  </module>

</module>




© 2015 - 2025 Weber Informatics LLC | Privacy Policy