Interface FieldMetadataProvider

All Superinterfaces:
org.springframework.core.Ordered
All Known Implementing Classes:
AbstractFieldMetadataProvider, AdornedTargetCollectionFieldMetadataProvider, AdvancedCollectionFieldMetadataProvider, BasicFieldMetadataProvider, CollectionFieldMetadataProvider, DefaultFieldMetadataProvider, FieldMetadataProviderAdapter, MapFieldMetadataProvider, MapFieldsFieldMetadataProvider, PasswordFieldMetadataProvider

public interface FieldMetadataProvider extends org.springframework.core.Ordered
Classes implementing this interface are capable of manipulating metadata for a field resulting from the inspection phase for the admin. Providers are typically added in response to new admin presentation annotation support. Implementers should generally extend FieldMetadataProviderAdapter.
Author:
Jeff Fischer
  • Field Details

  • Method Details

    • addMetadata

      MetadataProviderResponse addMetadata(AddFieldMetadataRequest addFieldMetadataRequest, Map<String,FieldMetadata> metadata)
      Contribute to metadata inspection for the Field instance in the request. Implementations should add values to the metadata parameter.
      Parameters:
      addFieldMetadataRequest - contains the requested field and support classes.
      metadata - implementations should add metadata for the requested field here
      Returns:
      whether or not this implementation adjusted metadata
    • lateStageAddMetadata

      MetadataProviderResponse lateStageAddMetadata(LateStageAddMetadataRequest lateStageAddMetadataRequest, Map<String,FieldMetadata> metadata)
      Contribute to metadata inspection for the Field instance in the request. Implementations should add values to the metadata parameter.

      This method differs from addMetadata(AddFieldMetadataRequest, Map) in that it will be invoked after the cacheable properties are assembled. It is therefore useful in scenarios where you may want to contribute properties to metadata that are dynamic and should not be cached normally.

      Parameters:
      lateStageAddMetadataRequest - contains the requested field name and support classes.
      metadata - implementations should add metadata for the requested field here
      Returns:
      whether or not this implementation adjusted metadata
    • overrideViaAnnotation

      MetadataProviderResponse overrideViaAnnotation(OverrideViaAnnotationRequest overrideViaAnnotationRequest, Map<String,FieldMetadata> metadata)
      Contribute to metadata inspection for the entity in the request. Implementations should override values in the metadata parameter.
      Parameters:
      overrideViaAnnotationRequest - contains the requested entity and support classes.
      metadata - implementations should override metadata here
      Returns:
      whether or not this implementation adjusted metadata
    • overrideViaXml

      MetadataProviderResponse overrideViaXml(OverrideViaXmlRequest overrideViaXmlRequest, Map<String,FieldMetadata> metadata)
      Contribute to metadata inspection for the ceiling entity and config key. Implementations should override values in the metadata parameter.
      Parameters:
      overrideViaXmlRequest - contains the requested config key, ceiling entity and support classes.
      metadata - implementations should override metadata here
      Returns:
      whether or not this implementation adjusted metadata
    • addMetadataFromMappingData

      MetadataProviderResponse addMetadataFromMappingData(AddMetadataFromMappingDataRequest addMetadataFromMappingDataRequest, FieldMetadata metadata)
      Contribute to metadata inspection using Hibernate column information. Implementations should impact values in the metadata parameter.
      Parameters:
      addMetadataFromMappingDataRequest - contains the requested Hibernate type and support classes.
      metadata - implementations should impact values for the metadata for the field here
      Returns:
      whether or not this implementation adjusted metadata
    • addMetadataFromFieldType

      MetadataProviderResponse addMetadataFromFieldType(AddMetadataFromFieldTypeRequest addMetadataFromFieldTypeRequest, Map<String,FieldMetadata> metadata)
      Contribute to metadata inspection for the Field instance in the request. Implementations should add values to the metadata parameter. This is metadata based on the field type.
      Parameters:
      addMetadataFromFieldTypeRequest - contains the requested field, property name and support classes.
      metadata - implementations should add values for the field here
      Returns:
      whether or not this implementation adjusted metadata