<?php
namespace MailPoetVendor\Doctrine\Persistence\Mapping\Driver;
if (!defined('ABSPATH')) exit;
use MailPoetVendor\Doctrine\Common\Annotations\Reader;
use ReflectionClass;
use function get_class;
abstract class AnnotationDriver implements MappingDriver
{
use ColocatedMappingDriver;
protected $reader;
protected $entityAnnotationClasses = [];
public function __construct($reader, $paths = null)
{
$this->reader = $reader;
$this->addPaths((array) $paths);
}
public function getReader()
{
return $this->reader;
}
public function isTransient($className)
{
$classAnnotations = $this->reader->getClassAnnotations(new ReflectionClass($className));
foreach ($classAnnotations as $annot) {
if (isset($this->entityAnnotationClasses[get_class($annot)])) {
return \false;
}
}
return \true;
}
}