/** * Sets the attribute values * * @param attributeValues the values to set; can be <code>null</code> for * none */ public void setAttributes(final Collection<AnnotationAttributeValue<?>> attributeValues) { this.attributeValues.clear(); if (attributeValues != null) { for (final AnnotationAttributeValue<?> attributeValue : attributeValues) { addAttribute(attributeValue); } } }
/** * Adds an attribute with the given {@link JavaType} as its value * * @param key the attribute name (required) * @param javaType the value (required) */ public void addClassAttribute(final String key, final JavaType javaType) { addAttribute(new ClassAttributeValue(new JavaSymbolName(key), javaType)); }
public void addDoubleAttribute(final String key, final double value, final boolean floatingPrecisionOnly) { addAttribute(new DoubleAttributeValue(new JavaSymbolName(key), value, floatingPrecisionOnly)); }
/** * Method that returns @RooDetail annotation * * @param relationField * Field that set the relationship * @param viewsList * Separated comma list that defines the parent views where the * new detail will be displayed. * @return */ private AnnotationMetadataBuilder getRooDetailAnnotation(final String relationField, final String viewsList) { AnnotationMetadataBuilder annotationDetail = new AnnotationMetadataBuilder(RooJavaType.ROO_DETAIL); annotationDetail.addStringAttribute(RELATION_FIELD_KEY, relationField); // Including views attribute if needed if (StringUtils.isNotEmpty(viewsList)) { String[] views = viewsList.split(","); List<StringAttributeValue> viewsValues = new ArrayList<StringAttributeValue>(); for (String view : views) { viewsValues.add(new StringAttributeValue(VALUE_SYM, view)); } ArrayAttributeValue<StringAttributeValue> viewsAttr = new ArrayAttributeValue<StringAttributeValue>(VIEWS_SYM, viewsValues); annotationDetail.addAttribute(viewsAttr); } return annotationDetail; }
public void addEnumAttribute(final String key, final EnumDetails details) { addAttribute(new EnumAttributeValue(new JavaSymbolName(key), details)); }
public void addIntegerAttribute(final String key, final int value) { addAttribute(new IntegerAttributeValue(new JavaSymbolName(key), value)); }
public void addCharAttribute(final String key, final char value) { addAttribute(new CharAttributeValue(new JavaSymbolName(key), value)); }
public void addBooleanAttribute(final String key, final boolean value) { addAttribute(new BooleanAttributeValue(new JavaSymbolName(key), value)); }
public void addLongAttribute(final String key, final long value) { addAttribute(new LongAttributeValue(new JavaSymbolName(key), value)); }
public void addStringAttribute(final String key, final String value) { addAttribute(new StringAttributeValue(new JavaSymbolName(key), value)); }
public void addEnumAttribute(final String key, final JavaType javaType, final JavaSymbolName enumConstant) { final EnumDetails details = new EnumDetails(javaType, enumConstant); addAttribute(new EnumAttributeValue(new JavaSymbolName(key), details)); }
public void addClassAttribute(final String key, final String fullyQualifiedTypeName) { addAttribute(new ClassAttributeValue(new JavaSymbolName(key), new JavaType( fullyQualifiedTypeName))); }
new ArrayAttributeValue<AnnotationAttributeValue<?>>(new JavaSymbolName("finders"), findersToAdd); searchAnnotationBuilder.addAttribute(allFinders); controllerBuilder.updateTypeAnnotation(searchAnnotationBuilder);
public void addEnumAttribute(final String key, final JavaType javaType, final String enumConstant) { final EnumDetails details = new EnumDetails(javaType, new JavaSymbolName(enumConstant)); addAttribute(new EnumAttributeValue(new JavaSymbolName(key), details)); }
/** * Builds and returns `@Import` annotation * * @return {@link AnnotationMetadataBuilder} */ private AnnotationMetadataBuilder getImportAnnotation() { AnnotationMetadataBuilder annotationBuilder = new AnnotationMetadataBuilder(SpringJavaType.ANNOTATION_IMPORT); // Create List of ClassAttributeValue List<ClassAttributeValue> typesToImport = new ArrayList<ClassAttributeValue>(); typesToImport.add(new ClassAttributeValue(new JavaSymbolName("value"), this.annotationValues .getDodConfigurationClass())); typesToImport.add(new ClassAttributeValue(new JavaSymbolName("value"), this.jpaDetachableRepositoryClass)); // Convert List to ArrayAttributeValue ArrayAttributeValue<ClassAttributeValue> importAttr = new ArrayAttributeValue<ClassAttributeValue>(new JavaSymbolName("value"), typesToImport); // Add annotation attribute annotationBuilder.addAttribute(importAttr); return annotationBuilder; }
public void addEnumAttribute(final String key, final String fullyQualifiedTypeName, final String enumConstant) { final EnumDetails details = new EnumDetails(new JavaType(fullyQualifiedTypeName), new JavaSymbolName(enumConstant)); addAttribute(new EnumAttributeValue(new JavaSymbolName(key), details)); }
annotationBuilder.addAttribute(new ClassAttributeValue(new JavaSymbolName("controller"), controller)); typeBuilder.addAnnotation(annotationBuilder);
public void addEqualsAndHashCodeMethods(final JavaType javaType, final boolean appendSuper, final Set<String> excludeFields) { // Add @RooEquals annotation to class if not yet present final ClassOrInterfaceTypeDetails cid = typeLocationService.getTypeDetails(javaType); if (cid == null || cid.getTypeAnnotation(ROO_EQUALS) != null) { return; } final AnnotationMetadataBuilder annotationBuilder = new AnnotationMetadataBuilder(ROO_EQUALS); if (appendSuper) { annotationBuilder.addBooleanAttribute("appendSuper", appendSuper); } if (!CollectionUtils.isEmpty(excludeFields)) { final List<StringAttributeValue> attributes = new ArrayList<StringAttributeValue>(); for (final String excludeField : excludeFields) { attributes.add(new StringAttributeValue(new JavaSymbolName("value"), excludeField)); } annotationBuilder.addAttribute(new ArrayAttributeValue<StringAttributeValue>( new JavaSymbolName("excludeFields"), attributes)); } final ClassOrInterfaceTypeDetailsBuilder cidBuilder = new ClassOrInterfaceTypeDetailsBuilder(cid); cidBuilder.addAnnotation(annotationBuilder.build()); typeManagementService.createOrUpdateTypeOnDisk(cidBuilder.build()); } }
findersToAdd.add(new StringAttributeValue(new JavaSymbolName("value"), finder)); searchAnnotation.addAttribute(new ArrayAttributeValue<AnnotationAttributeValue<?>>( new JavaSymbolName("finders"), findersToAdd)); controllerBuilder.addAnnotation(searchAnnotation);
repositoryCustomAnnotationMetadata.addAttribute(new ClassAttributeValue(new JavaSymbolName( "entity"), domainType));