/** * Returns String which represents type inside ITD * * Delegates on {@link JavaType#getNameIncludingTypeParameters(boolean, org.springframework.roo.model.ImportRegistrationResolver)} * * @param type * @param asStatic * @return */ protected String getNameOfJavaType(JavaType type, boolean asStatic) { return type.getNameIncludingTypeParameters(asStatic, builder.getImportRegistrationResolver()); } }
private void addToImports(final List<JavaType> parameterTypes) { if (parameterTypes != null) { final List<JavaType> typesToImport = new ArrayList<JavaType>(); for (final JavaType parameterType : parameterTypes) { if (!JdkJavaType.isPartOfJavaLang(parameterType)) { typesToImport.add(parameterType); } } builder.getImportRegistrationResolver().addImports(typesToImport); } }
private FieldMetadataBuilder getMultipleEntityIdField(final JavaSymbolName fieldName) { builder.getImportRegistrationResolver().addImport(HASH_SET); return new FieldMetadataBuilder(getId(), Modifier.PRIVATE, fieldName, new JavaType( SET.getFullyQualifiedTypeName(), 0, DataType.TYPE, null, Collections.singletonList(GAE_DATASTORE_KEY)), "new HashSet<Key>()"); }
/** * Returns the `hashCode` method to be generated * * @return `null` if no generation is required */ private MethodMetadata getHashCodeMethod() { MethodMetadata method = getGovernorMethod(HASH_CODE_METHOD_NAME); if (method != null) { return method; } return generateHashCodeMethod(getId(), annotationValues, locatedFields, builder.getImportRegistrationResolver()).build(); }
bodyBuilder = getJpaEntityEqualsMethodBody(target, identifierAccessor, builder.getImportRegistrationResolver()); } else { bodyBuilder = generateDefaultEqualsMethodBody(target, annotationValues.isAppendSuper(), locatedFields, builder.getImportRegistrationResolver());
equalsAnnotationValues, equalsFields, builder.getImportRegistrationResolver()));
builder.getImportRegistrationResolver().addImport(embeddedIdFieldType); final String fieldName = field.getFieldName().getSymbolName(); final JavaType fieldType = field.getFieldType(); builder.getImportRegistrationResolver().addImport(fieldType); final String initializer = getFieldInitializer(field, null, dataOnDemandClasses); bodyBuilder.append(getFieldValidationBody(field, initializer, null, true));
Validate.notNull(annotationValues, "Annotation values required"); this.importResolver = builder.getImportRegistrationResolver(); this.entity = domainType; this.entityMetadata = entityMetadata;
body.appendFormalLine("%s validator = new GenericValidator(%s.class, %s());", SpringletsJavaType.SPRINGLETS_GENERIC_VALIDATOR.getNameIncludingTypeParameters(false, builder.getImportRegistrationResolver()), entity.getBaseType() .getNameIncludingTypeParameters(false, builder.getImportRegistrationResolver()), getAccessorMethod(controllerMetadata.getServiceField()).getMethodName()); body.appendFormalLine("binder.addValidators(validator);");
private String getTypeStr(final JavaType fieldType) { builder.getImportRegistrationResolver().addImport(fieldType);
super(identifier, aspectName, governorPhysicalTypeMetadata); this.importResolver = builder.getImportRegistrationResolver(); this.entity = entity; this.repository = repository;
hiddenIdFieldName = governorTypeDetails.getUniqueFieldName(field.getFieldName().getSymbolName() + "Keys"); builder.getImportRegistrationResolver().addImport(GAE_DATASTORE_KEY_FACTORY); builder.addField(getMultipleEntityIdField(hiddenIdFieldName)); } else {
builder.getImportRegistrationResolver().addImports(RANDOM, SECURE_RANDOM);
builder.getImportRegistrationResolver().addImport(collectionType); builder.getImportRegistrationResolver().addImport(collectionType);
builder.getImportRegistrationResolver().addImport(DATE); initializer = "new Date(new Date().getTime() - 10000000L)"; } else if (MemberFindingUtils.getAnnotationOfType(field.getAnnotations(), FUTURE) != null) { builder.getImportRegistrationResolver().addImport(DATE); initializer = "new Date(new Date().getTime() + 10000000L)"; } else { builder.getImportRegistrationResolver().addImports(CALENDAR, GREGORIAN_CALENDAR); initializer = "new GregorianCalendar(Calendar.getInstance().get(Calendar.YEAR), \n\t\t\tCalendar.getInstance().get(Calendar.MONTH), \n\t\t\tCalendar.getInstance().get(Calendar.DAY_OF_MONTH), \n\t\t\tCalendar.getInstance().get(Calendar.HOUR_OF_DAY), \n\t\t\tCalendar.getInstance().get(Calendar.MINUTE), \n\t\t\tCalendar.getInstance().get(Calendar.SECOND) + \n\t\t\tnew Double(Math.random() * 1000).intValue()).getTime()"; builder.getImportRegistrationResolver().addImports(CALENDAR, GREGORIAN_CALENDAR); builder.getImportRegistrationResolver().addImports(CALENDAR, GREGORIAN_CALENDAR, TIMESTAMP); initializer = "new Timestamp(new GregorianCalendar(Calendar.getInstance().get(Calendar.YEAR), \n\t\t\tCalendar.getInstance().get(Calendar.MONTH), \n\t\t\tCalendar.getInstance().get(Calendar.DAY_OF_MONTH), \n\t\t\tCalendar.getInstance().get(Calendar.HOUR_OF_DAY), \n\t\t\tCalendar.getInstance().get(Calendar.MINUTE), \n\t\t\tCalendar.getInstance().get(Calendar.SECOND) + \n\t\t\tnew Double(Math.random() * 1000).intValue()).getTime().getTime())"; initializer = StringUtils.defaultIfEmpty(fieldInitializer, "{ 'Y', 'N' }"); } else if (fieldType.equals(BIG_DECIMAL)) { builder.getImportRegistrationResolver().addImport(BIG_DECIMAL); initializer = BIG_DECIMAL.getSimpleTypeName() + ".valueOf(" + INDEX_VAR + ")"; } else if (fieldType.equals(BIG_INTEGER)) { builder.getImportRegistrationResolver().addImport(BIG_INTEGER); initializer = BIG_INTEGER.getSimpleTypeName() + ".valueOf(" + INDEX_VAR + ")"; } else if (fieldType.equals(JavaType.BYTE_OBJECT)) { builder.getImportRegistrationResolver().addImport(fieldType); initializer = fieldType.getSimpleTypeName() + ".class.getEnumConstants()[0]"; } else if (collaboratingMetadata != null && collaboratingMetadata.getEntityType() != null) {
newConstructor.addParameter(LINK_BUILDER_ARGUMENT_NAME, SpringletsJavaType.SPRINGLETS_CONTROLLER_METHOD_LINK_BUILDER_FACTORY); this.builder.getImportRegistrationResolver().addImport( SpringletsJavaType.SPRINGLETS_CONTROLLER_METHOD_LINK_BUILDER_FACTORY); if (StringUtils.isNotBlank(itemLinkBuilderLine)) {
builder.getImportRegistrationResolver().addImport(collectionType); builder.getImportRegistrationResolver().addImports(collectionType, LIST, ARRAY_LIST);
private MethodMetadataBuilder getEmbeddedClassMutatorMethod(final EmbeddedHolder embeddedHolder) { final JavaSymbolName methodName = getEmbeddedFieldMutatorMethodName(embeddedHolder.getEmbeddedField().getFieldName()); final JavaType[] parameterTypes = {entity, JavaType.INT_PRIMITIVE}; // Locate user-defined method if (governorHasMethod(methodName, parameterTypes)) { // Method found in governor so do not create method in ITD return null; } final InvocableMemberBodyBuilder bodyBuilder = new InvocableMemberBodyBuilder(); // Create constructor for embedded class final JavaType embeddedFieldType = embeddedHolder.getEmbeddedField().getFieldType(); builder.getImportRegistrationResolver().addImport(embeddedFieldType); bodyBuilder.appendFormalLine(embeddedFieldType.getSimpleTypeName() + " embeddedClass = new " + embeddedFieldType.getSimpleTypeName() + "();"); for (final FieldMetadata field : embeddedHolder.getFields()) { bodyBuilder.appendFormalLine(getEmbeddedFieldMutatorMethodName( embeddedHolder.getEmbeddedField().getFieldName(), field.getFieldName()).getSymbolName() + "(embeddedClass, " + INDEX_VAR + ");"); } bodyBuilder.appendFormalLine(OBJ_VAR + "." + embeddedHolder.getEmbeddedMutatorMethodName() + "(embeddedClass);"); final List<JavaSymbolName> parameterNames = Arrays.asList(OBJ_SYMBOL, INDEX_SYMBOL); return new MethodMetadataBuilder(getId(), Modifier.PUBLIC, methodName, JavaType.VOID_PRIMITIVE, AnnotatedJavaType.convertFromJavaTypes(parameterTypes), parameterNames, bodyBuilder); }
ImportRegistrationResolver importResolver = builder.getImportRegistrationResolver();
private void addToImports(final List<JavaType> parameterTypes) { if (parameterTypes != null) { final List<JavaType> typesToImport = new ArrayList<JavaType>(); for (final JavaType parameterType : parameterTypes) { if (!JdkJavaType.isPartOfJavaLang(parameterType)) { typesToImport.add(parameterType); } } builder.getImportRegistrationResolver().addImports(typesToImport); } }