Merge branch 'DDC-2199'
This commit is contained in:
commit
b6fd203355
@ -230,11 +230,20 @@ class XmlDriver extends FileDriver
|
|||||||
if (isset($xmlRoot->field)) {
|
if (isset($xmlRoot->field)) {
|
||||||
foreach ($xmlRoot->field as $fieldMapping) {
|
foreach ($xmlRoot->field as $fieldMapping) {
|
||||||
$mapping = $this->columnToArray($fieldMapping);
|
$mapping = $this->columnToArray($fieldMapping);
|
||||||
|
|
||||||
|
if (isset($mapping['version'])) {
|
||||||
|
$metadata->setVersionMapping($mapping);
|
||||||
|
}
|
||||||
|
|
||||||
$metadata->mapField($mapping);
|
$metadata->mapField($mapping);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($mappings as $mapping) {
|
foreach ($mappings as $mapping) {
|
||||||
|
if (isset($mapping['version'])) {
|
||||||
|
$metadata->setVersionMapping($mapping);
|
||||||
|
}
|
||||||
|
|
||||||
$metadata->mapField($mapping);
|
$metadata->mapField($mapping);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -297,6 +297,10 @@ class YamlDriver extends FileDriver
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (isset($mapping['version'])) {
|
||||||
|
$metadata->setVersionMapping($mapping);
|
||||||
|
}
|
||||||
|
|
||||||
$metadata->mapField($mapping);
|
$metadata->mapField($mapping);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -139,14 +139,25 @@ abstract class AbstractMappingDriverTest extends \Doctrine\Tests\OrmTestCase
|
|||||||
*/
|
*/
|
||||||
public function testFieldMappings($class)
|
public function testFieldMappings($class)
|
||||||
{
|
{
|
||||||
$this->assertEquals(3, count($class->fieldMappings));
|
$this->assertEquals(4, count($class->fieldMappings));
|
||||||
$this->assertTrue(isset($class->fieldMappings['id']));
|
$this->assertTrue(isset($class->fieldMappings['id']));
|
||||||
$this->assertTrue(isset($class->fieldMappings['name']));
|
$this->assertTrue(isset($class->fieldMappings['name']));
|
||||||
$this->assertTrue(isset($class->fieldMappings['email']));
|
$this->assertTrue(isset($class->fieldMappings['email']));
|
||||||
|
$this->assertTrue(isset($class->fieldMappings['version']));
|
||||||
|
|
||||||
return $class;
|
return $class;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @depends testFieldMappings
|
||||||
|
* @param ClassMetadata $class
|
||||||
|
*/
|
||||||
|
public function testVersionedField($class)
|
||||||
|
{
|
||||||
|
$this->assertTrue($class->isVersioned);
|
||||||
|
$this->assertEquals("version", $class->versionField);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @depends testEntityTableNameAndInheritance
|
* @depends testEntityTableNameAndInheritance
|
||||||
* @param ClassMetadata $class
|
* @param ClassMetadata $class
|
||||||
@ -793,6 +804,12 @@ class User
|
|||||||
*/
|
*/
|
||||||
public $groups;
|
public $groups;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Column(type="integer")
|
||||||
|
* @Version
|
||||||
|
*/
|
||||||
|
public $version;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @PrePersist
|
* @PrePersist
|
||||||
@ -847,6 +864,9 @@ class User
|
|||||||
'columnName' => 'user_email',
|
'columnName' => 'user_email',
|
||||||
'columnDefinition' => 'CHAR(32) NOT NULL',
|
'columnDefinition' => 'CHAR(32) NOT NULL',
|
||||||
));
|
));
|
||||||
|
$mapping = array('fieldName' => 'version', 'type' => 'integer');
|
||||||
|
$metadata->setVersionMapping($mapping);
|
||||||
|
$metadata->mapField($mapping);
|
||||||
$metadata->setIdGeneratorType(ClassMetadataInfo::GENERATOR_TYPE_AUTO);
|
$metadata->setIdGeneratorType(ClassMetadataInfo::GENERATOR_TYPE_AUTO);
|
||||||
$metadata->mapOneToOne(array(
|
$metadata->mapOneToOne(array(
|
||||||
'fieldName' => 'address',
|
'fieldName' => 'address',
|
||||||
|
@ -35,6 +35,9 @@ $metadata->mapField(array(
|
|||||||
'columnName' => 'user_email',
|
'columnName' => 'user_email',
|
||||||
'columnDefinition' => 'CHAR(32) NOT NULL',
|
'columnDefinition' => 'CHAR(32) NOT NULL',
|
||||||
));
|
));
|
||||||
|
$mapping = array('fieldName' => 'version', 'type' => 'integer');
|
||||||
|
$metadata->setVersionMapping($mapping);
|
||||||
|
$metadata->mapField($mapping);
|
||||||
$metadata->setIdGeneratorType(ClassMetadataInfo::GENERATOR_TYPE_AUTO);
|
$metadata->setIdGeneratorType(ClassMetadataInfo::GENERATOR_TYPE_AUTO);
|
||||||
$metadata->mapOneToOne(array(
|
$metadata->mapOneToOne(array(
|
||||||
'fieldName' => 'address',
|
'fieldName' => 'address',
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
</field>
|
</field>
|
||||||
<field name="email" column="user_email" type="string" column-definition="CHAR(32) NOT NULL" />
|
<field name="email" column="user_email" type="string" column-definition="CHAR(32) NOT NULL" />
|
||||||
|
|
||||||
|
<field name="version" type="integer" version="true" />
|
||||||
|
|
||||||
<one-to-one field="address" target-entity="Address" inversed-by="user">
|
<one-to-one field="address" target-entity="Address" inversed-by="user">
|
||||||
<cascade><cascade-remove /></cascade>
|
<cascade><cascade-remove /></cascade>
|
||||||
<join-column name="address_id" referenced-column-name="id" on-delete="CASCADE" on-update="CASCADE"/>
|
<join-column name="address_id" referenced-column-name="id" on-delete="CASCADE" on-update="CASCADE"/>
|
||||||
|
@ -30,6 +30,9 @@ Doctrine\Tests\ORM\Mapping\User:
|
|||||||
type: string
|
type: string
|
||||||
column: user_email
|
column: user_email
|
||||||
columnDefinition: CHAR(32) NOT NULL
|
columnDefinition: CHAR(32) NOT NULL
|
||||||
|
version:
|
||||||
|
type: integer
|
||||||
|
version: true
|
||||||
oneToOne:
|
oneToOne:
|
||||||
address:
|
address:
|
||||||
targetEntity: Address
|
targetEntity: Address
|
||||||
|
Loading…
x
Reference in New Issue
Block a user