1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package com.puppycrawl.tools.checkstyle;
21
22 import java.io.IOException;
23 import java.util.HashMap;
24 import java.util.HashSet;
25 import java.util.LinkedHashSet;
26 import java.util.List;
27 import java.util.Map;
28 import java.util.Map.Entry;
29 import java.util.Set;
30 import java.util.function.Supplier;
31 import java.util.stream.Collectors;
32 import java.util.stream.Stream;
33
34 import com.puppycrawl.tools.checkstyle.api.CheckstyleException;
35 import com.puppycrawl.tools.checkstyle.utils.ModuleReflectionUtil;
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 public class PackageObjectFactory implements ModuleFactory {
52
53
54
55
56 public enum ModuleLoadOption {
57
58
59
60
61 SEARCH_REGISTERED_PACKAGES,
62
63
64
65
66
67 TRY_IN_ALL_REGISTERED_PACKAGES,
68
69 }
70
71
72 public static final String BASE_PACKAGE = "com.puppycrawl.tools.checkstyle";
73
74
75 public static final String UNABLE_TO_INSTANTIATE_EXCEPTION_MESSAGE =
76 "PackageObjectFactory.unableToInstantiateExceptionMessage";
77
78
79 public static final String AMBIGUOUS_MODULE_NAME_EXCEPTION_MESSAGE =
80 "PackageObjectFactory.ambiguousModuleNameExceptionMessage";
81
82
83 public static final String CHECK_SUFFIX = "Check";
84
85
86 public static final String PACKAGE_SEPARATOR = ".";
87
88
89 public static final String NULL_LOADER_MESSAGE = "moduleClassLoader must not be null";
90
91
92 public static final String NULL_PACKAGE_MESSAGE = "package name must not be null";
93
94
95 public static final String STRING_SEPARATOR = ", ";
96
97
98 private static final Map<String, String> NAME_TO_FULL_MODULE_NAME = new HashMap<>();
99
100
101 private final Set<String> packages;
102
103
104 private final ClassLoader moduleClassLoader;
105
106
107 private Map<String, Set<String>> thirdPartyNameToFullModuleNames;
108
109
110 private ModuleLoadOption moduleLoadOption;
111
112 static {
113 fillShortToFullModuleNamesMap();
114 }
115
116
117
118
119
120
121
122
123 public PackageObjectFactory(Set<String> packageNames, ClassLoader moduleClassLoader) {
124 this(packageNames, moduleClassLoader, ModuleLoadOption.SEARCH_REGISTERED_PACKAGES);
125 }
126
127
128
129
130
131
132
133
134
135 public PackageObjectFactory(String packageName, ClassLoader moduleClassLoader) {
136 if (moduleClassLoader == null) {
137 throw new IllegalArgumentException(NULL_LOADER_MESSAGE);
138 }
139 if (packageName == null) {
140 throw new IllegalArgumentException(NULL_PACKAGE_MESSAGE);
141 }
142
143 packages = Set.of(packageName);
144 this.moduleClassLoader = moduleClassLoader;
145 }
146
147
148
149
150
151
152
153
154
155
156 public PackageObjectFactory(Set<String> packageNames, ClassLoader moduleClassLoader,
157 ModuleLoadOption moduleLoadOption) {
158 if (moduleClassLoader == null) {
159 throw new IllegalArgumentException(NULL_LOADER_MESSAGE);
160 }
161 if (packageNames.contains(null)) {
162 throw new IllegalArgumentException(NULL_PACKAGE_MESSAGE);
163 }
164
165
166 packages = new LinkedHashSet<>(packageNames);
167 this.moduleClassLoader = moduleClassLoader;
168 this.moduleLoadOption = moduleLoadOption;
169 }
170
171
172
173
174
175
176
177
178
179
180
181
182 @Override
183 public Object createModule(String name) throws CheckstyleException {
184 Object instance = null;
185
186 if (!name.contains(PACKAGE_SEPARATOR)) {
187 instance = createFromStandardCheckSet(name);
188
189 if (instance == null) {
190 instance = createObjectFromClassPath(name);
191 }
192 }
193 if (instance == null) {
194 instance = createObject(name);
195 }
196 if (instance == null
197 && moduleLoadOption == ModuleLoadOption.TRY_IN_ALL_REGISTERED_PACKAGES) {
198 instance = createModuleByTryInEachPackage(name);
199 }
200 if (instance == null) {
201 String attemptedNames = null;
202 if (!name.contains(PACKAGE_SEPARATOR)) {
203 final String nameCheck = name + CHECK_SUFFIX;
204 attemptedNames = joinPackageNamesWithClassName(name, packages)
205 + STRING_SEPARATOR + nameCheck + STRING_SEPARATOR
206 + joinPackageNamesWithClassName(nameCheck, packages);
207 }
208 final LocalizedMessage exceptionMessage = new LocalizedMessage(
209 Definitions.CHECKSTYLE_BUNDLE, getClass(),
210 UNABLE_TO_INSTANTIATE_EXCEPTION_MESSAGE, name, attemptedNames);
211 throw new CheckstyleException(exceptionMessage.getMessage());
212 }
213 return instance;
214 }
215
216
217
218
219
220
221
222
223 private Object createFromStandardCheckSet(String name) throws CheckstyleException {
224 final String fullModuleName = NAME_TO_FULL_MODULE_NAME.get(name);
225 Object instance = null;
226 if (fullModuleName == null) {
227 final String fullCheckModuleName =
228 NAME_TO_FULL_MODULE_NAME.get(name + CHECK_SUFFIX);
229 if (fullCheckModuleName != null) {
230 instance = createObject(fullCheckModuleName);
231 }
232 }
233 else {
234 instance = createObject(fullModuleName);
235 }
236 return instance;
237 }
238
239
240
241
242
243
244
245
246 private Object createObjectFromClassPath(String name)
247 throws CheckstyleException {
248 thirdPartyNameToFullModuleNames = lazyLoad(
249 thirdPartyNameToFullModuleNames,
250 () -> generateThirdPartyNameToFullModuleName(moduleClassLoader)
251 );
252 final Set<String> fullModuleNames = thirdPartyNameToFullModuleNames.get(name);
253 Object instance = null;
254 if (fullModuleNames == null) {
255 final Set<String> fullCheckModuleNames =
256 thirdPartyNameToFullModuleNames.get(name + CHECK_SUFFIX);
257 if (fullCheckModuleNames != null) {
258 instance = createObjectFromFullModuleNames(name, fullCheckModuleNames);
259 }
260 }
261 else {
262 instance = createObjectFromFullModuleNames(name, fullModuleNames);
263 }
264 return instance;
265 }
266
267
268
269
270
271
272
273
274
275
276
277
278 private Object createObjectFromFullModuleNames(String name, Set<String> fullModuleNames)
279 throws CheckstyleException {
280 final Object returnValue;
281 if (fullModuleNames.size() == 1) {
282 returnValue = createObject(fullModuleNames.iterator().next());
283 }
284 else {
285 final String optionalNames = fullModuleNames.stream()
286 .sorted()
287 .collect(Collectors.joining(STRING_SEPARATOR));
288 final LocalizedMessage exceptionMessage = new LocalizedMessage(
289 Definitions.CHECKSTYLE_BUNDLE, getClass(),
290 AMBIGUOUS_MODULE_NAME_EXCEPTION_MESSAGE, name, optionalNames);
291 throw new CheckstyleException(exceptionMessage.getMessage());
292 }
293 return returnValue;
294 }
295
296
297
298
299
300
301
302
303
304 private Map<String, Set<String>> generateThirdPartyNameToFullModuleName(ClassLoader loader) {
305 Map<String, Set<String>> returnValue;
306 try {
307 returnValue = ModuleReflectionUtil.getCheckstyleModules(packages, loader).stream()
308 .collect(Collectors.groupingBy(Class::getSimpleName,
309 Collectors.mapping(
310 Class::getCanonicalName,
311 Collectors.toCollection(HashSet::new))));
312 }
313 catch (IOException ignore) {
314 returnValue = Map.of();
315 }
316 return returnValue;
317 }
318
319
320
321
322
323
324
325 public static String getShortFromFullModuleNames(String fullName) {
326 return NAME_TO_FULL_MODULE_NAME
327 .entrySet()
328 .stream()
329 .filter(entry -> entry.getValue().equals(fullName))
330 .findFirst()
331 .map(Entry::getKey)
332 .orElse(fullName);
333 }
334
335
336
337
338
339
340
341
342 private static String joinPackageNamesWithClassName(String className, Set<String> packages) {
343 return packages.stream().collect(
344 Collectors.joining(PACKAGE_SEPARATOR + className + STRING_SEPARATOR, "",
345 PACKAGE_SEPARATOR + className));
346 }
347
348
349
350
351
352
353
354
355 private Object createObject(String className) throws CheckstyleException {
356 Class<?> clazz = null;
357
358 try {
359 clazz = Class.forName(className, true, moduleClassLoader);
360 }
361 catch (final ReflectiveOperationException | NoClassDefFoundError ignored) {
362
363 }
364
365 Object instance = null;
366
367 if (clazz != null) {
368 try {
369 instance = clazz.getDeclaredConstructor().newInstance();
370 }
371 catch (final ReflectiveOperationException exc) {
372 throw new CheckstyleException("Unable to instantiate " + className, exc);
373 }
374 }
375
376 return instance;
377 }
378
379
380
381
382
383
384
385
386
387 private Object createModuleByTryInEachPackage(String name) throws CheckstyleException {
388 final List<String> possibleNames = packages.stream()
389 .map(packageName -> packageName + PACKAGE_SEPARATOR + name)
390 .flatMap(className -> Stream.of(className, className + CHECK_SUFFIX))
391 .toList();
392 Object instance = null;
393 for (String possibleName : possibleNames) {
394 instance = createObject(possibleName);
395 if (instance != null) {
396 break;
397 }
398 }
399 return instance;
400 }
401
402
403
404
405
406
407
408
409
410 private static <T> T lazyLoad(T object, Supplier<T> supplier) {
411 final T result;
412 if (object == null) {
413 result = supplier.get();
414 }
415 else {
416 result = object;
417 }
418 return result;
419 }
420
421
422
423
424 private static void fillShortToFullModuleNamesMap() {
425 fillChecksFromAnnotationPackage();
426 fillChecksFromBlocksPackage();
427 fillChecksFromCodingPackage();
428 fillChecksFromDesignPackage();
429 fillChecksFromHeaderPackage();
430 fillChecksFromImportsPackage();
431 fillChecksFromIndentationPackage();
432 fillChecksFromJavadocPackage();
433 fillChecksFromMetricsPackage();
434 fillChecksFromModifierPackage();
435 fillChecksFromModulesPackage();
436 fillChecksFromNamingPackage();
437 fillChecksFromRegexpPackage();
438 fillChecksFromSizesPackage();
439 fillChecksFromWhitespacePackage();
440 fillModulesFromChecksPackage();
441 fillModulesFromFilefiltersPackage();
442 fillModulesFromFiltersPackage();
443 fillModulesFromCheckstylePackage();
444 }
445
446
447
448
449 private static void fillChecksFromAnnotationPackage() {
450 NAME_TO_FULL_MODULE_NAME.put("AnnotationLocationCheck",
451 BASE_PACKAGE + ".checks.annotation.AnnotationLocationCheck");
452 NAME_TO_FULL_MODULE_NAME.put("OpenjdkAnnotationLocationCheck",
453 BASE_PACKAGE + ".checks.annotation.OpenjdkAnnotationLocationCheck");
454 NAME_TO_FULL_MODULE_NAME.put("AnnotationOnSameLineCheck",
455 BASE_PACKAGE + ".checks.annotation.AnnotationOnSameLineCheck");
456 NAME_TO_FULL_MODULE_NAME.put("AnnotationUseStyleCheck",
457 BASE_PACKAGE + ".checks.annotation.AnnotationUseStyleCheck");
458 NAME_TO_FULL_MODULE_NAME.put("MissingDeprecatedCheck",
459 BASE_PACKAGE + ".checks.annotation.MissingDeprecatedCheck");
460 NAME_TO_FULL_MODULE_NAME.put("MissingOverrideCheck",
461 BASE_PACKAGE + ".checks.annotation.MissingOverrideCheck");
462 NAME_TO_FULL_MODULE_NAME.put("MissingOverrideOnRecordAccessorCheck",
463 BASE_PACKAGE + ".checks.annotation.MissingOverrideOnRecordAccessorCheck");
464 NAME_TO_FULL_MODULE_NAME.put("PackageAnnotationCheck",
465 BASE_PACKAGE + ".checks.annotation.PackageAnnotationCheck");
466 NAME_TO_FULL_MODULE_NAME.put("SuppressWarningsCheck",
467 BASE_PACKAGE + ".checks.annotation.SuppressWarningsCheck");
468 }
469
470
471
472
473 private static void fillChecksFromBlocksPackage() {
474 NAME_TO_FULL_MODULE_NAME.put("AvoidNestedBlocksCheck",
475 BASE_PACKAGE + ".checks.blocks.AvoidNestedBlocksCheck");
476 NAME_TO_FULL_MODULE_NAME.put("EmptyBlockCheck",
477 BASE_PACKAGE + ".checks.blocks.EmptyBlockCheck");
478 NAME_TO_FULL_MODULE_NAME.put("EmptyCatchBlockCheck",
479 BASE_PACKAGE + ".checks.blocks.EmptyCatchBlockCheck");
480 NAME_TO_FULL_MODULE_NAME.put("LeftCurlyCheck",
481 BASE_PACKAGE + ".checks.blocks.LeftCurlyCheck");
482 NAME_TO_FULL_MODULE_NAME.put("NeedBracesCheck",
483 BASE_PACKAGE + ".checks.blocks.NeedBracesCheck");
484 NAME_TO_FULL_MODULE_NAME.put("RightCurlyCheck",
485 BASE_PACKAGE + ".checks.blocks.RightCurlyCheck");
486 }
487
488
489
490
491
492
493 private static void fillChecksFromCodingPackage() {
494 NAME_TO_FULL_MODULE_NAME.put("ArrayTrailingCommaCheck",
495 BASE_PACKAGE + ".checks.coding.ArrayTrailingCommaCheck");
496 NAME_TO_FULL_MODULE_NAME.put("AvoidDoubleBraceInitializationCheck",
497 BASE_PACKAGE + ".checks.coding.AvoidDoubleBraceInitializationCheck");
498 NAME_TO_FULL_MODULE_NAME.put("AvoidInlineConditionalsCheck",
499 BASE_PACKAGE + ".checks.coding.AvoidInlineConditionalsCheck");
500 NAME_TO_FULL_MODULE_NAME.put("AvoidNoArgumentSuperConstructorCallCheck",
501 BASE_PACKAGE + ".checks.coding.AvoidNoArgumentSuperConstructorCallCheck");
502 NAME_TO_FULL_MODULE_NAME.put("ConstructorsDeclarationGroupingCheck",
503 BASE_PACKAGE + ".checks.coding.ConstructorsDeclarationGroupingCheck");
504 NAME_TO_FULL_MODULE_NAME.put("CovariantEqualsCheck",
505 BASE_PACKAGE + ".checks.coding.CovariantEqualsCheck");
506 NAME_TO_FULL_MODULE_NAME.put("DeclarationOrderCheck",
507 BASE_PACKAGE + ".checks.coding.DeclarationOrderCheck");
508 NAME_TO_FULL_MODULE_NAME.put("DefaultComesLastCheck",
509 BASE_PACKAGE + ".checks.coding.DefaultComesLastCheck");
510 NAME_TO_FULL_MODULE_NAME.put("EmptyStatementCheck",
511 BASE_PACKAGE + ".checks.coding.EmptyStatementCheck");
512 NAME_TO_FULL_MODULE_NAME.put("EqualsAvoidNullCheck",
513 BASE_PACKAGE + ".checks.coding.EqualsAvoidNullCheck");
514 NAME_TO_FULL_MODULE_NAME.put("EqualsHashCodeCheck",
515 BASE_PACKAGE + ".checks.coding.EqualsHashCodeCheck");
516 NAME_TO_FULL_MODULE_NAME.put("ExplicitInitializationCheck",
517 BASE_PACKAGE + ".checks.coding.ExplicitInitializationCheck");
518 NAME_TO_FULL_MODULE_NAME.put("ExpressionOverBlockLambdaCheck",
519 BASE_PACKAGE + ".checks.coding.ExpressionOverBlockLambdaCheck");
520 NAME_TO_FULL_MODULE_NAME.put("FallThroughCheck",
521 BASE_PACKAGE + ".checks.coding.FallThroughCheck");
522 NAME_TO_FULL_MODULE_NAME.put("FinalLocalVariableCheck",
523 BASE_PACKAGE + ".checks.coding.FinalLocalVariableCheck");
524 NAME_TO_FULL_MODULE_NAME.put("HiddenFieldCheck",
525 BASE_PACKAGE + ".checks.coding.HiddenFieldCheck");
526 NAME_TO_FULL_MODULE_NAME.put("IllegalCatchCheck",
527 BASE_PACKAGE + ".checks.coding.IllegalCatchCheck");
528 NAME_TO_FULL_MODULE_NAME.put("IllegalInstantiationCheck",
529 BASE_PACKAGE + ".checks.coding.IllegalInstantiationCheck");
530 NAME_TO_FULL_MODULE_NAME.put("IllegalSymbolCheck",
531 BASE_PACKAGE + ".checks.coding.IllegalSymbolCheck");
532 NAME_TO_FULL_MODULE_NAME.put("IllegalThrowsCheck",
533 BASE_PACKAGE + ".checks.coding.IllegalThrowsCheck");
534 NAME_TO_FULL_MODULE_NAME.put("IllegalTokenCheck",
535 BASE_PACKAGE + ".checks.coding.IllegalTokenCheck");
536 NAME_TO_FULL_MODULE_NAME.put("IllegalTokenTextCheck",
537 BASE_PACKAGE + ".checks.coding.IllegalTokenTextCheck");
538 NAME_TO_FULL_MODULE_NAME.put("IllegalTypeCheck",
539 BASE_PACKAGE + ".checks.coding.IllegalTypeCheck");
540 NAME_TO_FULL_MODULE_NAME.put("InnerAssignmentCheck",
541 BASE_PACKAGE + ".checks.coding.InnerAssignmentCheck");
542 NAME_TO_FULL_MODULE_NAME.put("MagicNumberCheck",
543 BASE_PACKAGE + ".checks.coding.MagicNumberCheck");
544 NAME_TO_FULL_MODULE_NAME.put("MissingCtorCheck",
545 BASE_PACKAGE + ".checks.coding.MissingCtorCheck");
546 NAME_TO_FULL_MODULE_NAME.put("MissingNullCaseInSwitchCheck",
547 BASE_PACKAGE + ".checks.coding.MissingNullCaseInSwitchCheck");
548 NAME_TO_FULL_MODULE_NAME.put("MissingSwitchDefaultCheck",
549 BASE_PACKAGE + ".checks.coding.MissingSwitchDefaultCheck");
550 NAME_TO_FULL_MODULE_NAME.put("ModifiedControlVariableCheck",
551 BASE_PACKAGE + ".checks.coding.ModifiedControlVariableCheck");
552 NAME_TO_FULL_MODULE_NAME.put("MultipleStringLiteralsCheck",
553 BASE_PACKAGE + ".checks.coding.MultipleStringLiteralsCheck");
554 NAME_TO_FULL_MODULE_NAME.put("MultipleVariableDeclarationsCheck",
555 BASE_PACKAGE + ".checks.coding.MultipleVariableDeclarationsCheck");
556 NAME_TO_FULL_MODULE_NAME.put("NestedForDepthCheck",
557 BASE_PACKAGE + ".checks.coding.NestedForDepthCheck");
558 NAME_TO_FULL_MODULE_NAME.put("NestedIfDepthCheck",
559 BASE_PACKAGE + ".checks.coding.NestedIfDepthCheck");
560 NAME_TO_FULL_MODULE_NAME.put("NestedTryDepthCheck",
561 BASE_PACKAGE + ".checks.coding.NestedTryDepthCheck");
562 NAME_TO_FULL_MODULE_NAME.put("NoCloneCheck",
563 BASE_PACKAGE + ".checks.coding.NoCloneCheck");
564 NAME_TO_FULL_MODULE_NAME.put("NoEnumTrailingCommaCheck",
565 BASE_PACKAGE + ".checks.coding.NoEnumTrailingCommaCheck");
566 NAME_TO_FULL_MODULE_NAME.put("NoFinalizerCheck",
567 BASE_PACKAGE + ".checks.coding.NoFinalizerCheck");
568 NAME_TO_FULL_MODULE_NAME.put("OneStatementPerLineCheck",
569 BASE_PACKAGE + ".checks.coding.OneStatementPerLineCheck");
570 NAME_TO_FULL_MODULE_NAME.put("OverloadMethodsDeclarationOrderCheck",
571 BASE_PACKAGE + ".checks.coding.OverloadMethodsDeclarationOrderCheck");
572 NAME_TO_FULL_MODULE_NAME.put("PackageDeclarationCheck",
573 BASE_PACKAGE + ".checks.coding.PackageDeclarationCheck");
574 NAME_TO_FULL_MODULE_NAME.put("PatternVariableAssignmentCheck",
575 BASE_PACKAGE + ".checks.coding.PatternVariableAssignmentCheck");
576 NAME_TO_FULL_MODULE_NAME.put("ParameterAssignmentCheck",
577 BASE_PACKAGE + ".checks.coding.ParameterAssignmentCheck");
578 NAME_TO_FULL_MODULE_NAME.put("RequireThisCheck",
579 BASE_PACKAGE + ".checks.coding.RequireThisCheck");
580 NAME_TO_FULL_MODULE_NAME.put("ReturnCountCheck",
581 BASE_PACKAGE + ".checks.coding.ReturnCountCheck");
582 NAME_TO_FULL_MODULE_NAME.put("SimplifyBooleanExpressionCheck",
583 BASE_PACKAGE + ".checks.coding.SimplifyBooleanExpressionCheck");
584 NAME_TO_FULL_MODULE_NAME.put("SimplifyBooleanReturnCheck",
585 BASE_PACKAGE + ".checks.coding.SimplifyBooleanReturnCheck");
586 NAME_TO_FULL_MODULE_NAME.put("StringLiteralEqualityCheck",
587 BASE_PACKAGE + ".checks.coding.StringLiteralEqualityCheck");
588 NAME_TO_FULL_MODULE_NAME.put("SuperCloneCheck",
589 BASE_PACKAGE + ".checks.coding.SuperCloneCheck");
590 NAME_TO_FULL_MODULE_NAME.put("SuperFinalizeCheck",
591 BASE_PACKAGE + ".checks.coding.SuperFinalizeCheck");
592 NAME_TO_FULL_MODULE_NAME.put("UnnecessaryParenthesesCheck",
593 BASE_PACKAGE + ".checks.coding.UnnecessaryParenthesesCheck");
594 NAME_TO_FULL_MODULE_NAME.put("UnnecessarySemicolonAfterOuterTypeDeclarationCheck",
595 BASE_PACKAGE
596 + ".checks.coding.UnnecessarySemicolonAfterOuterTypeDeclarationCheck");
597 NAME_TO_FULL_MODULE_NAME.put("UnnecessarySemicolonAfterTypeMemberDeclarationCheck",
598 BASE_PACKAGE
599 + ".checks.coding.UnnecessarySemicolonAfterTypeMemberDeclarationCheck");
600 NAME_TO_FULL_MODULE_NAME.put("UnnecessarySemicolonInEnumerationCheck",
601 BASE_PACKAGE + ".checks.coding.UnnecessarySemicolonInEnumerationCheck");
602 NAME_TO_FULL_MODULE_NAME.put("UnnecessarySemicolonInTryWithResourcesCheck",
603 BASE_PACKAGE + ".checks.coding.UnnecessarySemicolonInTryWithResourcesCheck");
604 NAME_TO_FULL_MODULE_NAME.put("UseEnhancedSwitchCheck",
605 BASE_PACKAGE + ".checks.coding.UseEnhancedSwitchCheck");
606 NAME_TO_FULL_MODULE_NAME.put("VariableDeclarationUsageDistanceCheck",
607 BASE_PACKAGE + ".checks.coding.VariableDeclarationUsageDistanceCheck");
608 NAME_TO_FULL_MODULE_NAME.put("WhenShouldBeUsedCheck",
609 BASE_PACKAGE + ".checks.coding.WhenShouldBeUsedCheck");
610 NAME_TO_FULL_MODULE_NAME.put("NoArrayTrailingCommaCheck",
611 BASE_PACKAGE + ".checks.coding.NoArrayTrailingCommaCheck");
612 NAME_TO_FULL_MODULE_NAME.put("MatchXpathCheck",
613 BASE_PACKAGE + ".checks.coding.MatchXpathCheck");
614 NAME_TO_FULL_MODULE_NAME.put("TextBlockGoogleStyleFormattingCheck",
615 BASE_PACKAGE + ".checks.coding.TextBlockGoogleStyleFormattingCheck");
616 NAME_TO_FULL_MODULE_NAME.put("UnusedLocalVariableCheck",
617 BASE_PACKAGE + ".checks.coding.UnusedLocalVariableCheck");
618 NAME_TO_FULL_MODULE_NAME.put("UnusedPrivateFieldCheck",
619 BASE_PACKAGE + ".checks.coding.UnusedPrivateFieldCheck");
620 NAME_TO_FULL_MODULE_NAME.put("UnusedCatchParameterShouldBeUnnamedCheck",
621 BASE_PACKAGE + ".checks.coding.UnusedCatchParameterShouldBeUnnamedCheck");
622 NAME_TO_FULL_MODULE_NAME.put("UnusedLambdaParameterShouldBeUnnamedCheck",
623 BASE_PACKAGE + ".checks.coding.UnusedLambdaParameterShouldBeUnnamedCheck");
624 NAME_TO_FULL_MODULE_NAME.put("UnnecessaryNullCheckWithInstanceOfCheck",
625 BASE_PACKAGE + ".checks.coding.UnnecessaryNullCheckWithInstanceOfCheck");
626 NAME_TO_FULL_MODULE_NAME.put("UnusedTryResourceShouldBeUnnamedCheck",
627 BASE_PACKAGE + ".checks.coding.UnusedTryResourceShouldBeUnnamedCheck");
628 NAME_TO_FULL_MODULE_NAME.put("UnnecessaryTypeArgumentsWithRecordPatternCheck",
629 BASE_PACKAGE + ".checks.coding.UnnecessaryTypeArgumentsWithRecordPatternCheck");
630 }
631
632
633
634
635 private static void fillChecksFromDesignPackage() {
636 NAME_TO_FULL_MODULE_NAME.put("DesignForExtensionCheck",
637 BASE_PACKAGE + ".checks.design.DesignForExtensionCheck");
638 NAME_TO_FULL_MODULE_NAME.put("FinalClassCheck",
639 BASE_PACKAGE + ".checks.design.FinalClassCheck");
640 NAME_TO_FULL_MODULE_NAME.put("HideUtilityClassConstructorCheck",
641 BASE_PACKAGE + ".checks.design.HideUtilityClassConstructorCheck");
642 NAME_TO_FULL_MODULE_NAME.put("InnerTypeLastCheck",
643 BASE_PACKAGE + ".checks.design.InnerTypeLastCheck");
644 NAME_TO_FULL_MODULE_NAME.put("InterfaceIsTypeCheck",
645 BASE_PACKAGE + ".checks.design.InterfaceIsTypeCheck");
646 NAME_TO_FULL_MODULE_NAME.put("MutableExceptionCheck",
647 BASE_PACKAGE + ".checks.design.MutableExceptionCheck");
648 NAME_TO_FULL_MODULE_NAME.put("OneTopLevelClassCheck",
649 BASE_PACKAGE + ".checks.design.OneTopLevelClassCheck");
650 NAME_TO_FULL_MODULE_NAME.put("SealedShouldHavePermitsListCheck",
651 BASE_PACKAGE + ".checks.design.SealedShouldHavePermitsListCheck");
652 NAME_TO_FULL_MODULE_NAME.put("ThrowsCountCheck",
653 BASE_PACKAGE + ".checks.design.ThrowsCountCheck");
654 NAME_TO_FULL_MODULE_NAME.put("VisibilityModifierCheck",
655 BASE_PACKAGE + ".checks.design.VisibilityModifierCheck");
656 }
657
658
659
660
661 private static void fillChecksFromHeaderPackage() {
662 NAME_TO_FULL_MODULE_NAME.put("HeaderCheck",
663 BASE_PACKAGE + ".checks.header.HeaderCheck");
664 NAME_TO_FULL_MODULE_NAME.put("RegexpHeaderCheck",
665 BASE_PACKAGE + ".checks.header.RegexpHeaderCheck");
666 NAME_TO_FULL_MODULE_NAME.put("MultiFileRegexpHeaderCheck",
667 BASE_PACKAGE + ".checks.header.MultiFileRegexpHeaderCheck");
668 }
669
670
671
672
673 private static void fillChecksFromImportsPackage() {
674 NAME_TO_FULL_MODULE_NAME.put("AvoidModuleImportCheck",
675 BASE_PACKAGE + ".checks.imports.AvoidModuleImportCheck");
676 NAME_TO_FULL_MODULE_NAME.put("AvoidStarImportCheck",
677 BASE_PACKAGE + ".checks.imports.AvoidStarImportCheck");
678 NAME_TO_FULL_MODULE_NAME.put("AvoidStaticImportCheck",
679 BASE_PACKAGE + ".checks.imports.AvoidStaticImportCheck");
680 NAME_TO_FULL_MODULE_NAME.put("CustomImportOrderCheck",
681 BASE_PACKAGE + ".checks.imports.CustomImportOrderCheck");
682 NAME_TO_FULL_MODULE_NAME.put("IllegalImportCheck",
683 BASE_PACKAGE + ".checks.imports.IllegalImportCheck");
684 NAME_TO_FULL_MODULE_NAME.put("ImportControlCheck",
685 BASE_PACKAGE + ".checks.imports.ImportControlCheck");
686 NAME_TO_FULL_MODULE_NAME.put("ImportOrderCheck",
687 BASE_PACKAGE + ".checks.imports.ImportOrderCheck");
688 NAME_TO_FULL_MODULE_NAME.put("ModuleImportOrderCheck",
689 BASE_PACKAGE + ".checks.imports.ModuleImportOrderCheck");
690 NAME_TO_FULL_MODULE_NAME.put("RedundantImportCheck",
691 BASE_PACKAGE + ".checks.imports.RedundantImportCheck");
692 NAME_TO_FULL_MODULE_NAME.put("UnnecessaryFullyQualifiedTypeCheck",
693 BASE_PACKAGE + ".checks.imports.UnnecessaryFullyQualifiedTypeCheck");
694 NAME_TO_FULL_MODULE_NAME.put("UnusedImportsCheck",
695 BASE_PACKAGE + ".checks.imports.UnusedImportsCheck");
696 }
697
698
699
700
701 private static void fillChecksFromIndentationPackage() {
702 NAME_TO_FULL_MODULE_NAME.put("CommentsIndentationCheck",
703 BASE_PACKAGE + ".checks.indentation.CommentsIndentationCheck");
704 NAME_TO_FULL_MODULE_NAME.put("IndentationCheck",
705 BASE_PACKAGE + ".checks.indentation.IndentationCheck");
706 }
707
708
709
710
711 private static void fillChecksFromJavadocPackage() {
712 NAME_TO_FULL_MODULE_NAME.put("AtclauseOrderCheck",
713 BASE_PACKAGE + ".checks.javadoc.AtclauseOrderCheck");
714 NAME_TO_FULL_MODULE_NAME.put("IllegalBlockTagCheck",
715 BASE_PACKAGE + ".checks.javadoc.IllegalBlockTagCheck");
716 NAME_TO_FULL_MODULE_NAME.put("InappropriateJavadocBlockTagsOnPackageCheck",
717 BASE_PACKAGE + ".checks.javadoc.InappropriateJavadocBlockTagsOnPackageCheck");
718 NAME_TO_FULL_MODULE_NAME.put("InappropriateJavadocBlockTagsOnTypeCheck",
719 BASE_PACKAGE + ".checks.javadoc.InappropriateJavadocBlockTagsOnTypeCheck");
720 NAME_TO_FULL_MODULE_NAME.put("InappropriateJavadocBlockTagsOnFieldCheck",
721 BASE_PACKAGE + ".checks.javadoc.InappropriateJavadocBlockTagsOnFieldCheck");
722 NAME_TO_FULL_MODULE_NAME.put("InvalidJavadocPositionCheck",
723 BASE_PACKAGE + ".checks.javadoc.InvalidJavadocPositionCheck");
724 NAME_TO_FULL_MODULE_NAME.put("JavadocBlockTagLocationCheck",
725 BASE_PACKAGE + ".checks.javadoc.JavadocBlockTagLocationCheck");
726 NAME_TO_FULL_MODULE_NAME.put("JavadocContentLocationCheck",
727 BASE_PACKAGE + ".checks.javadoc.JavadocContentLocationCheck");
728 NAME_TO_FULL_MODULE_NAME.put("JavadocEndCommentDelimiterCheck",
729 BASE_PACKAGE + ".checks.javadoc.JavadocEndCommentDelimiterCheck");
730 NAME_TO_FULL_MODULE_NAME.put("JavadocLeadingAsteriskAlignCheck",
731 BASE_PACKAGE + ".checks.javadoc.JavadocLeadingAsteriskAlignCheck");
732 NAME_TO_FULL_MODULE_NAME.put("JavadocLinkFirstOccurrenceCheck",
733 BASE_PACKAGE + ".checks.javadoc.JavadocLinkFirstOccurrenceCheck");
734 NAME_TO_FULL_MODULE_NAME.put("JavadocLinkWellKnownApiCheck",
735 BASE_PACKAGE + ".checks.javadoc.JavadocLinkWellKnownApiCheck");
736 NAME_TO_FULL_MODULE_NAME.put("JavadocMethodCheck",
737 BASE_PACKAGE + ".checks.javadoc.JavadocMethodCheck");
738 NAME_TO_FULL_MODULE_NAME.put("JavadocMissingLeadingAsteriskCheck",
739 BASE_PACKAGE + ".checks.javadoc.JavadocMissingLeadingAsteriskCheck");
740 NAME_TO_FULL_MODULE_NAME.put("JavadocMissingWhitespaceAfterAsteriskCheck",
741 BASE_PACKAGE + ".checks.javadoc.JavadocMissingWhitespaceAfterAsteriskCheck");
742 NAME_TO_FULL_MODULE_NAME.put("JavadocNoErrorInThrowsTagCheck",
743 BASE_PACKAGE + ".checks.javadoc.JavadocNoErrorInThrowsTagCheck");
744 NAME_TO_FULL_MODULE_NAME.put("JavadocPackageCheck",
745 BASE_PACKAGE + ".checks.javadoc.JavadocPackageCheck");
746 NAME_TO_FULL_MODULE_NAME.put("JavadocParagraphCheck",
747 BASE_PACKAGE + ".checks.javadoc.JavadocParagraphCheck");
748 NAME_TO_FULL_MODULE_NAME.put("JavadocParamOrderCheck",
749 BASE_PACKAGE + ".checks.javadoc.JavadocParamOrderCheck");
750 NAME_TO_FULL_MODULE_NAME.put("JavadocRegexpCheck",
751 BASE_PACKAGE + ".checks.javadoc.JavadocRegexpCheck");
752 NAME_TO_FULL_MODULE_NAME.put("JavadocTagContinuationIndentationCheck",
753 BASE_PACKAGE + ".checks.javadoc.JavadocTagContinuationIndentationCheck");
754 NAME_TO_FULL_MODULE_NAME.put("JavadocThrowsOrderCheck",
755 BASE_PACKAGE + ".checks.javadoc.JavadocThrowsOrderCheck");
756 NAME_TO_FULL_MODULE_NAME.put("JavadocTypeCheck",
757 BASE_PACKAGE + ".checks.javadoc.JavadocTypeCheck");
758 NAME_TO_FULL_MODULE_NAME.put("JavadocVariableCheck",
759 BASE_PACKAGE + ".checks.javadoc.JavadocVariableCheck");
760 NAME_TO_FULL_MODULE_NAME.put("MissingJavadocMethodCheck",
761 BASE_PACKAGE + ".checks.javadoc.MissingJavadocMethodCheck");
762 NAME_TO_FULL_MODULE_NAME.put("MissingJavadocPackageCheck",
763 BASE_PACKAGE + ".checks.javadoc.MissingJavadocPackageCheck");
764 NAME_TO_FULL_MODULE_NAME.put("MissingJavadocTypeCheck",
765 BASE_PACKAGE + ".checks.javadoc.MissingJavadocTypeCheck");
766 NAME_TO_FULL_MODULE_NAME.put("NonEmptyAtclauseDescriptionCheck",
767 BASE_PACKAGE + ".checks.javadoc.NonEmptyAtclauseDescriptionCheck");
768 NAME_TO_FULL_MODULE_NAME.put("PreferCodeOrSnippetJavadocInlineTagCheck",
769 BASE_PACKAGE + ".checks.javadoc.PreferCodeOrSnippetJavadocInlineTagCheck");
770 NAME_TO_FULL_MODULE_NAME.put("PreferLiteralJavadocInlineTagCheck",
771 BASE_PACKAGE + ".checks.javadoc.PreferLiteralJavadocInlineTagCheck");
772 NAME_TO_FULL_MODULE_NAME.put("RequireEmptyLineBeforeBlockTagGroupCheck",
773 BASE_PACKAGE + ".checks.javadoc.RequireEmptyLineBeforeBlockTagGroupCheck");
774 NAME_TO_FULL_MODULE_NAME.put("SingleLineJavadocCheck",
775 BASE_PACKAGE + ".checks.javadoc.SingleLineJavadocCheck");
776 NAME_TO_FULL_MODULE_NAME.put("SummaryJavadocCheck",
777 BASE_PACKAGE + ".checks.javadoc.SummaryJavadocCheck");
778 NAME_TO_FULL_MODULE_NAME.put("WriteTagCheck",
779 BASE_PACKAGE + ".checks.javadoc.WriteTagCheck");
780 }
781
782
783
784
785 private static void fillChecksFromMetricsPackage() {
786 NAME_TO_FULL_MODULE_NAME.put("BooleanExpressionComplexityCheck",
787 BASE_PACKAGE + ".checks.metrics.BooleanExpressionComplexityCheck");
788 NAME_TO_FULL_MODULE_NAME.put("ClassDataAbstractionCouplingCheck",
789 BASE_PACKAGE + ".checks.metrics.ClassDataAbstractionCouplingCheck");
790 NAME_TO_FULL_MODULE_NAME.put("ClassFanOutComplexityCheck",
791 BASE_PACKAGE + ".checks.metrics.ClassFanOutComplexityCheck");
792 NAME_TO_FULL_MODULE_NAME.put("CyclomaticComplexityCheck",
793 BASE_PACKAGE + ".checks.metrics.CyclomaticComplexityCheck");
794 NAME_TO_FULL_MODULE_NAME.put("JavaNCSSCheck",
795 BASE_PACKAGE + ".checks.metrics.JavaNCSSCheck");
796 NAME_TO_FULL_MODULE_NAME.put("NPathComplexityCheck",
797 BASE_PACKAGE + ".checks.metrics.NPathComplexityCheck");
798 }
799
800
801
802
803 private static void fillChecksFromModifierPackage() {
804 NAME_TO_FULL_MODULE_NAME.put("AnnotatedDeclarationVisibilityCheck",
805 BASE_PACKAGE + ".checks.modifier.AnnotatedDeclarationVisibilityCheck");
806 NAME_TO_FULL_MODULE_NAME.put("ClassMemberImpliedModifierCheck",
807 BASE_PACKAGE + ".checks.modifier.ClassMemberImpliedModifierCheck");
808 NAME_TO_FULL_MODULE_NAME.put("InterfaceMemberImpliedModifierCheck",
809 BASE_PACKAGE + ".checks.modifier.InterfaceMemberImpliedModifierCheck");
810 NAME_TO_FULL_MODULE_NAME.put("ModifierOrderCheck",
811 BASE_PACKAGE + ".checks.modifier.ModifierOrderCheck");
812 NAME_TO_FULL_MODULE_NAME.put("RedundantModifierCheck",
813 BASE_PACKAGE + ".checks.modifier.RedundantModifierCheck");
814 }
815
816
817
818
819 private static void fillChecksFromModulesPackage() {
820 NAME_TO_FULL_MODULE_NAME.put("ModuleDirectiveOrderCheck",
821 BASE_PACKAGE + ".checks.modules.ModuleDirectiveOrderCheck");
822 }
823
824
825
826
827 private static void fillChecksFromNamingPackage() {
828 NAME_TO_FULL_MODULE_NAME.put("AbbreviationAsWordInNameCheck",
829 BASE_PACKAGE + ".checks.naming.AbbreviationAsWordInNameCheck");
830 NAME_TO_FULL_MODULE_NAME.put("AbstractClassNameCheck",
831 BASE_PACKAGE + ".checks.naming.AbstractClassNameCheck");
832 NAME_TO_FULL_MODULE_NAME.put("CatchParameterNameCheck",
833 BASE_PACKAGE + ".checks.naming.CatchParameterNameCheck");
834 NAME_TO_FULL_MODULE_NAME.put("ClassTypeParameterNameCheck",
835 BASE_PACKAGE + ".checks.naming.ClassTypeParameterNameCheck");
836 NAME_TO_FULL_MODULE_NAME.put("ConstantNameCheck",
837 BASE_PACKAGE + ".checks.naming.ConstantNameCheck");
838 NAME_TO_FULL_MODULE_NAME.put("InterfaceTypeParameterNameCheck",
839 BASE_PACKAGE + ".checks.naming.InterfaceTypeParameterNameCheck");
840 NAME_TO_FULL_MODULE_NAME.put("LambdaParameterNameCheck",
841 BASE_PACKAGE + ".checks.naming.LambdaParameterNameCheck");
842 NAME_TO_FULL_MODULE_NAME.put("LocalFinalVariableNameCheck",
843 BASE_PACKAGE + ".checks.naming.LocalFinalVariableNameCheck");
844 NAME_TO_FULL_MODULE_NAME.put("LocalVariableNameCheck",
845 BASE_PACKAGE + ".checks.naming.LocalVariableNameCheck");
846 NAME_TO_FULL_MODULE_NAME.put("MemberNameCheck",
847 BASE_PACKAGE + ".checks.naming.MemberNameCheck");
848 NAME_TO_FULL_MODULE_NAME.put("GoogleNonConstantFieldNameCheck",
849 BASE_PACKAGE + ".checks.naming.GoogleNonConstantFieldNameCheck");
850 NAME_TO_FULL_MODULE_NAME.put("MethodNameCheck",
851 BASE_PACKAGE + ".checks.naming.MethodNameCheck");
852 NAME_TO_FULL_MODULE_NAME.put("GoogleMethodNameCheck",
853 BASE_PACKAGE + ".checks.naming.GoogleMethodNameCheck");
854 NAME_TO_FULL_MODULE_NAME.put("MethodTypeParameterNameCheck",
855 BASE_PACKAGE + ".checks.naming.MethodTypeParameterNameCheck");
856 NAME_TO_FULL_MODULE_NAME.put("PackageNameCheck",
857 BASE_PACKAGE + ".checks.naming.PackageNameCheck");
858 NAME_TO_FULL_MODULE_NAME.put("ParameterNameCheck",
859 BASE_PACKAGE + ".checks.naming.ParameterNameCheck");
860 NAME_TO_FULL_MODULE_NAME.put("RecordComponentNameCheck",
861 BASE_PACKAGE + ".checks.naming.RecordComponentNameCheck");
862 NAME_TO_FULL_MODULE_NAME.put("RecordTypeParameterNameCheck",
863 BASE_PACKAGE + ".checks.naming.RecordTypeParameterNameCheck");
864 NAME_TO_FULL_MODULE_NAME.put("StaticVariableNameCheck",
865 BASE_PACKAGE + ".checks.naming.StaticVariableNameCheck");
866 NAME_TO_FULL_MODULE_NAME.put("TypeNameCheck",
867 BASE_PACKAGE + ".checks.naming.TypeNameCheck");
868 NAME_TO_FULL_MODULE_NAME.put("PatternVariableNameCheck",
869 BASE_PACKAGE + ".checks.naming.PatternVariableNameCheck");
870 NAME_TO_FULL_MODULE_NAME.put("IllegalIdentifierNameCheck",
871 BASE_PACKAGE + ".checks.naming.IllegalIdentifierNameCheck");
872 }
873
874
875
876
877 private static void fillChecksFromRegexpPackage() {
878 NAME_TO_FULL_MODULE_NAME.put("RegexpCheck",
879 BASE_PACKAGE + ".checks.regexp.RegexpCheck");
880 NAME_TO_FULL_MODULE_NAME.put("RegexpMultilineCheck",
881 BASE_PACKAGE + ".checks.regexp.RegexpMultilineCheck");
882 NAME_TO_FULL_MODULE_NAME.put("RegexpOnFilenameCheck",
883 BASE_PACKAGE + ".checks.regexp.RegexpOnFilenameCheck");
884 NAME_TO_FULL_MODULE_NAME.put("RegexpSinglelineCheck",
885 BASE_PACKAGE + ".checks.regexp.RegexpSinglelineCheck");
886 NAME_TO_FULL_MODULE_NAME.put("RegexpSinglelineJavaCheck",
887 BASE_PACKAGE + ".checks.regexp.RegexpSinglelineJavaCheck");
888 }
889
890
891
892
893 private static void fillChecksFromSizesPackage() {
894 NAME_TO_FULL_MODULE_NAME.put("AnonInnerLengthCheck",
895 BASE_PACKAGE + ".checks.sizes.AnonInnerLengthCheck");
896 NAME_TO_FULL_MODULE_NAME.put("ExecutableStatementCountCheck",
897 BASE_PACKAGE + ".checks.sizes.ExecutableStatementCountCheck");
898 NAME_TO_FULL_MODULE_NAME.put("FileLengthCheck",
899 BASE_PACKAGE + ".checks.sizes.FileLengthCheck");
900 NAME_TO_FULL_MODULE_NAME.put("LambdaBodyLengthCheck",
901 BASE_PACKAGE + ".checks.sizes.LambdaBodyLengthCheck");
902 NAME_TO_FULL_MODULE_NAME.put("LineLengthCheck",
903 BASE_PACKAGE + ".checks.sizes.LineLengthCheck");
904 NAME_TO_FULL_MODULE_NAME.put("MethodCountCheck",
905 BASE_PACKAGE + ".checks.sizes.MethodCountCheck");
906 NAME_TO_FULL_MODULE_NAME.put("MethodLengthCheck",
907 BASE_PACKAGE + ".checks.sizes.MethodLengthCheck");
908 NAME_TO_FULL_MODULE_NAME.put("OuterTypeNumberCheck",
909 BASE_PACKAGE + ".checks.sizes.OuterTypeNumberCheck");
910 NAME_TO_FULL_MODULE_NAME.put("ParameterNumberCheck",
911 BASE_PACKAGE + ".checks.sizes.ParameterNumberCheck");
912 NAME_TO_FULL_MODULE_NAME.put("RecordComponentNumberCheck",
913 BASE_PACKAGE + ".checks.sizes.RecordComponentNumberCheck");
914 }
915
916
917
918
919 private static void fillChecksFromWhitespacePackage() {
920 NAME_TO_FULL_MODULE_NAME.put("ArrayBracketNoWhitespaceCheck",
921 BASE_PACKAGE + ".checks.whitespace.ArrayBracketNoWhitespaceCheck");
922 NAME_TO_FULL_MODULE_NAME.put("EmptyForInitializerPadCheck",
923 BASE_PACKAGE + ".checks.whitespace.EmptyForInitializerPadCheck");
924 NAME_TO_FULL_MODULE_NAME.put("EmptyForIteratorPadCheck",
925 BASE_PACKAGE + ".checks.whitespace.EmptyForIteratorPadCheck");
926 NAME_TO_FULL_MODULE_NAME.put("EmptyLineSeparatorCheck",
927 BASE_PACKAGE + ".checks.whitespace.EmptyLineSeparatorCheck");
928 NAME_TO_FULL_MODULE_NAME.put("FileTabCharacterCheck",
929 BASE_PACKAGE + ".checks.whitespace.FileTabCharacterCheck");
930 NAME_TO_FULL_MODULE_NAME.put("GenericWhitespaceCheck",
931 BASE_PACKAGE + ".checks.whitespace.GenericWhitespaceCheck");
932 NAME_TO_FULL_MODULE_NAME.put("MethodParamPadCheck",
933 BASE_PACKAGE + ".checks.whitespace.MethodParamPadCheck");
934 NAME_TO_FULL_MODULE_NAME.put("NoLineWrapCheck",
935 BASE_PACKAGE + ".checks.whitespace.NoLineWrapCheck");
936 NAME_TO_FULL_MODULE_NAME.put("NoWhitespaceAfterCheck",
937 BASE_PACKAGE + ".checks.whitespace.NoWhitespaceAfterCheck");
938 NAME_TO_FULL_MODULE_NAME.put("NoWhitespaceBeforeCheck",
939 BASE_PACKAGE + ".checks.whitespace.NoWhitespaceBeforeCheck");
940 NAME_TO_FULL_MODULE_NAME.put("NoWhitespaceBeforeCaseDefaultColonCheck",
941 BASE_PACKAGE + ".checks.whitespace.NoWhitespaceBeforeCaseDefaultColonCheck");
942 NAME_TO_FULL_MODULE_NAME.put("OperatorWrapCheck",
943 BASE_PACKAGE + ".checks.whitespace.OperatorWrapCheck");
944 NAME_TO_FULL_MODULE_NAME.put("ParenPadCheck",
945 BASE_PACKAGE + ".checks.whitespace.ParenPadCheck");
946 NAME_TO_FULL_MODULE_NAME.put("SeparatorWrapCheck",
947 BASE_PACKAGE + ".checks.whitespace.SeparatorWrapCheck");
948 NAME_TO_FULL_MODULE_NAME.put("SingleSpaceSeparatorCheck",
949 BASE_PACKAGE + ".checks.whitespace.SingleSpaceSeparatorCheck");
950 NAME_TO_FULL_MODULE_NAME.put("TypeBodyPaddingCheck",
951 BASE_PACKAGE + ".checks.whitespace.TypeBodyPaddingCheck");
952 NAME_TO_FULL_MODULE_NAME.put("TypecastParenPadCheck",
953 BASE_PACKAGE + ".checks.whitespace.TypecastParenPadCheck");
954 NAME_TO_FULL_MODULE_NAME.put("WhitespaceAfterCheck",
955 BASE_PACKAGE + ".checks.whitespace.WhitespaceAfterCheck");
956 NAME_TO_FULL_MODULE_NAME.put("WhitespaceAroundCheck",
957 BASE_PACKAGE + ".checks.whitespace.WhitespaceAroundCheck");
958 NAME_TO_FULL_MODULE_NAME.put("WhitespaceBeforeEmptyBodyCheck",
959 BASE_PACKAGE + ".checks.whitespace.WhitespaceBeforeEmptyBodyCheck");
960 }
961
962
963
964
965 private static void fillModulesFromChecksPackage() {
966 NAME_TO_FULL_MODULE_NAME.put("ArrayTypeStyleCheck",
967 BASE_PACKAGE + ".checks.ArrayTypeStyleCheck");
968 NAME_TO_FULL_MODULE_NAME.put("AvoidEscapedUnicodeCharactersCheck",
969 BASE_PACKAGE + ".checks.AvoidEscapedUnicodeCharactersCheck");
970 NAME_TO_FULL_MODULE_NAME.put("DescendantTokenCheck",
971 BASE_PACKAGE + ".checks.DescendantTokenCheck");
972 NAME_TO_FULL_MODULE_NAME.put("FinalParametersCheck",
973 BASE_PACKAGE + ".checks.FinalParametersCheck");
974 NAME_TO_FULL_MODULE_NAME.put("NewlineAtEndOfFileCheck",
975 BASE_PACKAGE + ".checks.NewlineAtEndOfFileCheck");
976 NAME_TO_FULL_MODULE_NAME.put("LineEndingCheck",
977 BASE_PACKAGE + ".checks.LineEndingCheck");
978 NAME_TO_FULL_MODULE_NAME.put("MultilineCommentLeadingAsteriskPresenceCheck",
979 BASE_PACKAGE + ".checks.MultilineCommentLeadingAsteriskPresenceCheck");
980 NAME_TO_FULL_MODULE_NAME.put("NoCodeInFileCheck",
981 BASE_PACKAGE + ".checks.NoCodeInFileCheck");
982 NAME_TO_FULL_MODULE_NAME.put("OuterTypeFilenameCheck",
983 BASE_PACKAGE + ".checks.OuterTypeFilenameCheck");
984 NAME_TO_FULL_MODULE_NAME.put("OrderedPropertiesCheck",
985 BASE_PACKAGE + ".checks.OrderedPropertiesCheck");
986 NAME_TO_FULL_MODULE_NAME.put("SuppressWarningsHolder",
987 BASE_PACKAGE + ".checks.SuppressWarningsHolder");
988 NAME_TO_FULL_MODULE_NAME.put("TodoCommentCheck",
989 BASE_PACKAGE + ".checks.TodoCommentCheck");
990 NAME_TO_FULL_MODULE_NAME.put("TrailingCommentCheck",
991 BASE_PACKAGE + ".checks.TrailingCommentCheck");
992 NAME_TO_FULL_MODULE_NAME.put("TranslationCheck",
993 BASE_PACKAGE + ".checks.TranslationCheck");
994 NAME_TO_FULL_MODULE_NAME.put("UncommentedMainCheck",
995 BASE_PACKAGE + ".checks.UncommentedMainCheck");
996 NAME_TO_FULL_MODULE_NAME.put("UniquePropertiesCheck",
997 BASE_PACKAGE + ".checks.UniquePropertiesCheck");
998 NAME_TO_FULL_MODULE_NAME.put("UpperEllCheck",
999 BASE_PACKAGE + ".checks.UpperEllCheck");
1000 NAME_TO_FULL_MODULE_NAME.put("HexLiteralCaseCheck",
1001 BASE_PACKAGE + ".checks.HexLiteralCaseCheck");
1002 NAME_TO_FULL_MODULE_NAME.put("NumericalPrefixesInfixesSuffixesCharacterCaseCheck",
1003 BASE_PACKAGE + ".checks.NumericalPrefixesInfixesSuffixesCharacterCaseCheck");
1004 }
1005
1006
1007
1008
1009 private static void fillModulesFromFilefiltersPackage() {
1010 NAME_TO_FULL_MODULE_NAME.put("BeforeExecutionExclusionFileFilter",
1011 BASE_PACKAGE + ".filefilters.BeforeExecutionExclusionFileFilter");
1012 }
1013
1014
1015
1016
1017 private static void fillModulesFromFiltersPackage() {
1018 NAME_TO_FULL_MODULE_NAME.put("SeverityMatchFilter",
1019 BASE_PACKAGE + ".filters.SeverityMatchFilter");
1020 NAME_TO_FULL_MODULE_NAME.put("SuppressWithPlainTextCommentFilter",
1021 BASE_PACKAGE + ".filters.SuppressWithPlainTextCommentFilter");
1022 NAME_TO_FULL_MODULE_NAME.put("SuppressionCommentFilter",
1023 BASE_PACKAGE + ".filters.SuppressionCommentFilter");
1024 NAME_TO_FULL_MODULE_NAME.put("SuppressionFilter",
1025 BASE_PACKAGE + ".filters.SuppressionFilter");
1026 NAME_TO_FULL_MODULE_NAME.put("SuppressionSingleFilter",
1027 BASE_PACKAGE + ".filters.SuppressionSingleFilter");
1028 NAME_TO_FULL_MODULE_NAME.put("SuppressionXpathFilter",
1029 BASE_PACKAGE + ".filters.SuppressionXpathFilter");
1030 NAME_TO_FULL_MODULE_NAME.put("SuppressionXpathSingleFilter",
1031 BASE_PACKAGE + ".filters.SuppressionXpathSingleFilter");
1032 NAME_TO_FULL_MODULE_NAME.put("SuppressWarningsFilter",
1033 BASE_PACKAGE + ".filters.SuppressWarningsFilter");
1034 NAME_TO_FULL_MODULE_NAME.put("SuppressWithNearbyCommentFilter",
1035 BASE_PACKAGE + ".filters.SuppressWithNearbyCommentFilter");
1036 NAME_TO_FULL_MODULE_NAME.put("SuppressWithNearbyTextFilter",
1037 BASE_PACKAGE + ".filters.SuppressWithNearbyTextFilter");
1038 }
1039
1040
1041
1042
1043 private static void fillModulesFromCheckstylePackage() {
1044 NAME_TO_FULL_MODULE_NAME.put("Checker", BASE_PACKAGE + ".Checker");
1045 NAME_TO_FULL_MODULE_NAME.put("TreeWalker", BASE_PACKAGE + ".TreeWalker");
1046 }
1047
1048 }