Class AbstractClassCouplingCheck.FileContext

  • Enclosing class:
    AbstractClassCouplingCheck

    private class AbstractClassCouplingCheck.FileContext
    extends java.lang.Object
    Encapsulates information about classes coupling inside single file.
    • Field Detail

      • importedClassPackage

        private final java.util.Map<java.lang.String,​java.lang.String> importedClassPackage
        A map of (imported class name -> class name with package) pairs.
      • packageName

        private java.lang.String packageName
        Current file package.
    • Constructor Detail

      • FileContext

        private FileContext()
    • Method Detail

      • getPackageName

        public java.lang.String getPackageName()
        Retrieves current file package name.
        Returns:
        Package name.
      • setPackageName

        public void setPackageName​(java.lang.String packageName)
        Sets current context package name.
        Parameters:
        packageName - Package name to be set.
      • registerImport

        public void registerImport​(DetailAST imp)
        Registers given import. This allows us to track imported classes.
        Parameters:
        imp - import definition.
      • getClassNameWithPackage

        public java.util.Optional<java.lang.String> getClassNameWithPackage​(java.lang.String className)
        Retrieves class name with packages. Uses previously registered imports to get the full class name.
        Parameters:
        className - Class name to be retrieved.
        Returns:
        Class name with package name, if found, Optional.empty() otherwise.
      • createNewClassContext

        public void createNewClassContext​(java.lang.String className,
                                          int lineNo,
                                          int columnNo)
        Creates new inner class context with given name and location.
        Parameters:
        className - The class name.
        lineNo - The class line number.
        columnNo - The class column number.
      • checkCurrentClassAndRestorePrevious

        public void checkCurrentClassAndRestorePrevious()
        Restores previous context.
      • visitType

        public void visitType​(DetailAST ast)
        Visits type token for the current class context.
        Parameters:
        ast - TYPE token.
      • visitLiteralNew

        public void visitLiteralNew​(DetailAST ast)
        Visits NEW token for the current class context.
        Parameters:
        ast - NEW token.
      • visitLiteralThrows

        public void visitLiteralThrows​(DetailAST ast)
        Visits THROWS token for the current class context.
        Parameters:
        ast - THROWS token.