org.axonframework.common.annotation
Class MethodMessageHandlerInspector

java.lang.Object
  extended by org.axonframework.common.annotation.MethodMessageHandlerInspector

public final class MethodMessageHandlerInspector
extends Object

Utility class that inspects handler methods for a given class and annotation type. For each annotated method, it keeps track of a MethodMessageHandler that describes the capabilities of that method (in terms of supported messages).

Since:
2.0
Author:
Allard Buijze

Method Summary
 MethodMessageHandler findHandlerMethod(Message message)
          Returns the handler method that handles objects of the given parameterType.
 List<MethodMessageHandler> getHandlers()
          Returns the list of handlers found on target type.
static MethodMessageHandlerInspector getInstance(Class<?> handlerClass, Class<? extends Annotation> annotationType, boolean allowDuplicates)
          Returns a MethodMessageHandlerInspector for the given handlerClass that contains handler methods annotated with the given annotationType.
 Class<?> getTargetType()
          Returns the targetType on which handler methods are invoked.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static MethodMessageHandlerInspector getInstance(Class<?> handlerClass,
                                                        Class<? extends Annotation> annotationType,
                                                        boolean allowDuplicates)
Returns a MethodMessageHandlerInspector for the given handlerClass that contains handler methods annotated with the given annotationType. The allowDuplicates will indicate whether it is acceptable to have multiple handlers listening to Messages with the same payload type. Basically, this should always be false, unless some a property other than the payload of the Message is used to route the Message to a handler.

Parameters:
handlerClass - The Class containing the handler methods to evaluate
annotationType - The annotations demarcating handler methods
allowDuplicates - Indicates whether to accept multiple handlers listening to Messages with the same payload type
Returns:
a MethodMessageHandlerInspector providing access to the handler methods

findHandlerMethod

public MethodMessageHandler findHandlerMethod(Message message)
Returns the handler method that handles objects of the given parameterType. Returns null is no such method is found.

Parameters:
message - The message to find a handler for
Returns:
the handler method for the given parameterType

getHandlers

public List<MethodMessageHandler> getHandlers()
Returns the list of handlers found on target type.

Returns:
the list of handlers found on target type

getTargetType

public Class<?> getTargetType()
Returns the targetType on which handler methods are invoked.

Returns:
the targetType on which handler methods are invoked


Copyright © 2010-2012. All Rights Reserved.