Class FeatureFilter.OnlyDescendants

  • All Implemented Interfaces:
    java.io.Serializable, FeatureFilter, OptimizableFilter
    Enclosing interface:
    FeatureFilter

    public static class FeatureFilter.OnlyDescendants
    extends java.lang.Object
    implements OptimizableFilter
    Accepts features where all descendants meet the supplied filter. This will be true in the case where no child features exist. Mainly useful for defining schemas of feature-trees.
    Since:
    1.3
    Author:
    Thomas Down
    See Also:
    Serialized Form
    • Constructor Detail

    • Method Detail

      • accept

        public boolean accept​(Feature f)
        Description copied from interface: FeatureFilter
        This method determines whether a feature is to be accepted.
        Specified by:
        accept in interface FeatureFilter
        Parameters:
        f - the Feature to evaluate
        Returns:
        true if this feature is to be selected in, or false if it is to be ignored
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • isProperSubset

        public boolean isProperSubset​(FeatureFilter ff)
        Description copied from interface: OptimizableFilter
        Returns true if this filter is a proper subset of sup - that is, for every feature that matches this, it also matches sup. The empty filter is a proper subset of all filters. All filters are a proper subset of the all filter. All filters are proper subsets of themselves.
        Specified by:
        isProperSubset in interface OptimizableFilter
        Parameters:
        ff - the potential super set
        Returns:
        true if sup contains all features contained by this filter
      • isDisjoint

        public boolean isDisjoint​(FeatureFilter ff)
        Description copied from interface: OptimizableFilter
        Returns true if this filter is disjoint from filt - that is, there is no Feature that is accepted by both filters. The empty filter is disjoint from all other filters. The all filter is disjoint from none.
        Specified by:
        isDisjoint in interface OptimizableFilter