Class TLcdDimensionFilter.Builder

java.lang.Object
com.luciad.multidimensional.TLcdDimensionFilter.Builder
Enclosing class:
TLcdDimensionFilter

public static final class TLcdDimensionFilter.Builder extends Object
A builder for filters which reuses filter instances as much as possible. This is safe because filters themselves are immutable.
Since:
2016.0
  • Method Details

    • filterDimension

      public TLcdDimensionFilter.Builder filterDimension(TLcdDimensionAxis<?> aAxis, TLcdDimensionInterval<?> aInterval)
      Sets the filter value for the given axis to the given interval. This will replace any existing entry for the given axis.
      Parameters:
      aAxis - an axis to filter on
      aInterval - the interval to filter on
      Returns:
      this builder
    • all

      Sets all the given filter's values on this builder.
      Parameters:
      aFilter - a filter, must not be null
      Returns:
      this builder
    • clear

      Clears this filter builder such that filter.clear().build() == EMPTY_FILTER is true. This is useful for reusing a builder.
      Returns:
      this builder
    • build

      public TLcdDimensionFilter build()
      Builds a dimensional filter using this builder's current values. This builder reuses filters as much as possible, which is safe because filters are immutable. This means that if this builder was created from an existing filter and the builder was not modified, it will return the same instance of the filter it was created from: filter.asBuilder().build() == filter is true.
      Returns:
      a dimensional filter, never null