UserPolicyList.java
package es.um.atica.faker.users.domain.policy;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import es.um.atica.faker.users.domain.policy.age.SeniorPolicy;
import es.um.atica.faker.users.domain.policy.age.YoungPolicy;
public class UserPolicyList {
private static List<UserPolicy> policies;
static {
policies = Arrays.asList(
new SeniorPolicy(),
new YoungPolicy()
);
}
public static List<UserPolicy> applicablePolicies(UserPolicyData data) {
return policies.stream().filter(p->p.isApplicable(data)).collect(Collectors.toList());
}
}