java.lang.Object
org.broadleafcommerce.openadmin.server.service.persistence.module.provider.AbstractFieldPersistenceProvider
org.broadleafcommerce.openadmin.server.service.persistence.module.provider.FieldPersistenceProviderAdapter
All Implemented Interfaces:
FieldPersistenceProvider, org.springframework.core.Ordered
Direct Known Subclasses:
AbstractMoneyFieldPersistenceProvider, BasicFieldPersistenceProvider, DefaultFieldPersistenceProvider, MediaFieldPersistenceProvider, RuleFieldPersistenceProvider

public class FieldPersistenceProviderAdapter extends AbstractFieldPersistenceProvider
Author:
Jeff Fischer
  • Constructor Details

    • FieldPersistenceProviderAdapter

      public FieldPersistenceProviderAdapter()
  • Method Details

    • addSearchMapping

      public MetadataProviderResponse addSearchMapping(AddSearchMappingRequest addSearchMappingRequest, List<FilterMapping> filterMappings)
      Description copied from interface: FieldPersistenceProvider
      Add FilterMapping instances. The FilterMappings are used by the system to refine the fetch criteria used to retrieve lists of records for the admin. The requestedCto contains filters requested from the admin and is generally used to drive the added FilterMapping instances.
      Parameters:
      addSearchMappingRequest - contains the requested cto and support classes.
      filterMappings - filter criteria should be added here. It is used to generate the final search criteria.
      Returns:
      whether or not the implementation handled the persistence request
    • populateValue

      public MetadataProviderResponse populateValue(PopulateValueRequest populateValueRequest, Serializable instance)
      Description copied from interface: FieldPersistenceProvider
      Set the property value on the target object. Implementations should translate the requestedValue field from the request and set on the instance parameter. You are basically taking the string value submitted by the admin application and converting it into the format required to set on the target field of instance (which should be a JPA managed entity). Used during admin create and update events.
      Parameters:
      populateValueRequest - contains the requested value and support classes.
      instance - the persistence entity instance on which to set the value harvested from the request
      Returns:
      whether or not the implementation handled the persistence request
    • extractValue

      public MetadataProviderResponse extractValue(ExtractValueRequest extractValueRequest, Property property)
      Description copied from interface: FieldPersistenceProvider
      Retrieve the property value from the requestedValue field from the request. Implementations should translate the requestedValue and set on the property parameter. The requestedValue is the field value taken from the JPA managed entity instance. You are taking this field value and converting it into a string representation appropriate for the property instance parameter. Used during admin fetch events.
      Parameters:
      extractValueRequest - contains the requested value and support classes.
      property - the property for the admin that will contain the information harvested from the persistence value
      Returns:
      whether or not the implementation handled the persistence request
    • filterProperties

      public MetadataProviderResponse filterProperties(AddFilterPropertiesRequest addFilterPropertiesRequest, Map<String,FieldMetadata> properties)
      Description copied from interface: FieldPersistenceProvider
      Filter the list of properties posted by the admin during and add or update. This is the property list immediately before persistence is attempted. Properties may be altered, removed or added.
      Parameters:
      addFilterPropertiesRequest - contains the Entity instance.
      properties - the collection of properties to filter
      Returns:
      whether or not the implementation handled the persistence request
    • getOrder

      public int getOrder()
    • checkDirtyState

      protected boolean checkDirtyState(PopulateValueRequest request, Object instance, Object checkValue) throws Exception
      Throws:
      Exception
    • isFieldDirty

      protected boolean isFieldDirty(PopulateValueRequest request, Object instance, Object checkValue) throws IllegalAccessException, FieldNotAvailableException
      Throws:
      IllegalAccessException
      FieldNotAvailableException
    • setNonDisplayableValues

      protected void setNonDisplayableValues(PopulateValueRequest request)