package com.plectix.simulator.simulationclasses.perturbations; import java.util.Collection; import com.plectix.simulator.parser.abstractmodel.perturbations.conditions.ConditionType; import com.plectix.simulator.util.InequalitySign; public class ComplexCondition implements ConditionInterface { private final Collection<ConditionInterface> conditions; public ComplexCondition(Collection<ConditionInterface> conditions) { this.conditions = conditions; } @Override public boolean check(double currentTime) { for (ConditionInterface condition : conditions) { if (!condition.check(currentTime)) { return false; } } return true; } @Override public ConditionType getType() { return ConditionType.COMPLEX; } @Override public InequalitySign inequalitySign() { throw new UnsupportedOperationException("This wasn't expected"); } }