List of usage examples for javax.lang.model.element VariableElement getSimpleName
@Override Name getSimpleName();
From source file:Main.java
public static String getArguments(ExecutableElement d) { Collection<? extends VariableElement> params = d.getParameters(); if (params.size() == 0) return ""; StringBuilder sbuf = new StringBuilder(params.size() * 20); for (VariableElement param : params) { sbuf.append(param.getSimpleName()); sbuf.append(','); }/*from www. java 2s.c o m*/ sbuf.setLength(sbuf.length() - 1); return sbuf.toString(); }
From source file:Main.java
public static String getParams(ExecutableElement d) { Collection<? extends VariableElement> params = d.getParameters(); if (params.size() == 0) return ""; StringBuilder sbuf = new StringBuilder(params.size() * 20); for (VariableElement param : params) { sbuf.append(param.asType());/*from w w w . j av a 2 s. c om*/ sbuf.append(' '); sbuf.append(param.getSimpleName()); sbuf.append(','); } sbuf.setLength(sbuf.length() - 1); return sbuf.toString(); }
From source file:com.dspot.declex.override.holder.FragmentActionHolder.java
public static void addFragmentArg(ActionInfo actionInfo, Element element, AndroidAnnotationsEnvironment env) { APTCodeModelHelper codeModelHelper = new DeclexAPTCodeModelHelper(env); final String clsName = element.getEnclosingElement().asType().toString(); final int index = clsName.lastIndexOf('.'); final String pkg = clsName.substring(0, index); final String fragmentName = clsName.substring(index + 1); final String actionName = pkg + "." + fragmentName + "ActionHolder"; final String elementName = element.getSimpleName().toString(); if (element.getKind().isField()) { final AbstractJClass clazz = codeModelHelper.elementTypeToJClass(element); actionInfo.addMethod(elementName, actionName, Arrays.asList(new ActionMethodParam(elementName, clazz))); } else if (element.getKind() == ElementKind.METHOD) { List<? extends VariableElement> elementParams = ((ExecutableElement) element).getParameters(); List<ActionMethodParam> params = new ArrayList<>(elementParams.size()); for (VariableElement param : elementParams) { final String paramName = param.getSimpleName().toString(); final AbstractJClass paramClass = codeModelHelper.elementTypeToJClass(param); params.add(new ActionMethodParam(paramName, paramClass)); }// w ww . ja v a 2 s. co m actionInfo.addMethod(elementName, actionName, params); } }
From source file:info.archinnov.achilles.internals.parser.FunctionParser.java
public static List<FunctionSignature> parseFunctionRegistryAndValidateTypes(AptUtils aptUtils, TypeElement elm, GlobalParsingContext context) {/*from ww w . j ava 2s. co m*/ final List<ExecutableElement> methods = ElementFilter.methodsIn(elm.getEnclosedElements()); final Optional<String> keyspace = AnnotationTree.findKeyspaceForFunctionRegistry(aptUtils, elm); final FunctionParamParser paramParser = new FunctionParamParser(aptUtils); final TypeName parentType = TypeName.get(aptUtils.erasure(elm)); //Not allow to declare function in system keyspaces if (keyspace.isPresent()) { final String keyspaceName = keyspace.get(); aptUtils.validateFalse( FORBIDDEN_KEYSPACES.contains(keyspaceName) || FORBIDDEN_KEYSPACES.contains(keyspaceName.toLowerCase()), "The provided keyspace '%s' on function registry class '%s' is forbidden because it is a system keyspace", keyspaceName, parentType); } aptUtils.validateFalse(keyspace.isPresent() && isBlank(keyspace.get()), "The declared keyspace for function registry '%s' should not be blank", elm.getSimpleName().toString()); return methods.stream().map(method -> { final String methodName = method.getSimpleName().toString(); final List<AnnotationTree> annotationTrees = AnnotationTree.buildFromMethodForParam(aptUtils, method); final List<? extends VariableElement> parameters = method.getParameters(); final List<FunctionParamSignature> parameterSignatures = new ArrayList<>(parameters.size()); for (int i = 0; i < parameters.size(); i++) { final VariableElement parameter = parameters.get(i); context.nestedTypesStrategy.validate(aptUtils, annotationTrees.get(i), method.toString(), parentType); final FunctionParamSignature functionParamSignature = paramParser.parseParam(context, annotationTrees.get(i), parentType, methodName, parameter.getSimpleName().toString()); parameterSignatures.add(functionParamSignature); } //Validate return type final TypeMirror returnType = method.getReturnType(); aptUtils.validateFalse(returnType.getKind() == TypeKind.VOID, "The return type for the method '%s' on class '%s' should not be VOID", method.toString(), elm.getSimpleName().toString()); aptUtils.validateFalse(returnType.getKind().isPrimitive(), "Due to internal JDK API limitations, UDF/UDA return types cannot be primitive. " + "Use their Object counterpart instead for method '%s' " + "in function registry '%s'", method.toString(), elm.getQualifiedName()); final FunctionParamSignature returnTypeSignature = paramParser.parseParam(context, AnnotationTree.buildFromMethodForReturnType(aptUtils, method), parentType, methodName, "returnType"); // Validate NOT system function comparing only name lowercase aptUtils.validateFalse(SYSTEM_FUNCTIONS_NAME.contains(methodName.toLowerCase()), "The name of the function '%s' in class '%s' is reserved for system functions", method, parentType); return new FunctionSignature(keyspace, parentType, methodName, returnTypeSignature, parameterSignatures); }).collect(toList()); }
From source file:auto.parse.processor.AutoParseProcessor.java
private static String formalArgsString(ExecutableElement method) { List<? extends VariableElement> typeParameters = method.getParameters(); if (typeParameters.isEmpty()) { return ""; } else {/* w ww .ja v a2s .c o m*/ String s = ""; String sep = ""; for (VariableElement typeParameter : typeParameters) { s += sep + typeParameter.getSimpleName(); sep = ", "; } return s; } }
From source file:auto.parse.processor.AutoParseProcessor.java
private static String formalTypeArgsString(ExecutableElement method, TypeSimplifier typeSimplifier) { List<? extends VariableElement> typeParameters = method.getParameters(); if (typeParameters.isEmpty()) { return ""; } else {/*from w w w . j a v a 2s. c o m*/ String s = ""; String sep = ""; for (VariableElement typeParameter : typeParameters) { s += sep + typeSimplifier.simplify(typeParameter.asType()) + " " + typeParameter.getSimpleName(); sep = ", "; } return s; } }
From source file:info.archinnov.achilles.internals.parser.context.IndexInfoHelper.java
default String computeIndexName(String indexName, VariableElement elm, EntityParsingContext context) { return isBlank(indexName) ? context.namingStrategy.apply(elm.getSimpleName().toString() + "_index") : indexName;//from ww w. j ava2s . co m }
From source file:info.archinnov.achilles.internals.parser.context.IndexInfoContext.java
public IndexInfoContext computeIndexName(VariableElement elm, EntityParsingContext context) { String newIndexName = isBlank(indexName) ? context.namingStrategy.apply(elm.getSimpleName().toString() + "_index") : indexName;/*from ww w . j a v a 2s .c om*/ return new IndexInfoContext(newIndexName, indexClassName, indexOptions); }
From source file:io.github.jeddict.jcode.util.JavaSourceHelper.java
public static VariableTree getField(CompilationController controller, String fieldName) { TypeElement classElement = getTopLevelClassElement(controller); if (classElement == null) { return null; }/*from w w w. j ava 2 s . c o m*/ List<VariableElement> fields = ElementFilter.fieldsIn(classElement.getEnclosedElements()); for (VariableElement field : fields) { if (field.getSimpleName().toString().equals(fieldName)) { return (VariableTree) controller.getTrees().getTree(field); } } return null; }
From source file:org.mule.devkit.validation.JavaDocValidator.java
private void validateAllParameters(GeneratorContext context, ExecutableElement method) throws ValidationException { for (VariableElement variable : method.getParameters()) { if (!hasParameterComment(variable.getSimpleName().toString(), variable.getEnclosingElement(), context)) {//from w w w .j ava 2 s .c o m throw new ValidationException(variable, "Parameter " + variable.getSimpleName().toString() + " of method " + method.getSimpleName().toString() + " is not properly documented. A matching @param in the method documentation was not found. "); } } }