private void validateEventHandler(ExecutableElement handlerMethod) { if (handlerMethod.getReturnType().getKind() != TypeKind.VOID) { throwBadHandlerSignature(handlerMethod); } List<? extends VariableElement> parameters = handlerMethod.getParameters(); if (parameters.size() != 1) { throwBadHandlerSignature(handlerMethod); } VariableElement parameter = parameters.get(0); TypeMirror parameterType = asMemberOf(utils.getTypes(), getHandlerTypeMirror(), parameter); if (!utils.getTypes().isSameType(parameterType, getEventTypeMirror())) { throwBadHandlerSignature(parameter); } }