/** * Constructor. * * @param ObjectPersisterInterface $objectPersister * @param array $events * @param IndexableInterface $indexable * @param array $config * @param null $logger */ public function __construct(ObjectPersisterInterface $objectPersister, array $events, IndexableInterface $indexable, array $config = array(), $logger = null) { $this->config = array_merge(array('identifier' => 'id'), $config); $this->events = $events; $this->indexable = $indexable; $this->objectPersister = $objectPersister; $this->propertyAccessor = PropertyAccess::createPropertyAccessor(); if ($logger) { $this->objectPersister->setLogger($logger); } }