code: public String handleParameterizedAnnotation(String annotation, String parameterNames, String parameters, String validate) {
  
  		if (parameters == null)
  			return "";
  
  		if (parameterNames == null)
  			return "";
  
  		// validate contains range
  		if (validate != null && validate.toLowerCase().matches(".*@" + annotation.toLowerCase() + ".*"))
  			return "";
  
  		String result = " @" + annotation;
  
  		// if validate contains any given parameter name, add complete
  		// annotation
  		String[] paramNames = parameterNames.split(",");
  		for (String paramName : paramNames) {
  			if (parameters.toLowerCase().matches(".*" + paramName + ".*")) {
  				result += "(" + parameters + ")";
  				return result + " ";
  			}
  		}
  
  		// setting parameters
  		String[] params = parameters.split(",");
  		result += "(";
  		for (int i = 0; i < params.length; i++) {
  			if (paramNames[i] != null) {
  				if (i > 0)
  					result += ",";
  				result += paramNames[i] + "=" + params[i];
  			}
  		}
  		result += ")";
  
  		return result + " ";
  	}
docs: Handles all validation annotations with multiple parameters (Range, Size,
  ...).
  
  @param annotation
  the name of the annotation
  @param parameterNames
  the parameter names
  @param parameters
  the parameter values
  @param validate
  the validate string
  @return annotation validation string