Уменьшить взаимосвязь в сущностях

Я ищу подходящий способ уменьшить взаимосвязь в пакете обмена сообщениями, который я пишу для платформы Symfony2, чтобы я мог легко использовать его между приложениями.

Каждый экземпляр объекта Message должен иметь отправителя и получатель, instanceof Symfony \ Component \ Security \ Core \ User \ UserInterface , который мне может потребоваться в установщиках свойств. Однако при настройке отношений ORM мне кажется, что я должен специально установить targetEntity ( Foo \ BarBundle \ Entity \ User , например), что означает, что все дальнейшие использования объекта Message в разных приложения либо потребуют изменения кода, либо заставят их использовать сущность User, которая, как мне кажется, не входит в область действия пакета обмена сообщениями.

Какие-либо предложения / рекомендации по уменьшению связи в этом случае?

РЕДАКТИРОВАТЬ: Я попытался установить глобальный параметр с расширением и использовать его в аннотациях, например, @ORM \ ManyToOne (targetEntity = "% my.entity%") , но кажется, что синтаксический анализатор аннотаций не преобразует параметры, потому что строка интерпретировалась как литерал, что, конечно, не удалось.

7
задан Problematic 25 May 2011 в 16:09
поделиться