private static <T> Consumer<T> concat(Consumer<T> a, Consumer<T> b)
	{
		if (a != null && b != null) // both non-null
			return a.andThen(b);
		else if (a != null)
			return a;
		else
			return b;
	}
private static < T > Consumer < T > concat ( Consumer < T > a , Consumer < T > b ) { if ( a != null && b != null ) return a . andThen ( b ) ; else if ( a != null ) return a ; else return b ; }
Combine two consumers. Consumers may be null, in which case this selects the non-null one. If both are null then will
return <code>null</code>

@param a
the first consumer (optional)
@param b
the second consumer (optional)
@param <T>

@return