package eu.dnetlib.iis.wf.importer.content.approver; import java.util.Arrays; import java.util.List; /** * Complex content approver holding multiple content approvers. * Evaluates to true whan all content approvers evalute to true. * @author mhorst * */ public class ComplexIdentifiableContentApprover implements IdentifiableContentApprover { private final List<IdentifiableContentApprover> approvers; public ComplexIdentifiableContentApprover(List<IdentifiableContentApprover> approvers) { this.approvers = approvers; } public ComplexIdentifiableContentApprover(IdentifiableContentApprover... approvers) { this.approvers = Arrays.asList(approvers); } @Override public boolean approve(String id, byte[] content) { for (IdentifiableContentApprover currentApprover : approvers) { if (!currentApprover.approve(id, content)) { return false; } } return true; } }