Sonata\InvoiceBundle\DependencyInjection\SonataInvoiceExtension::registerDoctrineMapping PHP Method

registerDoctrineMapping() public method

public registerDoctrineMapping ( array $config )
$config array
    public function registerDoctrineMapping(array $config)
    {
        if (!class_exists($config['class']['invoice'])) {
            return;
        }
        $collector = DoctrineCollector::getInstance();
        /*
         * INVOICE
         */
        $collector->addAssociation($config['class']['invoice'], 'mapManyToOne', array('fieldName' => 'customer', 'targetEntity' => $config['class']['customer'], 'cascade' => array('persist', 'refresh', 'merge', 'detach'), 'mappedBy' => null, 'joinColumns' => array(array('name' => 'customer_id', 'referencedColumnName' => 'id', 'onDelete' => 'SET NULL')), 'orphanRemoval' => false));
        $collector->addAssociation($config['class']['invoice_element'], 'mapManyToOne', array('fieldName' => 'invoice', 'targetEntity' => $config['class']['invoice'], 'cascade' => array('persist', 'refresh', 'merge', 'detach'), 'mappedBy' => null, 'inversedBy' => 'invoiceElements', 'joinColumns' => array(array('name' => 'invoice_id', 'referencedColumnName' => 'id', 'onDelete' => 'CASCADE')), 'orphanRemoval' => false));
        $collector->addAssociation($config['class']['invoice'], 'mapOneToMany', array('fieldName' => 'invoiceElements', 'targetEntity' => $config['class']['invoice_element'], 'cascade' => array('persist'), 'mappedBy' => 'invoice', 'orphanRemoval' => true));
        $collector->addAssociation($config['class']['invoice_element'], 'mapManyToOne', array('fieldName' => 'orderElement', 'targetEntity' => $config['class']['order_element'], 'cascade' => array(), 'joinColumns' => array(array('name' => 'order_element_id', 'referencedColumnName' => 'id', 'onDelete' => 'CASCADE'))));
    }