This is an automated email from the ASF dual-hosted git repository.

pradeep pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ranger.git


The following commit(s) were added to refs/heads/master by this push:
     new 23b30be  RANGER-2588: Integrate Apache maven checkstyle plugin to 
Ranger
23b30be is described below

commit 23b30beed5b7501627c3288275a9cde73048b449
Author: Pradeep <[email protected]>
AuthorDate: Wed Jan 29 13:34:21 2020 +0530

    RANGER-2588: Integrate Apache maven checkstyle plugin to Ranger
---
 dev-support/checkstyle-java-header.txt  |  18 +++
 dev-support/checkstyle-suppressions.xml |  25 ++++
 dev-support/checkstyle.xml              | 243 ++++++++++++++++++++++++++++++++
 pom.xml                                 |  32 ++++-
 4 files changed, 317 insertions(+), 1 deletion(-)

diff --git a/dev-support/checkstyle-java-header.txt 
b/dev-support/checkstyle-java-header.txt
new file mode 100644
index 0000000..eaa97d7
--- /dev/null
+++ b/dev-support/checkstyle-java-header.txt
@@ -0,0 +1,18 @@
+/*
+ * 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.
+ */
\ No newline at end of file
diff --git a/dev-support/checkstyle-suppressions.xml 
b/dev-support/checkstyle-suppressions.xml
new file mode 100644
index 0000000..0415e48
--- /dev/null
+++ b/dev-support/checkstyle-suppressions.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<!--
+   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.
+-->
+<!DOCTYPE suppressions PUBLIC
+"-//Puppy Crawl//DTD Suppressions 1.1//EN"
+"http://www.puppycrawl.com/dtds/suppressions_1_1.dtd";>
+
+<suppressions>
+    <suppress files="[\\/]generated-sources[\\/]" checks="[a-zA-Z0-9]*"/>
+    <suppress files="[\\/]surefire-reports[\\/]" checks="[a-zA-Z0-9]*"/>
+</suppressions>
diff --git a/dev-support/checkstyle.xml b/dev-support/checkstyle.xml
new file mode 100644
index 0000000..4d7f134
--- /dev/null
+++ b/dev-support/checkstyle.xml
@@ -0,0 +1,243 @@
+<?xml version="1.0"?>
+<!--
+   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.
+-->
+
+
+<!DOCTYPE module PUBLIC
+        "-//Puppy Crawl//DTD Check Configuration 1.2//EN"
+        "http://www.puppycrawl.com/dtds/configuration_1_2.dtd";>
+
+<!--
+
+  Checkstyle configuration for Beacon that is based on the sun_checks.xml file
+  that is bundled with Checkstyle and includes checks for:
+
+    - 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
+
+  Checkstyle is very configurable. Be sure to read the documentation at
+  http://checkstyle.sf.net (or in your downloaded distribution).
+
+  Most Checks are configurable, be sure to consult the documentation.
+
+  To completely disable a check, just comment it out or delete it from the 
file.
+
+  Finally, it is worth reading the documentation.
+
+-->
+
+<module name="Checker">
+
+    <!-- Checks that a package.html file exists for each package.     -->
+    <!-- See http://checkstyle.sf.net/config_javadoc.html#PackageHtml -->
+    <!-- module name="PackageHtml"/ -->
+
+    <!-- Checks whether files end with a new line.                        -->
+    <!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile -->
+    <!-- <module name="NewlineAtEndOfFile"/> -->
+
+    <!-- Checks for Headers                                -->
+    <!-- See http://checkstyle.sf.net/config_header.html   -->
+    <!-- <module name="Header">
+        <property name="headerFile" value="${checkstyle.header.file}"/>
+        <property name="fileExtensions" value="java"/>
+    </module> -->
+
+       <module name="FileLength">
+        <property name="max" value="6000"/>
+    </module>
+    <!-- <module name="FileTabCharacter"/> -->
+
+    <module name="TreeWalker">
+        <!-- Checks for Javadoc comments.                     -->
+        <!-- See http://checkstyle.sf.net/config_javadoc.html -->
+        <!-- <module name="JavadocType">
+            <property name="scope" value="public"/>
+            <property name="allowMissingParamTags" value="true"/>
+        </module> -->
+        <!-- <module name="JavadocStyle"/> -->
+
+        <!-- <module name="SuperClone"/> -->
+        <!-- <module name="SuperFinalize"/> -->
+
+        <!-- Checks for Naming Conventions.                  -->
+        <!-- See http://checkstyle.sf.net/config_naming.html -->
+        <!-- <module name="ConstantName"/> -->
+        <!-- <module name="ClassTypeParameterName">
+            <property name="format" value="^[A-Z]+$"/>
+        </module> -->
+        <!-- <module name="LocalFinalVariableName"> -->
+            <!--<property name="format" value="^[A-Z][_A-Z0-9]*$"/>-->
+        <!--</module>-->
+        <!-- <module name="LocalVariableName"/> -->
+        <!-- <module name="MemberName"/> -->
+        <!-- <module name="MethodName"/> -->
+        <!-- <module name="MethodTypeParameterName">
+            <property name="format" value="^[A-Z]+$"/>
+        </module> -->
+        <!-- <module name="PackageName"/> -->
+        <!-- <module name="ParameterName"/> -->
+        <!-- <module name="StaticVariableName"/> -->
+        <!-- <module name="TypeName"/> -->
+
+        <!-- Checks for imports                              -->
+        <!-- See http://checkstyle.sf.net/config_import.html -->
+        <!-- <module name="IllegalImport"/> -->
+        <!-- defaults to sun.* packages -->
+        <!-- <module name="RedundantImport"/> -->
+        <!-- <module name="UnusedImports"/> -->
+        <!-- <module name="AvoidStarImport">
+            <property name="allowClassImports" value="false"/>
+        </module> -->
+
+
+        <!-- Checks for Size Violations.                    -->
+        <!-- See http://checkstyle.sf.net/config_sizes.html -->
+        <!-- <module name="LineLength">
+            <property name="max" value="120"/>
+        </module> -->
+        <!-- <module name="MethodLength">
+            <property name="max" value="200"/>
+        </module> -->
+        <!-- <module name="ParameterNumber">
+            <property name="max" value="8"/>
+        </module> -->
+        <!-- <module name="OuterTypeNumber"/> -->
+
+        <!-- Checks for whitespace                               -->
+        <!-- See http://checkstyle.sf.net/config_whitespace.html -->
+        <!-- <module name="GenericWhitespace"/> -->
+        <!-- <module name="EmptyForIteratorPad"/> -->
+        <!-- <module name="MethodParamPad"/> -->
+        <!-- <module name="WhitespaceAround">
+            <property name="tokens" value="LITERAL_IF"/>
+        </module> -->
+        <!-- <module name="NoWhitespaceAfter">
+            <property name="tokens"
+                      value="BNOT, DEC, DOT, INC, LNOT, UNARY_MINUS, 
UNARY_PLUS"/>
+        </module> -->
+        <!-- <module name="NoWhitespaceBefore"/> -->
+        <!-- <module name="OperatorWrap"/> -->
+        <!-- <module name="ParenPad"/> -->
+        <!-- <module name="TypecastParenPad"/> -->
+        <!-- <module name="WhitespaceAfter"> 
+            <property name="tokens" value="COMMA, SEMI"/>
+        </module> -->
+
+        <!-- <module name="Regexp">
+            <property name="format" value="[ \t]+$"/>
+            <property name="illegalPattern" value="true"/>
+            <property name="message" value="Trailing whitespace"/>
+        </module> -->
+
+        <!-- Modifier Checks                                    -->
+        <!-- See http://checkstyle.sf.net/config_modifiers.html -->
+        <!-- <module name="ModifierOrder"/> -->
+        <!-- <module name="RedundantModifier"/> -->
+
+
+        <!-- Checks for blocks. You know, those {}'s         -->
+        <!-- See http://checkstyle.sf.net/config_blocks.html -->
+        <!-- <module name="AvoidNestedBlocks"/> -->
+        <!-- catch blocks need a statement or a comment. -->
+        <!-- <module name="EmptyBlock">
+            <property name="option" value="text"/>
+            <property name="tokens" value="LITERAL_CATCH"/>
+        </module> -->
+        <!-- all other blocks need a real statement. -->
+        <!-- <module name="EmptyBlock">
+            <property name="option" value="stmt"/>
+            <property name="tokens" value="LITERAL_DO, LITERAL_ELSE, 
LITERAL_FINALLY,
+          LITERAL_IF, LITERAL_FOR, LITERAL_TRY, LITERAL_WHILE, INSTANCE_INIT,
+          STATIC_INIT"/>
+        </module> -->
+        <!-- <module name="LeftCurly"/> -->
+        <!-- <module name="NeedBraces"/> -->
+        <!-- <module name="RightCurly"/> -->
+
+
+        <!-- Checks for common coding problems               -->
+        <!-- See http://checkstyle.sf.net/config_coding.html -->
+        <!-- module name="AvoidInlineConditionals"/-->
+        <!-- DoubleCheckedLocking check is no longer required. See 
http://checkstyle.sourceforge.net/releasenotes.html -->
+        <!-- module name="DoubleCheckedLocking"/-->
+        <!--<module name="EmptyStatement"/> -->
+        <!--<module name="EqualsHashCode"/> -->
+        <!--<module name="StringLiteralEquality"/> -->
+        <!--<module name="HiddenField">
+            <property name="ignoreConstructorParameter" value="true"/>
+            <property name="ignoreAbstractMethods" value="true"/>
+            <property name="ignoreSetter" value="true"/>
+        </module> -->
+        <!--<module name="IllegalInstantiation"/> -->
+        <!--<module name="InnerAssignment"/> -->
+        <!--<module name="MissingSwitchDefault"/> -->
+        <!--<module name="SimplifyBooleanExpression"/> -->
+        <!--<module name="SimplifyBooleanReturn"/> -->
+        <!--<module name="DefaultComesLast"/> -->
+
+        <!-- Checks for class design                         -->
+        <!-- See http://checkstyle.sf.net/config_design.html -->
+        <!--<module name="HideUtilityClassConstructor"/> -->
+        <!--<module name="InterfaceIsType"/> -->
+        <!--<module name="VisibilityModifier">
+            <property name="protectedAllowed" value="true"/>
+        </module> -->
+        <!--<module name="MissingOverride"/> -->
+
+
+        <!-- Miscellaneous other checks.                   -->
+        <!-- See http://checkstyle.sf.net/config_misc.html -->
+        <!--<module name="ArrayTypeStyle"/> -->
+        <!--<module name="ArrayTrailingComma"/> -->
+        <!--
+          This generates too many false-positives on wrapped 'throws' clauses
+          to be really useful. Disabled for now.
+
+          Beacon style is:
+          * Spaces, not tabs.
+          * Indent by four spaces.
+          * Indent by four spaces when wrapping a line.
+        -->
+        <!--<module name="Indentation">
+            <property name="basicOffset" value="4"/>
+            <property name="caseIndent" value="4"/>
+            <property name="throwsIndent" value="8"/>
+        </module> -->
+        <!--<module name="TodoComment"/> -->
+        <!--<module name="UpperEll"/> -->
+
+        <module name="FileContentsHolder"/>
+    </module>
+
+    <!-- allow warnings to be suppressed -->
+    <module name="SuppressionCommentFilter">
+        <property name="offCommentFormat" value="SUSPEND CHECKSTYLE CHECK 
ParameterNumberCheck|VisibilityModifierCheck|HiddenFieldCheck|MethodName|LineLengthCheck"/>
+        <property name="onCommentFormat" value="RESUME CHECKSTYLE CHECK 
ParameterNumberCheck|VisibilityModifierCheck|HiddenFieldCheck|MethodName|LineLengthCheck"/>
+        <property name="checkFormat" 
value="ParameterNumberCheck|VisibilityModifierCheck|HiddenFieldCheck|MethodName|LineLengthCheck"/>
+    </module>
+
+</module>
diff --git a/pom.xml b/pom.xml
index f4cc712..e574d1b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -212,7 +212,8 @@
         <net.minidev.asm.version>1.0.2</net.minidev.asm.version>
         <org.bouncycastle.bcprov-jdk15on>1.59</org.bouncycastle.bcprov-jdk15on>
         <org.bouncycastle.bcpkix-jdk15on>1.59</org.bouncycastle.bcpkix-jdk15on>
-
+        <checkstyle.plugin.version>2.17</checkstyle.plugin.version>
+        <checkstyle.version>6.11.2</checkstyle.version>
     </properties>
     <profiles>
         <profile>
@@ -1016,6 +1017,35 @@
                     <skipAssembly>true</skipAssembly>
                 </configuration>
             </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <version>${checkstyle.plugin.version}</version>
+                <dependencies>
+                    <dependency>
+                        <groupId>com.puppycrawl.tools</groupId>
+                        <artifactId>checkstyle</artifactId>
+                        <version>${checkstyle.version}</version>
+                    </dependency>
+                </dependencies>
+                <executions>
+                    <execution>
+                        <id>checkstyle-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <phase>verify</phase>
+                        <configuration>
+                            <consoleOutput>true</consoleOutput>
+                            
<includeTestSourceDirectory>true</includeTestSourceDirectory>
+                            
<configLocation>./dev-support/checkstyle.xml</configLocation>
+                            
<headerLocation>./dev-support/checkstyle-java-header.txt</headerLocation>
+                            
<suppressionsLocation>./dev-support/checkstyle-suppressions.xml</suppressionsLocation>
+                            <failOnViolation>true</failOnViolation>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 </project>

Reply via email to