2008-09-07 13:48:40 +00:00
|
|
|
<?php
|
|
|
|
|
2009-01-22 19:38:10 +00:00
|
|
|
namespace Doctrine\ORM\Id;
|
|
|
|
|
2009-03-30 19:43:05 +00:00
|
|
|
use Doctrine\ORM\EntityManager;
|
|
|
|
|
2009-01-22 19:38:10 +00:00
|
|
|
class SequenceIdentityGenerator extends IdentityGenerator
|
2008-09-07 13:48:40 +00:00
|
|
|
{
|
|
|
|
private $_sequenceName;
|
|
|
|
|
|
|
|
public function __construct($sequenceName)
|
|
|
|
{
|
|
|
|
$this->_sequenceName = $sequenceName;
|
|
|
|
}
|
2009-03-30 19:43:05 +00:00
|
|
|
|
|
|
|
public function generate(EntityManager $em, $entity)
|
|
|
|
{
|
|
|
|
return $em->getConnection()->lastInsertId($this->_sequenceName);
|
|
|
|
}
|
2008-09-07 13:48:40 +00:00
|
|
|
|
|
|
|
/**
|
2009-03-30 19:43:05 +00:00
|
|
|
* @return boolean
|
2008-09-07 13:48:40 +00:00
|
|
|
* @override
|
|
|
|
*/
|
2009-03-30 19:43:05 +00:00
|
|
|
public function isPostInsertGenerator()
|
2008-09-07 13:48:40 +00:00
|
|
|
{
|
2009-03-30 19:43:05 +00:00
|
|
|
return true;
|
2008-09-07 13:48:40 +00:00
|
|
|
}
|
2009-02-20 05:46:20 +00:00
|
|
|
}
|