Class LazyFilterFeatureHolder

FeatureHolder which lazily applies a specified filter to another FeatureHolder.
This means that when you use a second filter to query the LazyFilterFeatureHolder,
the underlying holder receives a single filter request with the
two queries ANDed together.

isUnchanging

If this returns true, then it is guaranteed that change events of this type
(and all child types) can never under any circumstances be fired by this
Changeable instance. If it returns false, that does not mean that this type
of event will or even can be raised, but that it is worth registering
listeners incase.

getSchema

Return a schema-filter for this FeatureHolder. This is a filter
which all Features immediately contained by this FeatureHolder
will match. It need not directly match their child features, but it can (and should!) provide
information about them using FeatureFilter.OnlyChildren filters. In cases where there
is no feature hierarchy, this can be indicated by including FeatureFilter.leaf in
the schema filter.

For the truly non-informative case, it is possible to return FeatureFilter.all. However,
it is almost always possible to provide slightly more information that this. For example, Sequence
objects should, at a minimum, return FeatureFilter.top_level. Feature objects
should, as a minimum, return FeatureFilter.ByParent(new FeatureFilter.ByFeature(this)).