org.acm.seguin.pmd.rules
Class AccessorClassGenerationRule

java.lang.Object
  extended by net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
      extended by org.acm.seguin.pmd.AbstractRule
          extended by org.acm.seguin.pmd.rules.AccessorClassGenerationRule
All Implemented Interfaces:
net.sourceforge.jrefactory.parser.JavaParserVisitor, Rule

public class AccessorClassGenerationRule
extends AbstractRule

1. Note all private constructors. 2. Note all instantiations from outside of the class by way of the private constructor. 3. Flag instantiations. Parameter types can not be matched because they can come as exposed members of classes. In this case we have no way to know what the type is. We can make a best effort though which can filter some?

Author:
CL Gilbert (dnoyeb@users.sourceforge.net), David Konecny (david.konecny@)

Field Summary
 
Fields inherited from interface org.acm.seguin.pmd.Rule
LOWEST_PRIORITY, PRIORITIES
 
Constructor Summary
AccessorClassGenerationRule()
           
 
Method Summary
 java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTAllocationExpression node, java.lang.Object data)
          To visit a node
 java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTClassDeclaration node, java.lang.Object data)
          Outer class declaration
 java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTCompilationUnit node, java.lang.Object data)
          Work on each file independently.
 java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTConstructorDeclaration node, java.lang.Object data)
          Store all target constructors
 java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTInterfaceDeclaration node, java.lang.Object data)
          Outer interface visitation
 java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTNestedClassDeclaration node, java.lang.Object data)
          To visit a node
 java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTNestedInterfaceDeclaration node, java.lang.Object data)
          Inner interface visitation
 java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTPackageDeclaration node, java.lang.Object data)
          Store package name to strip off in case necessary
 
Methods inherited from class org.acm.seguin.pmd.AbstractRule
addProperty, apply, createRuleViolation, createRuleViolation, equals, getBooleanProperty, getDescription, getDoubleProperty, getExample, getIntProperty, getMessage, getName, getPriority, getPriorityName, getProperties, getStringProperty, hashCode, hasProperty, include, setDescription, setExample, setInclude, setMessage, setName, setPriority, visitAll
 
Methods inherited from class net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AccessorClassGenerationRule

public AccessorClassGenerationRule()
Method Detail

visit

public java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTCompilationUnit node,
                              java.lang.Object data)
Work on each file independently. Assume a new AccessorClassGenerationRule object is created for each run?

Specified by:
visit in interface net.sourceforge.jrefactory.parser.JavaParserVisitor
Overrides:
visit in class AbstractRule
Parameters:
node - The node we are visiting
data - The rename type data
Returns:
The rename type data

visit

public java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTPackageDeclaration node,
                              java.lang.Object data)
Store package name to strip off in case necessary

Specified by:
visit in interface net.sourceforge.jrefactory.parser.JavaParserVisitor
Overrides:
visit in class net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
Parameters:
node - The node we are visiting
data - The rename type data
Returns:
The rename type data

visit

public java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTInterfaceDeclaration node,
                              java.lang.Object data)
Outer interface visitation

Specified by:
visit in interface net.sourceforge.jrefactory.parser.JavaParserVisitor
Overrides:
visit in class net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
Parameters:
node - The node we are visiting
data - The rename type data
Returns:
The rename type data

visit

public java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTNestedInterfaceDeclaration node,
                              java.lang.Object data)
Inner interface visitation

Specified by:
visit in interface net.sourceforge.jrefactory.parser.JavaParserVisitor
Overrides:
visit in class net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
Parameters:
node - The node we are visiting
data - The rename type data
Returns:
The rename type data

visit

public java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTClassDeclaration node,
                              java.lang.Object data)
Outer class declaration

Specified by:
visit in interface net.sourceforge.jrefactory.parser.JavaParserVisitor
Overrides:
visit in class net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
Parameters:
node - The node we are visiting
data - The rename type data
Returns:
The rename type data

visit

public java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTNestedClassDeclaration node,
                              java.lang.Object data)
Description copied from class: net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
To visit a node

Specified by:
visit in interface net.sourceforge.jrefactory.parser.JavaParserVisitor
Overrides:
visit in class net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
Parameters:
node - The node we are visiting
data - The rename type data
Returns:
The rename type data

visit

public java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTConstructorDeclaration node,
                              java.lang.Object data)
Store all target constructors

Specified by:
visit in interface net.sourceforge.jrefactory.parser.JavaParserVisitor
Overrides:
visit in class net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
Parameters:
node - The node we are visiting
data - The rename type data
Returns:
The rename type data

visit

public java.lang.Object visit(net.sourceforge.jrefactory.ast.ASTAllocationExpression node,
                              java.lang.Object data)
Description copied from class: net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
To visit a node

Specified by:
visit in interface net.sourceforge.jrefactory.parser.JavaParserVisitor
Overrides:
visit in class net.sourceforge.jrefactory.parser.JavaParserVisitorAdapter
Parameters:
node - The node we are visiting
data - The rename type data
Returns:
The rename type data