Package org.springframework.roo.classpath.details

Examples of org.springframework.roo.classpath.details.FieldMetadata


    this.interfaceMethods = interfaceMethods;

    // Add getters and setters
    for (final Entry<FieldMetadata, JavaSymbolName> entry : declaredFields
        .entrySet()) {
      final FieldMetadata field = entry.getKey();
      final MethodMetadataBuilder accessorMethod = getDeclaredGetter(field);
      final MethodMetadataBuilder mutatorMethod = getDeclaredSetter(field);

      // Check to see if GAE is interested
      if (entry.getValue() != null) {
        JavaSymbolName hiddenIdFieldName;
        if (field.getFieldType().isCommonCollectionType()) {
          hiddenIdFieldName = governorTypeDetails
              .getUniqueFieldName(field.getFieldName()
                  .getSymbolName() + "Keys");
          builder.getImportRegistrationResolver().addImport(
              GAE_DATASTORE_KEY_FACTORY);
          builder.addField(getMultipleEntityIdField(hiddenIdFieldName));
        } else {
          hiddenIdFieldName = governorTypeDetails
              .getUniqueFieldName(field.getFieldName()
                  .getSymbolName() + "Id");
          builder.addField(getSingularEntityIdField(hiddenIdFieldName));
        }

        processGaeAnnotations(field);
View Full Code Here


                requiredAccessorName, idField.getFieldType(), bodyBuilder);
    }

    private FieldMetadata getIdentifierField() {
        if (parent != null) {
            final FieldMetadata parentIdField = parent.getIdentifierField();
            if (parentIdField.getFieldType().equals(idType)) {
                return parentIdField;
            }
        }

        // Try to locate an existing field with DATA_ID
View Full Code Here

                .getIdentifierFields(javaType);
        if (identifierFields.isEmpty()) {
            return null;
        }

        final FieldMetadata identifierField = identifierFields.get(0);
        final boolean embeddedIdField = identifierField.getCustomData().get(
                CustomDataKeys.EMBEDDED_ID_FIELD) != null;
        final List<FieldMetadata> embeddedIdFields = persistenceMemberLocator
                .getEmbeddedIdentifierFields(javaType);
        return new IdentifierHolder(identifierField, embeddedIdField,
                embeddedIdFields);
View Full Code Here

        final IdentifierHolder identifierHolder = getIdentifierHolder(javaType);
        if (identifierHolder == null) {
            return null;
        }

        final FieldMetadata versionField = getVersionField(javaType,
                metadataIdentificationString);

        // Search for database-managed entities
        final Iterable<ClassOrInterfaceTypeDetails> managedEntities = typeLocationService
                .findClassesOrInterfaceDetailsWithAnnotation(ROO_DB_MANAGED);
View Full Code Here

     * {@link PersistenceMemberLocator} to return a mock repository for our test
     * entity.
     */
    private void setUpMockRepository() {
        final ClassOrInterfaceTypeDetails mockRepositoryDetails = mock(ClassOrInterfaceTypeDetails.class);
        final FieldMetadata mockFieldMetadata = mock(FieldMetadata.class);
        final JavaType mockRepositoryType = mock(JavaType.class);
        when(mockRepositoryType.getSimpleTypeName()).thenReturn("ClinicRepo");
        when(mockIdType.getFullyQualifiedTypeName()).thenReturn(
                Long.class.getName());
        when(mockRepositoryDetails.getName()).thenReturn(mockRepositoryType);
        when(mockFieldMetadata.getFieldType()).thenReturn(mockIdType);
        when(mockRepositoryLocator.getRepositories(mockTargetEntity))
                .thenReturn(Arrays.asList(mockRepositoryDetails));
    }
View Full Code Here

    private void doModification(final FieldMetadata field,
            final CustomData customData) {
        final MemberHoldingTypeDetails memberHoldingTypeDetails = memberHoldingTypeDetailsMap
                .get(field.getDeclaredByMetadataId());
        if (memberHoldingTypeDetails != null) {
            final FieldMetadata matchedField = memberHoldingTypeDetails
                    .getField(field.getFieldName());
            if (matchedField != null
                    && !matchedField.getCustomData().keySet()
                            .containsAll(customData.keySet())) {
                final TypeDetailsBuilder typeDetailsBuilder = getTypeDetailsBuilder(memberHoldingTypeDetails);
                typeDetailsBuilder.addDataToField(field, customData);
                changed = true;
            }
View Full Code Here

                    }
                });

        final List<?> excludeFieldsList = CollectionUtils
                .arrayToList(excludeFields);
        final FieldMetadata versionField = persistenceMemberLocator
                .getVersionField(javaType);

        for (final FieldMetadata field : memberDetails.getFields()) {
            if (excludeFieldsList
                    .contains(field.getFieldName().getSymbolName())) {
                continue;
            }
            if (Modifier.isStatic(field.getModifier())
                    || Modifier.isTransient(field.getModifier())
                    || field.getFieldType().isCommonCollectionType()
                    || field.getFieldType().isArray()) {
                continue;
            }
            if (versionField != null
                    && field.getFieldName().equals(versionField.getFieldName())) {
                continue;
            }

            locatedFields.add(field);
            metadataDependencyRegistry.registerDependency(
View Full Code Here

    private FieldMetadataBuilder getField() {
        final JavaSymbolName fieldName = new JavaSymbolName("typeConverter");

        // Locate user-defined field
        final FieldMetadata userField = governorTypeDetails.getField(fieldName);
        final JavaType fieldType = SpringJavaType.SIMPLE_TYPE_CONVERTER;
        if (userField != null) {
            Validate.isTrue(userField.getFieldType().equals(fieldType),
                    "Field '%s' on '%s' must be of type '%s'", fieldName,
                    destination, fieldType.getNameIncludingTypeParameters());
            return new FieldMetadataBuilder(userField);
        }
View Full Code Here

                continue;
            }

            // Not interested in fields that are JPA transient fields or
            // immutable fields
            final FieldMetadata field = BeanInfoUtils
                    .getFieldForJavaBeanMethod(this, method);
            if (field == null
                    || field.getCustomData().keySet()
                            .contains(CustomDataKeys.TRANSIENT_FIELD)
                    || !BeanInfoUtils.hasAccessorAndMutator(field, this)) {
                continue;
            }
            final JavaType returnType = method.getReturnType();
            if (returnType.isCommonCollectionType()) {
                for (final JavaType genericType : returnType.getParameters()) {
                    fieldTypes.add(genericType);
                }
            }
            else {
                if (!field.getCustomData().keySet().contains(EMBEDDED_FIELD)) {
                    fieldTypes.add(returnType);
                }
            }
        }
        return fieldTypes;
View Full Code Here

        final List<FieldMetadata> fields = MemberFindingUtils.getFieldsWithTag(
                memberDetails, EMBEDDED_ID_FIELD);
        if (fields.isEmpty()) {
            return null;
        }
        final FieldMetadata embeddedIdField = fields.get(0);
        final MemberDetails identifierMemberDetails = getMemberDetails(embeddedIdField
                .getFieldType());
        if (identifierMemberDetails == null) {
            return null;
        }
View Full Code Here

TOP

Related Classes of org.springframework.roo.classpath.details.FieldMetadata

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.