List of usage examples for javax.lang.model.element VariableElement toString
public String toString()
From source file:com.googlecode.androidannotations.helper.ValidatorHelper.java
public void hasOneOrTwoParametersAndFirstIsBoolean(ExecutableElement executableElement, IsValid valid) { List<? extends VariableElement> parameters = executableElement.getParameters(); if (parameters.size() < 1 || parameters.size() > 2) { valid.invalidate();// w w w . ja v a 2s . c om annotationHelper.printAnnotationError(executableElement, "%s can only be used on a method with 1 or 2 parameter, instead of " + parameters.size()); } else { VariableElement firstParameter = parameters.get(0); TypeKind parameterKind = firstParameter.asType().getKind(); if (parameterKind != TypeKind.BOOLEAN && !firstParameter.toString().equals("java.lang.Boolean")) { valid.invalidate(); annotationHelper.printAnnotationError(executableElement, "the first parameter should be a boolean"); } } }
From source file:org.androidannotations.helper.ValidatorHelper.java
public void hasBeforeTextChangedMethodParameters(ExecutableElement executableElement, IsValid valid) { List<? extends VariableElement> parameters = executableElement.getParameters(); boolean charSequenceParameterFound = false; boolean textViewParameterFound = false; for (VariableElement parameter : parameters) { String parameterType = parameter.asType().toString(); if (parameterType.equals(CanonicalNameConstants.CHAR_SEQUENCE)) { if (charSequenceParameterFound) { annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter declaration. you can declare only one parameter of type java.lang.CharSequence"); valid.invalidate();//from ww w . j av a2 s . co m } charSequenceParameterFound = true; continue; } if (parameterType.equals(CanonicalNameConstants.TEXT_VIEW)) { if (textViewParameterFound) { annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter declaration. you can declare only one parameter of type android.widget.TextView"); valid.invalidate(); } textViewParameterFound = true; continue; } if (parameter.asType().getKind() == TypeKind.INT || CanonicalNameConstants.INTEGER.equals(parameterType)) { String parameterName = parameter.toString(); if ("start".equals(parameterName) || "count".equals(parameterName) || "after".equals(parameterName)) { continue; } annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter name. You can only have start, before, or count parameter name. Try to pick a parameter from android.text.TextWatcher.beforeTextChanged() method."); valid.invalidate(); continue; } annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter (" + parameter.toString() + "). %s can only have a android.widget.TextView parameter and/or parameters from android.text.TextWatcher.beforeTextChanged() method."); valid.invalidate(); } }
From source file:org.androidannotations.helper.ValidatorHelper.java
public void hasTextChangedMethodParameters(ExecutableElement executableElement, IsValid valid) { List<? extends VariableElement> parameters = executableElement.getParameters(); boolean charSequenceParameterFound = false; boolean textViewParameterFound = false; for (VariableElement parameter : parameters) { String parameterType = parameter.asType().toString(); if (parameterType.equals(CanonicalNameConstants.CHAR_SEQUENCE)) { if (charSequenceParameterFound) { annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter declaration. you can declare only one parameter of type java.lang.CharSequence"); valid.invalidate();// w ww . ja v a 2 s . c o m } charSequenceParameterFound = true; continue; } if (parameterType.equals(CanonicalNameConstants.TEXT_VIEW)) { if (textViewParameterFound) { annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter declaration. you can declare only one parameter of type android.widget.TextView"); valid.invalidate(); } textViewParameterFound = true; continue; } if (parameter.asType().getKind() == TypeKind.INT || CanonicalNameConstants.INTEGER.equals(parameterType)) { String parameterName = parameter.toString(); if ("start".equals(parameterName) || "before".equals(parameterName) || "count".equals(parameterName)) { continue; } annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter name. You can only have start, before, or count parameter name. Try to pick a prameter from the android.text.TextWatcher.onTextChanged() method."); valid.invalidate(); continue; } annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter (" + parameter.toString() + "). %s can only have a android.widget.TextView parameter and/or parameters from android.text.TextWatcher.onTextChanged() method."); valid.invalidate(); } }
From source file:org.androidannotations.helper.ValidatorHelper.java
public void hasSeekBarProgressChangeMethodParameters(ExecutableElement executableElement, IsValid valid) { List<? extends VariableElement> parameters = executableElement.getParameters(); boolean seekBarParameterFound = false; boolean fromUserParameterFound = false; boolean progressParameterFound = false; for (VariableElement parameter : parameters) { String parameterType = parameter.asType().toString(); if (parameterType.equals(CanonicalNameConstants.SEEKBAR)) { if (seekBarParameterFound) { annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter declaration. You can declare only one parameter of type " + CanonicalNameConstants.SEEKBAR); valid.invalidate();/*w w w .j av a2 s. c o m*/ } seekBarParameterFound = true; continue; } if (parameter.asType().getKind() == TypeKind.INT || CanonicalNameConstants.INTEGER.equals(parameterType)) { if (progressParameterFound) { annotationHelper.printAnnotationError(executableElement, "You can have only one parameter of type " + CanonicalNameConstants.INTEGER); valid.invalidate(); } progressParameterFound = true; continue; } if (parameter.asType().getKind() == TypeKind.BOOLEAN || CanonicalNameConstants.BOOLEAN.equals(parameterType)) { if (fromUserParameterFound) { annotationHelper.printAnnotationError(executableElement, "You can have only one parameter of type " + CanonicalNameConstants.BOOLEAN); valid.invalidate(); } fromUserParameterFound = true; continue; } annotationHelper.printAnnotationError(executableElement, "Unrecognized parameter '" + parameter.toString() + "'. %s signature should be " + executableElement.getSimpleName() + "(" + CanonicalNameConstants.SEEKBAR + " seekBar, int progress, boolean fromUser). The 'fromUser' and 'progress' parameters are optional."); valid.invalidate(); } }