1+ <?xml version =" 1.0" ?>
2+ <!DOCTYPE module PUBLIC
3+ "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
4+ "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
5+
6+ <!--
7+ Checkstyle configuration that checks the Google coding conventions from Google Java Style
8+ that can be found at https://google.github.io/styleguide/javaguide.html.
9+
10+ Checkstyle is very configurable. Be sure to read the documentation at
11+ http://checkstyle.sf.net (or in your downloaded distribution).
12+
13+ To completely disable a check, just comment it out or delete it from the file.
14+
15+ Authors: Max Vetrenko, Ruslan Diachenko, Roman Ivanov.
16+ -->
17+
18+ <module name = " Checker" >
19+ <property name =" charset" value =" UTF-8" />
20+
21+ <property name =" severity" value =" warning" />
22+
23+ <property name =" fileExtensions" value =" java, properties, xml" />
24+ <!-- Checks for whitespace -->
25+ <!-- See http://checkstyle.sf.net/config_whitespace.html -->
26+ <module name =" FileTabCharacter" >
27+ <property name =" eachLine" value =" true" />
28+ </module >
29+
30+ <module name =" TreeWalker" >
31+ <module name =" OuterTypeFilename" />
32+ <module name =" IllegalTokenText" >
33+ <property name =" tokens" value =" STRING_LITERAL, CHAR_LITERAL" />
34+ <property name =" format" value =" \\u00(08|09|0(a|A)|0(c|C)|0(d|D)|22|27|5(C|c))|\\(0(10|11|12|14|15|42|47)|134)" />
35+ <property name =" message" value =" Avoid using corresponding octal or Unicode escape." />
36+ </module >
37+ <module name =" AvoidEscapedUnicodeCharacters" >
38+ <property name =" allowEscapesForControlCharacters" value =" true" />
39+ <property name =" allowByTailComment" value =" true" />
40+ <property name =" allowNonPrintableEscapes" value =" true" />
41+ </module >
42+ <module name =" LineLength" >
43+ <property name =" max" value =" 100" />
44+ <property name =" ignorePattern" value =" ^package.*|^import.*|a href|href|http://|https://|ftp://" />
45+ </module >
46+ <module name =" AvoidStarImport" />
47+ <module name =" OneTopLevelClass" />
48+ <module name =" NoLineWrap" />
49+ <module name =" EmptyBlock" >
50+ <property name =" option" value =" TEXT" />
51+ <property name =" tokens" value =" LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH" />
52+ </module >
53+ <module name =" NeedBraces" />
54+ <module name =" LeftCurly" >
55+ <property name =" maxLineLength" value =" 100" />
56+ </module >
57+ <module name =" RightCurly" />
58+ <module name =" RightCurly" >
59+ <property name =" option" value =" alone" />
60+ <property name =" tokens" value =" CLASS_DEF, METHOD_DEF, CTOR_DEF, LITERAL_FOR, LITERAL_WHILE, LITERAL_DO, STATIC_INIT, INSTANCE_INIT" />
61+ </module >
62+ <module name =" WhitespaceAround" >
63+ <property name =" allowEmptyConstructors" value =" true" />
64+ <property name =" allowEmptyMethods" value =" true" />
65+ <property name =" allowEmptyTypes" value =" true" />
66+ <property name =" allowEmptyLoops" value =" true" />
67+ <message key =" ws.notFollowed"
68+ value =" WhitespaceAround: ''{0}'' is not followed by whitespace. Empty blocks may only be represented as '{}' when not part of a multi-block statement (4.1.3)" />
69+ <message key =" ws.notPreceded"
70+ value =" WhitespaceAround: ''{0}'' is not preceded with whitespace." />
71+ </module >
72+ <module name =" OneStatementPerLine" />
73+ <module name =" MultipleVariableDeclarations" />
74+ <module name =" ArrayTypeStyle" />
75+ <module name =" MissingSwitchDefault" />
76+ <module name =" FallThrough" />
77+ <module name =" UpperEll" />
78+ <module name =" ModifierOrder" />
79+ <module name =" EmptyLineSeparator" >
80+ <property name =" allowNoEmptyLineBetweenFields" value =" true" />
81+ </module >
82+ <module name =" SeparatorWrap" >
83+ <property name =" tokens" value =" DOT" />
84+ <property name =" option" value =" nl" />
85+ </module >
86+ <module name =" SeparatorWrap" >
87+ <property name =" tokens" value =" COMMA" />
88+ <property name =" option" value =" EOL" />
89+ </module >
90+ <module name =" PackageName" >
91+ <property name =" format" value =" ^[a-z]+(\.[a-z][a-z0-9]*)*$" />
92+ <message key =" name.invalidPattern"
93+ value =" Package name ''{0}'' must match pattern ''{1}''." />
94+ </module >
95+ <module name =" TypeName" >
96+ <message key =" name.invalidPattern"
97+ value =" Type name ''{0}'' must match pattern ''{1}''." />
98+ </module >
99+ <module name =" MemberName" >
100+ <property name =" format" value =" ^[a-z][a-z0-9][a-zA-Z0-9]*$" />
101+ <message key =" name.invalidPattern"
102+ value =" Member name ''{0}'' must match pattern ''{1}''." />
103+ </module >
104+ <module name =" ParameterName" >
105+ <property name =" format" value =" ^[a-z][a-z0-9][a-zA-Z0-9]*$" />
106+ <message key =" name.invalidPattern"
107+ value =" Parameter name ''{0}'' must match pattern ''{1}''." />
108+ </module >
109+ <module name =" CatchParameterName" >
110+ <property name =" format" value =" ^[a-z][a-z0-9][a-zA-Z0-9]*$" />
111+ <message key =" name.invalidPattern"
112+ value =" Catch parameter name ''{0}'' must match pattern ''{1}''." />
113+ </module >
114+ <module name =" LocalVariableName" >
115+ <property name =" tokens" value =" VARIABLE_DEF" />
116+ <property name =" format" value =" ^[a-z][a-z0-9][a-zA-Z0-9]*$" />
117+ <property name =" allowOneCharVarInForLoop" value =" true" />
118+ <message key =" name.invalidPattern"
119+ value =" Local variable name ''{0}'' must match pattern ''{1}''." />
120+ </module >
121+ <module name =" ClassTypeParameterName" >
122+ <property name =" format" value =" (^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)" />
123+ <message key =" name.invalidPattern"
124+ value =" Class type name ''{0}'' must match pattern ''{1}''." />
125+ </module >
126+ <module name =" MethodTypeParameterName" >
127+ <property name =" format" value =" (^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)" />
128+ <message key =" name.invalidPattern"
129+ value =" Method type name ''{0}'' must match pattern ''{1}''." />
130+ </module >
131+ <module name =" NoFinalizer" />
132+ <module name =" GenericWhitespace" >
133+ <message key =" ws.followed"
134+ value =" GenericWhitespace ''{0}'' is followed by whitespace." />
135+ <message key =" ws.preceded"
136+ value =" GenericWhitespace ''{0}'' is preceded with whitespace." />
137+ <message key =" ws.illegalFollow"
138+ value =" GenericWhitespace ''{0}'' should followed by whitespace." />
139+ <message key =" ws.notPreceded"
140+ value =" GenericWhitespace ''{0}'' is not preceded with whitespace." />
141+ </module >
142+ <module name =" Indentation" >
143+ <property name =" basicOffset" value =" 2" />
144+ <property name =" braceAdjustment" value =" 0" />
145+ <property name =" caseIndent" value =" 2" />
146+ <property name =" throwsIndent" value =" 4" />
147+ <property name =" lineWrappingIndentation" value =" 4" />
148+ <property name =" arrayInitIndent" value =" 2" />
149+ </module >
150+ <module name =" AbbreviationAsWordInName" >
151+ <property name =" ignoreFinal" value =" false" />
152+ <property name =" allowedAbbreviationLength" value =" 1" />
153+ </module >
154+ <module name =" OverloadMethodsDeclarationOrder" />
155+ <module name =" VariableDeclarationUsageDistance" />
156+ <module name =" CustomImportOrder" >
157+ <property name =" specialImportsRegExp" value =" com.google" />
158+ <property name =" sortImportsInGroupAlphabetically" value =" true" />
159+ <property name =" customImportOrderRules" value =" STATIC###SPECIAL_IMPORTS###THIRD_PARTY_PACKAGE###STANDARD_JAVA_PACKAGE" />
160+ </module >
161+ <module name =" MethodParamPad" />
162+ <module name =" OperatorWrap" >
163+ <property name =" option" value =" NL" />
164+ <property name =" tokens" value =" BAND, BOR, BSR, BXOR, DIV, EQUAL, GE, GT, LAND, LE, LITERAL_INSTANCEOF, LOR, LT, MINUS, MOD, NOT_EQUAL, PLUS, QUESTION, SL, SR, STAR " />
165+ </module >
166+ <module name =" AnnotationLocation" >
167+ <property name =" tokens" value =" CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF" />
168+ </module >
169+ <module name =" AnnotationLocation" >
170+ <property name =" tokens" value =" VARIABLE_DEF" />
171+ <property name =" allowSamelineMultipleAnnotations" value =" true" />
172+ </module >
173+ <module name =" NonEmptyAtclauseDescription" />
174+ <module name =" JavadocTagContinuationIndentation" />
175+ <module name =" SummaryJavadoc" >
176+ <property name =" forbiddenSummaryFragments" value =" ^@return the *|^This method returns |^A [{]@code [a-zA-Z0-9]+[}]( is a )" />
177+ </module >
178+ <module name =" JavadocParagraph" />
179+ <module name =" AtclauseOrder" >
180+ <property name =" tagOrder" value =" @param, @return, @throws, @deprecated" />
181+ <property name =" target" value =" CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF, VARIABLE_DEF" />
182+ </module >
183+ <module name =" JavadocMethod" >
184+ <property name =" scope" value =" public" />
185+ <property name =" allowMissingParamTags" value =" true" />
186+ <property name =" allowMissingThrowsTags" value =" true" />
187+ <property name =" allowMissingReturnTag" value =" true" />
188+ <property name =" minLineCount" value =" 2" />
189+ <property name =" allowedAnnotations" value =" Override, Test" />
190+ <property name =" allowThrowsTagsForSubclasses" value =" true" />
191+ </module >
192+ <module name =" MethodName" >
193+ <property name =" format" value =" ^[a-z][a-z0-9][a-zA-Z0-9_]*$" />
194+ <message key =" name.invalidPattern"
195+ value =" Method name ''{0}'' must match pattern ''{1}''." />
196+ </module >
197+ <module name =" SingleLineJavadoc" >
198+ <property name =" ignoreInlineTags" value =" false" />
199+ </module >
200+ <module name =" EmptyCatchBlock" >
201+ <property name =" exceptionVariableName" value =" expected" />
202+ </module >
203+ <module name =" CommentsIndentation" />
204+ </module >
205+ </module >
0 commit comments