Class HandlerFactory
java.lang.Object
com.puppycrawl.tools.checkstyle.checks.indentation.HandlerFactory
Factory for handlers. Looks up constructor via reflection.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Map<DetailAST,
AbstractExpressionHandler> Cache for created method call handlers.private final Map<Integer,
Constructor<?>> Registered handlers. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Clears cache of created handlers.private AbstractExpressionHandler
createMethodCallHandler
(IndentationCheck indentCheck, DetailAST ast, AbstractExpressionHandler parent) Create new instance of handler for METHOD_CALL.int[]
Gets list of registered handler types.getHandler
(IndentationCheck indentCheck, DetailAST ast, AbstractExpressionHandler parent) Get the handler for an AST.boolean
isHandledType
(int type) Returns true if this type (form TokenTypes) is handled.private <T> void
Registers a handler.
-
Field Details
-
typeHandlers
Registered handlers. -
createdHandlers
Cache for created method call handlers.
-
-
Constructor Details
-
HandlerFactory
public HandlerFactory()Creates a HandlerFactory.
-
-
Method Details
-
register
Registers a handler.- Type Parameters:
T
- type of the handler class object.- Parameters:
type
- type from TokenTypeshandlerClass
- the handler to register
-
isHandledType
Returns true if this type (form TokenTypes) is handled.- Parameters:
type
- type from TokenTypes- Returns:
- true if handler is registered, false otherwise
-
getHandledTypes
Gets list of registered handler types.- Returns:
- int[] of TokenType types
-
getHandler
public AbstractExpressionHandler getHandler(IndentationCheck indentCheck, DetailAST ast, AbstractExpressionHandler parent) Get the handler for an AST.- Parameters:
indentCheck
- the indentation checkast
- ast to handleparent
- the handler parent of this AST- Returns:
- the ExpressionHandler for ast
-
createMethodCallHandler
private AbstractExpressionHandler createMethodCallHandler(IndentationCheck indentCheck, DetailAST ast, AbstractExpressionHandler parent) Create new instance of handler for METHOD_CALL.- Parameters:
indentCheck
- the indentation checkast
- ast to handleparent
- the handler parent of this AST- Returns:
- new instance.
-
clearCreatedHandlers
Clears cache of created handlers.
-