package com.flextrade.jfixture.specifications;
import java.util.Arrays;
public class AnySatisfiedCompositePropertySpecification implements Specification {
private final Iterable<Specification> specifications;
public AnySatisfiedCompositePropertySpecification(Specification... specifications) {
this(Arrays.asList(specifications));
}
public AnySatisfiedCompositePropertySpecification(Iterable<Specification> specifications) {
if(specifications == null) throw new IllegalArgumentException("specifications");
this.specifications = specifications;
}
@Override
public boolean isSatisfiedBy(Object request) {
for(Specification specification : this.specifications) {
if(specification.isSatisfiedBy(request)) return true;
}
return false;
}
}