.getFormBackingObject();
if (!annotationValues.isAnnotationFound() || formBackingType == null) {
return null;
}
final MemberDetails formBackingObjectMemberDetails = getMemberDetails(formBackingType);
if (formBackingObjectMemberDetails == null) {
return null;
}
final MemberHoldingTypeDetails formBackingMemberHoldingTypeDetails = MemberFindingUtils
.getMostConcreteMemberHoldingTypeDetailsWithTag(
formBackingObjectMemberDetails, PERSISTENT_TYPE);
if (formBackingMemberHoldingTypeDetails == null) {
return null;
}
final Map<MethodMetadataCustomDataKey, MemberTypeAdditions> crudAdditions = webMetadataService
.getCrudAdditions(formBackingType, metadataIdentificationString);
if (CollectionUtils.isEmpty(crudAdditions)) {
return null;
}
// We need to be informed if our dependent metadata changes
metadataDependencyRegistry.registerDependency(
formBackingMemberHoldingTypeDetails.getDeclaredByMetadataId(),
metadataIdentificationString);
// Remember that this entity JavaType matches up with this metadata
// identification string
// Start by clearing any previous association
final JavaType oldEntity = webScaffoldMidToEntityMap
.get(metadataIdentificationString);
if (oldEntity != null) {
entityToWebScaffoldMidMap.remove(oldEntity);
}
entityToWebScaffoldMidMap.put(formBackingType,
metadataIdentificationString);
webScaffoldMidToEntityMap.put(metadataIdentificationString,
formBackingType);
final FieldMetadata idField = webMetadataService
.getIdentifierField(formBackingType);
final SortedMap<JavaType, JavaTypeMetadataDetails> relatedApplicationTypeMetadata = webMetadataService
.getRelatedApplicationTypeMetadata(formBackingType,
formBackingObjectMemberDetails,
metadataIdentificationString);
final List<JavaTypeMetadataDetails> dependentApplicationTypeMetadata = webMetadataService
.getDependentApplicationTypeMetadata(formBackingType,
formBackingObjectMemberDetails,
metadataIdentificationString);
final Map<JavaSymbolName, DateTimeFormatDetails> datePatterns = webMetadataService
.getDatePatterns(formBackingType,
formBackingObjectMemberDetails,
metadataIdentificationString);
final Collection<JavaType> editableFieldTypes = formBackingObjectMemberDetails
.getPersistentFieldTypes(formBackingType,
persistenceMemberLocator);
return new WebScaffoldMetadata(metadataIdentificationString,
aspectName, governorPhysicalType, annotationValues, idField,