Skip to content

Commit

Permalink
yaml driver
Browse files Browse the repository at this point in the history
  • Loading branch information
FabioBatSilva authored and fabio.silva committed Jan 29, 2013
1 parent 917aa70 commit f0b0437
Show file tree
Hide file tree
Showing 8 changed files with 81 additions and 4 deletions.
11 changes: 11 additions & 0 deletions lib/Doctrine/ORM/Mapping/Driver/YamlDriver.php
Original file line number Diff line number Diff line change
Expand Up @@ -572,6 +572,17 @@ public function loadMetadataForClass($className, ClassMetadata $metadata)
}
}
}

// Evaluate entityListeners
if (isset($element['entityListeners'])) {
foreach ($element['entityListeners'] as $className => $entityListener) {
foreach ($entityListener as $eventName => $callbackElement){
foreach ($callbackElement as $methodName){
$metadata->addEntityListener($eventName, $className, $methodName);
}
}
}
}
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -759,7 +759,8 @@ public function testAttributeOverridesMapping()
public function testEntityListeners()
{
if ( ! ($this instanceof AnnotationDriverTest)
&& ! ($this instanceof XmlMappingDriverTest)) {
&& ! ($this instanceof XmlMappingDriverTest)
&& ! ($this instanceof YamlMappingDriverTest)) {
$this->markTestIncomplete();
}

Expand Down Expand Up @@ -818,7 +819,8 @@ public function testEntityListeners()
public function testCallEntityListeners()
{
if ( ! ($this instanceof AnnotationDriverTest)
&& ! ($this instanceof XmlMappingDriverTest)) {
&& ! ($this instanceof XmlMappingDriverTest)
&& ! ($this instanceof YamlMappingDriverTest)) {
$this->markTestIncomplete();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<post-persist method="postPersistHandler"/>
<pre-persist method="prePersistHandler"/>

<post-update method="postPersistHandler"/>
<post-update method="postUpdateHandler"/>
<pre-update method="preUpdateHandler"/>

<post-remove method="postRemoveHandler"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<post-persist method="postPersistHandler"/>
<pre-persist method="prePersistHandler"/>

<post-update method="postPersistHandler"/>
<post-update method="postUpdateHandler"/>
<pre-update method="preUpdateHandler"/>

<post-remove method="postRemoveHandler"/>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
Doctrine\Tests\Models\Company\CompanyContract:
type: entity
table: company_contracts
inheritanceType: SINGLE_TABLE
discriminatorMap:
fix: CompanyFixContract
flexible: CompanyFlexContract
flexultra: CompanyFlexUltraContract
entityListeners:
ContractSubscriber:
preFlush: [preFlushHandler]
postLoad: [postLoadHandler]

postPersist: [postPersistHandler]
prePersist: [prePersistHandler]

postUpdate: [postUpdateHandler]
preUpdate: [preUpdateHandler]

postRemove: [postRemoveHandler]
preRemove: [preRemoveHandler]

id:
id:
type: integer
generator:
strategy: AUTO
fields:
completed:
type: boolean
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Doctrine\Tests\Models\Company\CompanyFixContract:
type: entity
fields:
fixPrice:
type: integer
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Doctrine\Tests\Models\Company\CompanyFlexContract:
type: entity
fields:
hoursWorked:
type: integer
pricePerHour:
type: integer
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
Doctrine\Tests\Models\Company\CompanyFlexUltraContract:
type: entity
entityListeners:
ContractSubscriber:
preFlush: [preFlushHandler]
postLoad: [postLoadHandler]

postPersist: [postPersistHandler]
prePersist: [prePersistHandler]

postUpdate: [postUpdateHandler]
preUpdate: [preUpdateHandler]

postRemove: [postRemoveHandler]
preRemove: [preRemoveHandler]

FlexUltraContractSubscriber:
prePersist: [prePersistHandler1, prePersistHandler2]

fields:
maxPrice:
type: integer

0 comments on commit f0b0437

Please sign in to comment.