Class DataBindingUtils


  • public class DataBindingUtils
    extends java.lang.Object
    Utility methods to perform data binding from Grails objects.
    Since:
    1.0
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void assignBidirectionalAssociations​(java.lang.Object object, java.util.Map source, org.grails.datastore.mapping.model.PersistentEntity persistentEntity)
      Associations both sides of any bidirectional relationships found in the object and source map to bind
      static org.springframework.validation.BindingResult bindObjectToDomainInstance​(org.grails.datastore.mapping.model.PersistentEntity entity, java.lang.Object object, java.lang.Object source)
      Binds the given source object to the given target object performing type conversion if necessary
      static org.springframework.validation.BindingResult bindObjectToDomainInstance​(org.grails.datastore.mapping.model.PersistentEntity entity, java.lang.Object object, java.lang.Object source, java.util.List include, java.util.List exclude, java.lang.String filter)
      Binds the given source object to the given target object performing type conversion if necessary
      static org.springframework.validation.BindingResult bindObjectToInstance​(java.lang.Object object, java.lang.Object source)
      Binds the given source object to the given target object performing type conversion if necessary
      static org.springframework.validation.BindingResult bindObjectToInstance​(java.lang.Object object, java.lang.Object source, java.util.List include, java.util.List exclude, java.lang.String filter)
      Binds the given source object to the given target object performing type conversion if necessary
      static <T> void bindToCollection​(java.lang.Class<T> targetType, java.util.Collection<T> collectionToPopulate, grails.databinding.CollectionDataBindingSource collectionBindingSource)
      For each DataBindingSource provided by collectionBindingSource a new instance of targetType is created, data binding is imposed on that instance with the DataBindingSource and the instance is added to the end of collectionToPopulate
      static <T> void bindToCollection​(java.lang.Class<T> targetType, java.util.Collection<T> collectionToPopulate, javax.servlet.ServletRequest request)  
      static java.util.Map convertPotentialGStrings​(java.util.Map<java.lang.Object,​java.lang.Object> args)  
      static grails.databinding.CollectionDataBindingSource createCollectionDataBindingSource​(grails.core.GrailsApplication grailsApplication, java.lang.Class bindingTargetType, java.lang.Object bindingSource)  
      static grails.databinding.DataBindingSource createDataBindingSource​(grails.core.GrailsApplication grailsApplication, java.lang.Class bindingTargetType, java.lang.Object bindingSource)  
      protected static java.util.List getBindingIncludeList​(java.lang.Object object)  
      static org.grails.web.databinding.bindingsource.DataBindingSourceRegistry getDataBindingSourceRegistry​(grails.core.GrailsApplication grailsApplication)  
      protected static java.lang.String[] getMessageCodes​(java.lang.String messageCode, java.lang.Class objectType)  
      static grails.web.mime.MimeType getMimeType​(grails.core.GrailsApplication grailsApplication, java.lang.Object bindingSource)  
      static grails.web.mime.MimeTypeResolver getMimeTypeResolver​(grails.core.GrailsApplication grailsApplication)  
      static grails.web.mime.MimeType resolveMimeType​(java.lang.Object bindingSource, grails.web.mime.MimeTypeResolver mimeTypeResolver)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • DATA_BINDER_BEAN_NAME

        public static final java.lang.String DATA_BINDER_BEAN_NAME
        See Also:
        Constant Field Values
    • Constructor Detail

      • DataBindingUtils

        public DataBindingUtils()
    • Method Detail

      • assignBidirectionalAssociations

        public static void assignBidirectionalAssociations​(java.lang.Object object,
                                                           java.util.Map source,
                                                           org.grails.datastore.mapping.model.PersistentEntity persistentEntity)
        Associations both sides of any bidirectional relationships found in the object and source map to bind
        Parameters:
        object - The object
        source - The source map
        persistentEntity - The PersistentEntity for the object
      • bindObjectToInstance

        public static org.springframework.validation.BindingResult bindObjectToInstance​(java.lang.Object object,
                                                                                        java.lang.Object source)
        Binds the given source object to the given target object performing type conversion if necessary
        Parameters:
        object - The object to bind to
        source - The source object
        Returns:
        A BindingResult if there were errors or null if it was successful
      • getBindingIncludeList

        protected static java.util.List getBindingIncludeList​(java.lang.Object object)
      • bindObjectToDomainInstance

        public static org.springframework.validation.BindingResult bindObjectToDomainInstance​(org.grails.datastore.mapping.model.PersistentEntity entity,
                                                                                              java.lang.Object object,
                                                                                              java.lang.Object source)
        Binds the given source object to the given target object performing type conversion if necessary
        Parameters:
        entity - The PersistentEntity instance
        object - The object to bind to
        source - The source object
        Returns:
        A BindingResult if there were errors or null if it was successful
        See Also:
        PersistentEntity
      • bindToCollection

        public static <T> void bindToCollection​(java.lang.Class<T> targetType,
                                                java.util.Collection<T> collectionToPopulate,
                                                grails.databinding.CollectionDataBindingSource collectionBindingSource)
                                         throws java.lang.InstantiationException,
                                                java.lang.IllegalAccessException
        For each DataBindingSource provided by collectionBindingSource a new instance of targetType is created, data binding is imposed on that instance with the DataBindingSource and the instance is added to the end of collectionToPopulate
        Parameters:
        targetType - The type of objects to create, must be a concrete class
        collectionToPopulate - A collection to populate with new instances of targetType
        collectionBindingSource - A CollectionDataBindingSource
        Throws:
        java.lang.InstantiationException
        java.lang.IllegalAccessException
        Since:
        2.3
      • bindToCollection

        public static <T> void bindToCollection​(java.lang.Class<T> targetType,
                                                java.util.Collection<T> collectionToPopulate,
                                                javax.servlet.ServletRequest request)
                                         throws java.lang.InstantiationException,
                                                java.lang.IllegalAccessException
        Throws:
        java.lang.InstantiationException
        java.lang.IllegalAccessException
      • bindObjectToInstance

        public static org.springframework.validation.BindingResult bindObjectToInstance​(java.lang.Object object,
                                                                                        java.lang.Object source,
                                                                                        java.util.List include,
                                                                                        java.util.List exclude,
                                                                                        java.lang.String filter)
        Binds the given source object to the given target object performing type conversion if necessary
        Parameters:
        object - The object to bind to
        source - The source object
        include - The list of properties to include
        exclude - The list of properties to exclude
        filter - The prefix to filter by
        Returns:
        A BindingResult if there were errors or null if it was successful
      • bindObjectToDomainInstance

        public static org.springframework.validation.BindingResult bindObjectToDomainInstance​(org.grails.datastore.mapping.model.PersistentEntity entity,
                                                                                              java.lang.Object object,
                                                                                              java.lang.Object source,
                                                                                              java.util.List include,
                                                                                              java.util.List exclude,
                                                                                              java.lang.String filter)
        Binds the given source object to the given target object performing type conversion if necessary
        Parameters:
        entity - The PersistentEntity instance
        object - The object to bind to
        source - The source object
        include - The list of properties to include
        exclude - The list of properties to exclude
        filter - The prefix to filter by
        Returns:
        A BindingResult if there were errors or null if it was successful
        See Also:
        PersistentEntity
      • getMessageCodes

        protected static java.lang.String[] getMessageCodes​(java.lang.String messageCode,
                                                            java.lang.Class objectType)
      • getDataBindingSourceRegistry

        public static org.grails.web.databinding.bindingsource.DataBindingSourceRegistry getDataBindingSourceRegistry​(grails.core.GrailsApplication grailsApplication)
      • createDataBindingSource

        public static grails.databinding.DataBindingSource createDataBindingSource​(grails.core.GrailsApplication grailsApplication,
                                                                                   java.lang.Class bindingTargetType,
                                                                                   java.lang.Object bindingSource)
      • createCollectionDataBindingSource

        public static grails.databinding.CollectionDataBindingSource createCollectionDataBindingSource​(grails.core.GrailsApplication grailsApplication,
                                                                                                       java.lang.Class bindingTargetType,
                                                                                                       java.lang.Object bindingSource)
      • getMimeType

        public static grails.web.mime.MimeType getMimeType​(grails.core.GrailsApplication grailsApplication,
                                                           java.lang.Object bindingSource)
      • getMimeTypeResolver

        public static grails.web.mime.MimeTypeResolver getMimeTypeResolver​(grails.core.GrailsApplication grailsApplication)
      • resolveMimeType

        public static grails.web.mime.MimeType resolveMimeType​(java.lang.Object bindingSource,
                                                               grails.web.mime.MimeTypeResolver mimeTypeResolver)
      • convertPotentialGStrings

        public static java.util.Map convertPotentialGStrings​(java.util.Map<java.lang.Object,​java.lang.Object> args)