Class NonJavaBaseModuleCheck

java.lang.Object
com.puppycrawl.tools.checkstyle.api.AutomaticBean
com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
com.puppycrawl.tools.checkstyle.api.AbstractCheck
software.amazon.awssdk.buildtools.checkstyle.NonJavaBaseModuleCheck
All Implemented Interfaces:
com.puppycrawl.tools.checkstyle.api.Configurable, com.puppycrawl.tools.checkstyle.api.Contextualizable

public class NonJavaBaseModuleCheck extends com.puppycrawl.tools.checkstyle.api.AbstractCheck
Verify that we're not using classes in rt.jar that aren't exported via the java.base module. If anything fails this check, it increases our module dependencies. If you absolutely must use one of these (e.g. java.beans) because it's fundamental to your functionality, you can suppress this checkstyle rule via setLegalPackages(String...), but know that it is not free - you're essentially adding a dependency for customers that use the module path.
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean

    com.puppycrawl.tools.checkstyle.api.AutomaticBean.OutputStreamOptions
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int[]
     
    int[]
     
    int[]
     
    void
    setLegalPackages(String... legalPackages)
    Additional legal packages are formatted as "sdk.package.name:jdk.package.name,sdk.package.name2:jdk.package.name2".
    void
    visitToken(com.puppycrawl.tools.checkstyle.api.DetailAST ast)
     

    Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractCheck

    beginTree, clearViolations, destroy, finishTree, getFileContents, getLine, getLines, getTokenNames, getViolations, init, isCommentNodesRequired, leaveToken, log, log, log, setFileContents, setTabWidth, setTokens

    Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter

    getId, getSeverity, getSeverityLevel, setId, setSeverity

    Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean

    configure, contextualize

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • NonJavaBaseModuleCheck

      public NonJavaBaseModuleCheck()
  • Method Details

    • setLegalPackages

      public void setLegalPackages(String... legalPackages)
      Additional legal packages are formatted as "sdk.package.name:jdk.package.name,sdk.package.name2:jdk.package.name2". Multiple SDK packages can be repeated.
    • getDefaultTokens

      public int[] getDefaultTokens()
      Specified by:
      getDefaultTokens in class com.puppycrawl.tools.checkstyle.api.AbstractCheck
    • getAcceptableTokens

      public int[] getAcceptableTokens()
      Specified by:
      getAcceptableTokens in class com.puppycrawl.tools.checkstyle.api.AbstractCheck
    • getRequiredTokens

      public int[] getRequiredTokens()
      Specified by:
      getRequiredTokens in class com.puppycrawl.tools.checkstyle.api.AbstractCheck
    • visitToken

      public void visitToken(com.puppycrawl.tools.checkstyle.api.DetailAST ast)
      Overrides:
      visitToken in class com.puppycrawl.tools.checkstyle.api.AbstractCheck