Package: org.grails.web.databinding

## [Java] Class DefaultASTDatabindingHelper

- org.grails.web.databinding.DefaultASTDatabindingHelper

- All Implemented Interfaces and Traits:
    ASTDatabindingHelper

      public class DefaultASTDatabindingHelper
      extends java.lang.Object
      implements ASTDatabindingHelper

- - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `static java.lang.String` | `BINDABLE_CONSTRAINT_NAME` |
    `private static java.util.Map<org.codehaus.groovy.ast.ClassNode, java.util.Set<java.lang.String>>` | `CLASS_NODE_TO_WHITE_LIST_PROPERTY_NAMES` |
    `static java.lang.String` | `CONSTRAINTS_FIELD_NAME` |
    `static java.lang.String` | `DEFAULT_DATABINDING_WHITELIST` |
    `private static java.util.Set<java.lang.String>` | `DOMAIN_CLASS_PROPERTIES_TO_EXCLUDE_BY_DEFAULT` |
    `static java.lang.String` | `NO_BINDABLE_PROPERTIES` |
    `private static java.util.List<org.codehaus.groovy.ast.ClassNode>` | `SIMPLE_TYPES` |

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `private void` | `addDefaultDatabindingWhitelistField(org.codehaus.groovy.control.SourceUnit sourceUnit, org.codehaus.groovy.ast.ClassNode classNode)`
    `` | `private org.codehaus.groovy.ast.FieldNode` | `getDeclaredFieldInInheritanceHierarchy(org.codehaus.groovy.ast.ClassNode classNode, java.lang.String propertyName)`
    `` | `private java.util.Set<java.lang.String>` | `getPropertyNamesExpressedInTransientsList(org.codehaus.groovy.ast.ClassNode classNode)`
    `` | `private java.util.Set<java.lang.String>` | `getPropertyNamesToIncludeInWhiteList(org.codehaus.groovy.control.SourceUnit sourceUnit, org.codehaus.groovy.ast.ClassNode classNode)`
    `` | `private java.util.Set<java.lang.String>` | `getPropertyNamesToIncludeInWhiteListForParentClass(org.codehaus.groovy.control.SourceUnit sourceUnit, org.codehaus.groovy.ast.ClassNode parentClassNode)`
    `` | `public void` | `injectDatabindingCode(org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.classgen.GeneratorContext context, org.codehaus.groovy.ast.ClassNode classNode)`
    `` | `private boolean` | `shouldFieldBeInWhiteList(org.codehaus.groovy.ast.FieldNode fieldNode, java.util.Set<java.lang.String> fieldsInTransientsList, boolean isDomainClass)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class java.lang.Object` | `java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()`

- - ### Field Detail

    - #### public static final java.lang.String BINDABLE_CONSTRAINT_NAME

    - #### private static java.util.Map<org.codehaus.groovy.ast.ClassNode, java.util.Set<java.lang.String>> CLASS_NODE_TO_WHITE_LIST_PROPERTY_NAMES

    - #### public static final java.lang.String CONSTRAINTS_FIELD_NAME

    - #### public static final java.lang.String DEFAULT_DATABINDING_WHITELIST

    - #### private static final java.util.Set<java.lang.String> DOMAIN_CLASS_PROPERTIES_TO_EXCLUDE_BY_DEFAULT

    - #### public static final java.lang.String NO_BINDABLE_PROPERTIES

    - #### @java.lang.SuppressWarnings("serial") private static final java.util.List<org.codehaus.groovy.ast.ClassNode> SIMPLE_TYPES

  - ### Method Detail

    - #### private void addDefaultDatabindingWhitelistField(org.codehaus.groovy.control.SourceUnit sourceUnit, org.codehaus.groovy.ast.ClassNode classNode)

    - #### private org.codehaus.groovy.ast.FieldNode getDeclaredFieldInInheritanceHierarchy(org.codehaus.groovy.ast.ClassNode classNode, java.lang.String propertyName)

    - #### private java.util.Set<java.lang.String> getPropertyNamesExpressedInTransientsList(org.codehaus.groovy.ast.ClassNode classNode)

    - #### private java.util.Set<java.lang.String> getPropertyNamesToIncludeInWhiteList(org.codehaus.groovy.control.SourceUnit sourceUnit, org.codehaus.groovy.ast.ClassNode classNode)

    - #### private java.util.Set<java.lang.String> getPropertyNamesToIncludeInWhiteListForParentClass(org.codehaus.groovy.control.SourceUnit sourceUnit, org.codehaus.groovy.ast.ClassNode parentClassNode)

    - #### public void injectDatabindingCode(org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.classgen.GeneratorContext context, org.codehaus.groovy.ast.ClassNode classNode)

    - #### private boolean shouldFieldBeInWhiteList(org.codehaus.groovy.ast.FieldNode fieldNode, java.util.Set<java.lang.String> fieldsInTransientsList, boolean isDomainClass)