class XPathParamMethodArgumentResolver implements MethodArgumentResolver {

	@Override
	public boolean supportsParameter(MethodParameter parameter) {
		if (parameter.getParameterAnnotation(XPathParam.class) == null) {
			return false;
		}
		Class<?> parameterType = parameter.getParameterType();
		if (Boolean.class.equals(parameterType) || Boolean.TYPE.equals(parameterType) || Double.class.equals(parameterType)
				|| Double.TYPE.equals(parameterType) || Node.class.isAssignableFrom(parameterType)
				|| NodeList.class.isAssignableFrom(parameterType) || String.class.isAssignableFrom(parameterType)) {
			return true;
		} else {
			return conversionService.canConvert(String.class, parameterType);
		}
	}

}