/** * @param array $configuration * @param RuleInterface $rule */ private function handleConditions(array $configuration, RuleInterface $rule) { foreach ($configuration['conditions'] as $position => $conditionConfiguration) { $condition = new Condition(); $condition->setType($conditionConfiguration['type']); $condition->setValue($conditionConfiguration['value']); $condition->setStrategy(isset($conditionConfiguration['strategy']) ? $conditionConfiguration['strategy'] : ConditionInterface::STRATEGY_NEXT); $condition->setPosition($position); $condition->setDynamicCapabilities(isset($conditionConfiguration['capabilities']) ? $conditionConfiguration['capabilities'] : array()); $rule->addCondition($condition); } }