com.google.gwt.core.ext

## Class SubsetFilteringPropertyOracle

- java.lang.Object
- - com.google.gwt.core.ext.SubsetFilteringPropertyOracle

- All Implemented Interfaces:
    PropertyOracle

      public class SubsetFilteringPropertyOracle
      extends java.lang.Object
      implements PropertyOracle

  A property oracle that prevents access to any properties not named in its predefined set.
  Used by the generator driver framework to limit property access for the purpose of forcing generators to accurately declare their property dependencies.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SubsetFilteringPropertyOracle(java.util.Set<java.lang.String> accessiblePropertyNames, PropertyOracle wrappedPropertyOracle, java.lang.String accessViolationMessage)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `ConfigurationProperty` | `getConfigurationProperty(java.lang.String propertyName)` Attempts to get a named configuration property.
    `SelectionProperty` | `getSelectionProperty(TreeLogger logger, java.lang.String propertyName)` Attempts to get a named deferred binding property.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SubsetFilteringPropertyOracle

          public SubsetFilteringPropertyOracle(java.util.Set<java.lang.String> accessiblePropertyNames,
                                               PropertyOracle wrappedPropertyOracle,
                                               java.lang.String accessViolationMessage)

  - ### Method Detail

    - #### getConfigurationProperty

          public ConfigurationProperty getConfigurationProperty(java.lang.String propertyName)
                                                         throws BadPropertyValueException

      Description copied from interface: `PropertyOracle`
      Attempts to get a named configuration property. Throws `BadPropertyValueException` if the property is undefined. The result of invoking this method with the same `propertyName` must be stable.
      Specified by:
        `getConfigurationProperty` in interface `PropertyOracle`
      Returns:
        the configuration property instance (never null)
      Throws:
        `BadPropertyValueException` - if the property is unknown or not a configuration property

    - #### getSelectionProperty

          public SelectionProperty getSelectionProperty(TreeLogger logger,
                                                        java.lang.String propertyName)
                                                 throws BadPropertyValueException

      Description copied from interface: `PropertyOracle`
      Attempts to get a named deferred binding property. Throws `BadPropertyValueException` if the property is either undefined or has a value that is unsupported. The result of invoking this method with the same `propertyName` must be stable.
      Specified by:
        `getSelectionProperty` in interface `PropertyOracle`
      Returns:
        the selection property instance (never null)
      Throws:
        `BadPropertyValueException` - if the property is unknown or not a selection property