Class IfClosure<E>
- java.lang.Object
 - 
- org.apache.commons.collections4.functors.IfClosure<E>
 
 
- 
- All Implemented Interfaces:
 java.io.Serializable,Closure<E>
public class IfClosure<E> extends java.lang.Object implements Closure<E>, java.io.Serializable
Closure implementation acts as an if statement calling one or other closure based on a predicate.- Since:
 - 3.0
 - See Also:
 - Serialized Form
 
 
- 
- 
Constructor Summary
Constructors Constructor Description IfClosure(Predicate<? super E> predicate, Closure<? super E> trueClosure)Constructor that performs no validation.IfClosure(Predicate<? super E> predicate, Closure<? super E> trueClosure, Closure<? super E> falseClosure)Constructor that performs no validation. 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidexecute(E input)Executes the true or false closure according to the result of the predicate.Closure<? super E>getFalseClosure()Gets the closure called when false.Predicate<? super E>getPredicate()Gets the predicate.Closure<? super E>getTrueClosure()Gets the closure called when true.static <E> Closure<E>ifClosure(Predicate<? super E> predicate, Closure<? super E> trueClosure)Factory method that performs validation.static <E> Closure<E>ifClosure(Predicate<? super E> predicate, Closure<? super E> trueClosure, Closure<? super E> falseClosure)Factory method that performs validation. 
 - 
 
- 
- 
Constructor Detail
- 
IfClosure
public IfClosure(Predicate<? super E> predicate, Closure<? super E> trueClosure)
Constructor that performs no validation. UseifClosureif you want that.This constructor creates a closure that performs no action when the predicate is false.
- Parameters:
 predicate- predicate to switch on, not nulltrueClosure- closure used if true, not null- Since:
 - 3.2
 
 
- 
IfClosure
public IfClosure(Predicate<? super E> predicate, Closure<? super E> trueClosure, Closure<? super E> falseClosure)
Constructor that performs no validation. UseifClosureif you want that.- Parameters:
 predicate- predicate to switch on, not nulltrueClosure- closure used if true, not nullfalseClosure- closure used if false, not null
 
 - 
 
- 
Method Detail
- 
ifClosure
public static <E> Closure<E> ifClosure(Predicate<? super E> predicate, Closure<? super E> trueClosure)
Factory method that performs validation.This factory creates a closure that performs no action when the predicate is false.
- Type Parameters:
 E- the type that the closure acts on- Parameters:
 predicate- predicate to switch ontrueClosure- closure used if true- Returns:
 - the 
ifclosure - Throws:
 java.lang.NullPointerException- if either argument is null- Since:
 - 3.2
 
 
- 
ifClosure
public static <E> Closure<E> ifClosure(Predicate<? super E> predicate, Closure<? super E> trueClosure, Closure<? super E> falseClosure)
Factory method that performs validation.- Type Parameters:
 E- the type that the closure acts on- Parameters:
 predicate- predicate to switch ontrueClosure- closure used if truefalseClosure- closure used if false- Returns:
 - the 
ifclosure - Throws:
 java.lang.NullPointerException- if any argument is null
 
- 
execute
public void execute(E input)
Executes the true or false closure according to the result of the predicate. 
- 
getPredicate
public Predicate<? super E> getPredicate()
Gets the predicate.- Returns:
 - the predicate
 - Since:
 - 3.1
 
 
- 
getTrueClosure
public Closure<? super E> getTrueClosure()
Gets the closure called when true.- Returns:
 - the closure
 - Since:
 - 3.1
 
 
 - 
 
 -