Class BeanFilter<T>

java.lang.Object
org.oddjob.beanbus.AbstractFilter<T,T>
org.oddjob.beanbus.destinations.BeanFilter<T>
Type Parameters:
T -
All Implemented Interfaces:
Consumer<T>, BusFilter<T,T>, Outbound<T>

public class BeanFilter<T> extends AbstractFilter<T,T> implements BusFilter<T,T>
Author:
rob

Description

Filter out data passing through the bus according to an Predicate.

Example

Filter out Bananas.
<oddjob>

    <job>

        <bus:bus id="bean-bus" xmlns:bus="oddjob:beanbus">

            <of>

                <bus:driver>

                    <values>

                        <list>

                            <values>

                                <value value="Apple"/>

                                <value value="Banana"/>

                                <value value="Pear"/>

                            </values>

                        </list>

                    </values>

                </bus:driver>

                <bus:filter>

                    <predicate>

                        <value value="#{ function(x) { return x != 'Banana' }}"/>

                    </predicate>

                </bus:filter>

                <bus:collect id="results"/>

            </of>

        </bus:bus>

    </job>

</oddjob>
  • Constructor Details

    • BeanFilter

      public BeanFilter()
  • Method Details

    • filter

      protected T filter(T from)
      Specified by:
      filter in class AbstractFilter<T,T>
    • reset

      public void reset()
    • getPassed

      public int getPassed()
    • getBlocked

      public int getBlocked()
    • getPredicate

      public Predicate<? super T> getPredicate()
    • setPredicate

      public void setPredicate(Predicate<? super T> filter)