View Javadoc

    1   /***
    2    * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
    3    */
    4   package net.sourceforge.pmd.rules;
    5
    6   import net.sourceforge.pmd.ast.ASTCompilationUnit;
    7   import net.sourceforge.pmd.ast.ASTImportDeclaration;
    8   import net.sourceforge.pmd.rules.design.ExcessiveNodeCountRule;
    9
    10  /***
    11   * ExcessiveImports attempts to count all unique imports a class
    12   * contains. This rule will count a "import com.something.*;" as a single
    13   * import. This is a unqiue situation and I'd like to create an audit type
    14   * rule that captures those.
    15   *
    16   * @author aglover
    17   * @since Feb 21, 2003
    18   */
    19  public class ExcessiveImports extends ExcessiveNodeCountRule {
    20
    21      public ExcessiveImports() {
    22          super(ASTCompilationUnit.class);
    23      }
    24
    25      /***
    26       * Hook method to count imports. This is a user defined value.
    27       *
    28       * @param node
    29       * @param data
    30       * @return Object
    31       */
    32      public Object visit(ASTImportDeclaration node, Object data) {
    33          return new Integer(1);
    34      }
    35  }