The symfony sponsored project \Doctrine\ORM\Mapping\Driver\SimplifiedYamlDriver is really useful in my project to keep Entity file names clean and simple. However, JMSSerialize assumes that the naming convention for each Entity is the fully qualified namespace. This is not true when using \Doctrine\ORM\Mapping\Driver\SimplifiedYamlDriver in your Doctrine2 Configuration.
(http://docs.doctrine-project.org/en/latest/reference/yaml-mapping.html)
<?php
$namespaces = array(
'/path/to/files1' => 'MyProject\Entities',
'/path/to/files2' => 'OtherProject\Entities'
);
$driver = new \Doctrine\ORM\Mapping\Driver\SimplifiedYamlDriver($namespaces);
According to the docs: Filenames are shortened, “MyProject\Entities\User” will become User.orm.yml
But JMSSerialzer is looking for the YAML files at $myDir . '/MyProject.Entities.User.yml'
(see: http://jmsyst.com/libs/serializer/master/configuration#configuring-metadata-locations)
Question: Is there a way to override the metadata filename JMSSerialize looks for? I'm already using addMetadataDir() to specify its location
Note: this is not a Symfony2 project
Are you using the second parameter of
addMetadataDir
?From
JMS\Serializer\SerializerBuilder.php
:It appears that if you specify the second parameter, you can achieve what you're looking for.