DDC-1092: CustomTreeWalkers For Entities #1368

Closed
opened 2026-01-22 13:11:57 +01:00 by admin · 3 comments
Owner

Originally created by @doctrinebot on GitHub (Mar 31, 2011).

Originally assigned to: @beberlei on GitHub.

Jira issue originally created by user mstrzele:

I propose that Doctrine\ORM\Query Parser in method parse append to _customTreeWalker walkers for the Components used in query.

for example it could be:

if (($behaviorsWalkers = $this->*query->getHintForComponents($this->*queryComponents)) !== false) {
        $this->*customTreeWalkers = $this->*mergeCustomTreeWalkers($behaviorsWalkers);
}

Information about walker would have been in Walker Annotation, for example:

@Walkers({
    @Walker(class="VersionableTreeWalker"),
    @Walker(class="SecondTreeWalker")
})

Method _mergeCustomTreeWalkers would be to don't duplicate walkers.

And in this way it be possible implement behaviors like preDqlSelect and Remove and Delete.

I know that the same is possible if i append hint to query but it is insane if queries are compleceted and diffrent entities must have diffrent walkers.
In large system it is impossible to managed that in this way.

Originally created by @doctrinebot on GitHub (Mar 31, 2011). Originally assigned to: @beberlei on GitHub. Jira issue originally created by user mstrzele: I propose that Doctrine\ORM\Query Parser in method parse append to _customTreeWalker walkers for the Components used in query. for example it could be: ``` if (($behaviorsWalkers = $this->*query->getHintForComponents($this->*queryComponents)) !== false) { $this->*customTreeWalkers = $this->*mergeCustomTreeWalkers($behaviorsWalkers); } ``` Information about walker would have been in Walker Annotation, for example: ``` @Walkers({ @Walker(class="VersionableTreeWalker"), @Walker(class="SecondTreeWalker") }) ``` Method _mergeCustomTreeWalkers would be to don't duplicate walkers. And in this way it be possible implement behaviors like preDqlSelect and Remove and Delete. I know that the same is possible if i append hint to query but it is insane if queries are compleceted and diffrent entities must have diffrent walkers. In large system it is impossible to managed that in this way.
admin added the New Feature label 2026-01-22 13:11:57 +01:00
admin closed this issue 2026-01-22 13:11:57 +01:00
Author
Owner
@doctrinebot commented on GitHub (Mar 31, 2011): - duplicates [DDC-551: Consider adding ability to specify additional join conditions on a @JoinTable / @JoinColumn](http://www.doctrine-project.org/jira/browse/DDC-551)
Author
Owner

@doctrinebot commented on GitHub (Apr 2, 2011):

Comment created by @beberlei:

Sort of Duplicate of DDC-551

@doctrinebot commented on GitHub (Apr 2, 2011): Comment created by @beberlei: Sort of Duplicate of [DDC-551](http://www.doctrine-project.org/jira/browse/DDC-551)
Author
Owner

@doctrinebot commented on GitHub (Apr 2, 2011):

Issue was closed with resolution "Duplicate"

@doctrinebot commented on GitHub (Apr 2, 2011): Issue was closed with resolution "Duplicate"
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: doctrine/archived-orm#1368