[2.0] Converted constant values from strings to integers.
This commit is contained in:
parent
9f42e2d969
commit
6e5a5068a6
@ -57,12 +57,21 @@
|
||||
</xs:complexType>
|
||||
|
||||
<xs:simpleType name="inheritance-type">
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:enumeration value="single-table"/>
|
||||
<xs:enumeration value="joined"/>
|
||||
<xs:enumeration value="table-per-class"/>
|
||||
<xs:restriction base="xs:token">
|
||||
<xs:enumeration value="SINGLE_TABLE"/>
|
||||
<xs:enumeration value="JOINED"/>
|
||||
<xs:enumeration value="TABLE_PER_CLASS"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:simpleType name="generator-strategy">
|
||||
<xs:restriction base="xs:token">
|
||||
<xs:enumeration value="TABLE"/>
|
||||
<xs:enumeration value="SEQUENCE"/>
|
||||
<xs:enumeration value="IDENTITY"/>
|
||||
<xs:enumeration value="AUTO"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
|
||||
<xs:complexType name="field">
|
||||
<xs:attribute name="name" type="xs:NMTOKEN" use="required" />
|
||||
@ -72,7 +81,7 @@
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="generator">
|
||||
<xs:attribute name="strategy" type="xs:NMTOKEN" use="required" />
|
||||
<xs:attribute name="strategy" type="orm:generator-strategy" use="required" />
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="id">
|
||||
|
@ -46,52 +46,52 @@ final class ClassMetadata
|
||||
* NONE means the class does not participate in an inheritance hierarchy
|
||||
* and therefore does not need an inheritance mapping type.
|
||||
*/
|
||||
const INHERITANCE_TYPE_NONE = 'none';
|
||||
const INHERITANCE_TYPE_NONE = 1;
|
||||
/**
|
||||
* JOINED means the class will be persisted according to the rules of
|
||||
* <tt>Class Table Inheritance</tt>.
|
||||
*/
|
||||
const INHERITANCE_TYPE_JOINED = 'joined';
|
||||
const INHERITANCE_TYPE_JOINED = 2;
|
||||
/**
|
||||
* SINGLE_TABLE means the class will be persisted according to the rules of
|
||||
* <tt>Single Table Inheritance</tt>.
|
||||
*/
|
||||
const INHERITANCE_TYPE_SINGLE_TABLE = 'singleTable';
|
||||
const INHERITANCE_TYPE_SINGLE_TABLE = 3;
|
||||
/**
|
||||
* TABLE_PER_CLASS means the class will be persisted according to the rules
|
||||
* of <tt>Concrete Table Inheritance</tt>.
|
||||
*/
|
||||
const INHERITANCE_TYPE_TABLE_PER_CLASS = 'tablePerClass';
|
||||
const INHERITANCE_TYPE_TABLE_PER_CLASS = 4;
|
||||
|
||||
/* The Id generator types. */
|
||||
/**
|
||||
* AUTO means the generator type will depend on what the used platform prefers.
|
||||
* Offers full portability.
|
||||
*/
|
||||
const GENERATOR_TYPE_AUTO = 'auto';
|
||||
const GENERATOR_TYPE_AUTO = 1;
|
||||
/**
|
||||
* SEQUENCE means a separate sequence object will be used. Platforms that do
|
||||
* not have native sequence support may emulate it. Full portability is currently
|
||||
* not guaranteed.
|
||||
*/
|
||||
const GENERATOR_TYPE_SEQUENCE = 'sequence';
|
||||
const GENERATOR_TYPE_SEQUENCE = 2;
|
||||
/**
|
||||
* TABLE means a separate table is used for id generation.
|
||||
* Offers full portability.
|
||||
*/
|
||||
const GENERATOR_TYPE_TABLE = 'table';
|
||||
const GENERATOR_TYPE_TABLE = 3;
|
||||
/**
|
||||
* IDENTITY means an identity column is used for id generation. The database
|
||||
* will fill in the id column on insertion. Platforms that do not support
|
||||
* native identity columns may emulate them. Full portability is currently
|
||||
* not guaranteed.
|
||||
*/
|
||||
const GENERATOR_TYPE_IDENTITY = 'identity';
|
||||
const GENERATOR_TYPE_IDENTITY = 4;
|
||||
/**
|
||||
* NONE means the class does not have a generated id. That means the class
|
||||
* must have a natural id.
|
||||
*/
|
||||
const GENERATOR_TYPE_NONE = 'none';
|
||||
const GENERATOR_TYPE_NONE = 5;
|
||||
/**
|
||||
* DEFERRED_IMPLICIT means that changes of entities are calculated at commit-time
|
||||
* by doing a property-by-property comparison with the original data. This will
|
||||
@ -1749,6 +1749,7 @@ final class ClassMetadata
|
||||
* Creates a string representation of this instance.
|
||||
*
|
||||
* @return string The string representation of this instance.
|
||||
* @todo Construct meaningful string representation.
|
||||
*/
|
||||
public function __toString()
|
||||
{
|
||||
|
@ -63,7 +63,7 @@ class AnnotationDriver implements Driver
|
||||
|
||||
// Evaluate InheritanceType annotation
|
||||
if ($inheritanceTypeAnnot = $annotClass->getAnnotation('InheritanceType')) {
|
||||
$metadata->setInheritanceType($inheritanceTypeAnnot->value);
|
||||
$metadata->setInheritanceType(constant('\Doctrine\ORM\Mapping\ClassMetadata::INHERITANCE_TYPE_' . $inheritanceTypeAnnot->value));
|
||||
}
|
||||
|
||||
// Evaluate DiscriminatorColumn annotation
|
||||
@ -130,7 +130,14 @@ class AnnotationDriver implements Driver
|
||||
$mapping['id'] = true;
|
||||
}
|
||||
if ($generatedValueAnnot = $property->getAnnotation('GeneratedValue')) {
|
||||
$metadata->setIdGeneratorType($generatedValueAnnot->strategy);
|
||||
if ($generatedValueAnnot->strategy == 'auto') {
|
||||
try {
|
||||
throw new \Exception();
|
||||
} catch (\Exception $e) {
|
||||
var_dump($e->getTraceAsString());
|
||||
}
|
||||
}
|
||||
$metadata->setIdGeneratorType(constant('Doctrine\ORM\Mapping\ClassMetadata::GENERATOR_TYPE_' . $generatedValueAnnot->strategy));
|
||||
}
|
||||
$metadata->mapField($mapping);
|
||||
|
||||
|
@ -86,7 +86,8 @@ class XmlDriver extends AbstractFileDriver
|
||||
$metadata->mapField($mapping);
|
||||
|
||||
if (isset($idElement->generator)) {
|
||||
$metadata->setIdGeneratorType((string)$idElement->generator['strategy']);
|
||||
$metadata->setIdGeneratorType(constant('Doctrine\ORM\Mapping\ClassMetadata::GENERATOR_TYPE_'
|
||||
. (string)$idElement->generator['strategy']));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -87,7 +87,8 @@ class YamlDriver extends AbstractFileDriver
|
||||
$metadata->mapField($mapping);
|
||||
|
||||
if (isset($idElement['generator'])) {
|
||||
$metadata->setIdGeneratorType($idElement['generator']['strategy']);
|
||||
$metadata->setIdGeneratorType(constant('Doctrine\ORM\Mapping\ClassMetadata::GENERATOR_TYPE_'
|
||||
. $idElement['generator']['strategy']));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -14,7 +14,7 @@ class CmsAddress
|
||||
/**
|
||||
* @Column(type="integer")
|
||||
* @Id
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
public $id;
|
||||
|
||||
|
@ -11,7 +11,7 @@ class CmsArticle
|
||||
/**
|
||||
* @Id
|
||||
* @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
public $id;
|
||||
/**
|
||||
|
@ -11,7 +11,7 @@ class CmsComment
|
||||
/**
|
||||
* @Column(type="integer")
|
||||
* @Id
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
public $id;
|
||||
/**
|
||||
|
@ -14,7 +14,7 @@ class CmsEmployee
|
||||
/**
|
||||
* @Id
|
||||
* @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
private $id;
|
||||
|
||||
|
@ -18,7 +18,7 @@ class CmsGroup
|
||||
/**
|
||||
* @Id
|
||||
* @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
public $id;
|
||||
/**
|
||||
|
@ -10,7 +10,7 @@ class CmsUser
|
||||
{
|
||||
/**
|
||||
* @Id @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
public $id;
|
||||
/**
|
||||
|
@ -9,7 +9,7 @@ namespace Doctrine\Tests\Models\Company;
|
||||
* @Entity
|
||||
* @Table(name="company_persons")
|
||||
* @DiscriminatorValue("person")
|
||||
* @InheritanceType("joined")
|
||||
* @InheritanceType("JOINED")
|
||||
* @DiscriminatorColumn(name="discr", type="string")
|
||||
* @SubClasses({"Doctrine\Tests\Models\Company\CompanyEmployee",
|
||||
"Doctrine\Tests\Models\Company\CompanyManager"})
|
||||
@ -19,7 +19,7 @@ class CompanyPerson
|
||||
/**
|
||||
* @Id
|
||||
* @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
private $id;
|
||||
/**
|
||||
|
@ -11,7 +11,7 @@ class ForumAvatar
|
||||
/**
|
||||
* @Id
|
||||
* @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
public $id;
|
||||
}
|
||||
|
@ -11,7 +11,7 @@ class ForumEntry
|
||||
/**
|
||||
* @Id
|
||||
* @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
public $id;
|
||||
/**
|
||||
|
@ -11,7 +11,7 @@ class ForumUser
|
||||
/**
|
||||
* @Column(type="integer")
|
||||
* @Id
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
public $id;
|
||||
/**
|
||||
|
@ -97,7 +97,7 @@ class SingleTableInheritanceTest extends \Doctrine\Tests\OrmFunctionalTestCase
|
||||
|
||||
/**
|
||||
* @Entity
|
||||
* @InheritanceType("singleTable")
|
||||
* @InheritanceType("SINGLE_TABLE")
|
||||
* @DiscriminatorColumn(name="discr", type="string")
|
||||
* @SubClasses({"Doctrine\Tests\ORM\Functional\ChildEntity"})
|
||||
* @DiscriminatorValue("parent")
|
||||
@ -106,7 +106,7 @@ class ParentEntity {
|
||||
/**
|
||||
* @Id
|
||||
* @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
private $id;
|
||||
|
||||
@ -168,7 +168,7 @@ class RelatedEntity {
|
||||
/**
|
||||
* @Id
|
||||
* @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
private $id;
|
||||
/**
|
||||
|
@ -27,7 +27,7 @@ class ClassMetadataFactoryTest extends \Doctrine\Tests\OrmTestCase
|
||||
// and a mapped association
|
||||
$cm1->mapOneToOne(array('fieldName' => 'other', 'targetEntity' => 'Other', 'mappedBy' => 'this'));
|
||||
// and an id generator type
|
||||
$cm1->setIdGeneratorType('auto');
|
||||
$cm1->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_AUTO);
|
||||
|
||||
// SUT
|
||||
$cmf = new ClassMetadataFactoryTestSubject($mockDriver, $mockPlatform);
|
||||
@ -35,17 +35,17 @@ class ClassMetadataFactoryTest extends \Doctrine\Tests\OrmTestCase
|
||||
|
||||
// Prechecks
|
||||
$this->assertEquals(array(), $cm1->parentClasses);
|
||||
$this->assertEquals('none', $cm1->inheritanceType);
|
||||
$this->assertEquals(ClassMetadata::INHERITANCE_TYPE_NONE, $cm1->inheritanceType);
|
||||
$this->assertTrue($cm1->hasField('name'));
|
||||
$this->assertEquals(1, count($cm1->associationMappings));
|
||||
$this->assertEquals('auto', $cm1->generatorType);
|
||||
$this->assertEquals(ClassMetadata::GENERATOR_TYPE_AUTO, $cm1->generatorType);
|
||||
|
||||
// Go
|
||||
$cm1 = $cmf->getMetadataFor('Doctrine\Tests\ORM\Mapping\TestEntity1');
|
||||
|
||||
$this->assertEquals(array(), $cm1->parentClasses);
|
||||
$this->assertTrue($cm1->hasField('name'));
|
||||
$this->assertEquals('sequence', $cm1->generatorType);
|
||||
$this->assertEquals(ClassMetadata::GENERATOR_TYPE_SEQUENCE, $cm1->generatorType);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
<entity name="XmlMappingTest\User" table="cms_users">
|
||||
|
||||
<id name="id" type="integer" column="id">
|
||||
<generator strategy="auto"/>
|
||||
<generator strategy="AUTO"/>
|
||||
</id>
|
||||
|
||||
<field name="name" column="name" type="string" length="50"/>
|
||||
@ -34,7 +34,6 @@
|
||||
</join-table>
|
||||
</many-to-many>
|
||||
|
||||
|
||||
</entity>
|
||||
|
||||
</doctrine-mapping>
|
@ -5,7 +5,7 @@ YamlMappingTest\User:
|
||||
id:
|
||||
type: integer
|
||||
generator:
|
||||
strategy: auto
|
||||
strategy: AUTO
|
||||
fields:
|
||||
name:
|
||||
type: string
|
||||
|
@ -193,7 +193,7 @@ class NotifyChangedEntity implements \Doctrine\Common\NotifyPropertyChanged
|
||||
/**
|
||||
* @Id
|
||||
* @Column(type="integer")
|
||||
* @GeneratedValue(strategy="auto")
|
||||
* @GeneratedValue(strategy="AUTO")
|
||||
*/
|
||||
private $id;
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user