/** * {@inheritdoc} */ protected function initializeFromContext(ContextInterface $context) { parent::initializeFromContext($context); if (!$this->getSourceIterator()) { /** @var Channel $channel */ $channel = $this->doctrineHelper->getEntityReference($this->channelClassName, $context->getOption('channel')); $iterator = $this->getExtendedMergeVarIterator($channel); $this->setSourceIterator($iterator); } }
/** * {@inheritdoc} */ protected function initializeFromContext(ContextInterface $context) { parent::initializeFromContext($context); if (!$this->memberClassName) { throw new InvalidConfigurationException('Member class name must be provided'); } if (!$this->getSourceIterator()) { /** @var Channel $channel */ $channel = $this->doctrineHelper->getEntityReference($this->channelClassName, $context->getOption('channel')); $iterator = new MemberExportListIterator($this->getSubscribersListIterator($channel), $this->doctrineHelper); $iterator->setMemberClassName($this->memberClassName); $this->setSourceIterator($iterator); } }
/** * {@inheritdoc} */ protected function initializeFromContext(ContextInterface $context) { parent::initializeFromContext($context); if (!$this->marketingListClassName) { throw new InvalidConfigurationException('MarketingList class name must be provided'); } if (!$this->staticSegmentClassName) { throw new InvalidConfigurationException('StaticSegment class name must be provided'); } if ($iterator = $this->getSourceIterator()) { $sourceIterator = clone $iterator; /** @var Channel $channel */ $channel = $this->doctrineHelper->getEntityReference($this->channelClassName, $context->getOption('channel')); /** @var MemberSyncIterator $sourceIterator */ $sourceIterator->setMainIterator($this->getStaticSegmentIterator($channel, $context->getOption('segments'))); $this->setSourceIterator($sourceIterator); } }