Skip to content

Commit febb7fc

Browse files
committed
GH-2462 - Naive approach.
1 parent 3bebb5b commit febb7fc

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

src/main/java/org/springframework/data/neo4j/core/mapping/DefaultNeo4jEntityConverter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -353,7 +353,7 @@ private <ET> void populateProperties(MapAccessor queryResult, Neo4jPersistentEnt
353353
// check intermediate types
354354
NodeDescription<?> parentNodeDescription = concreteNodeDescription.getParentNodeDescription();
355355
while (parentNodeDescription != null && parentNodeDescription != concreteNodeDescription) {
356-
nodeDescription.doWithAssociations(
356+
((Neo4jPersistentEntity<?>) parentNodeDescription).doWithAssociations(
357357
populateFrom(queryResult, propertyAccessor, isConstructorParameter, objectAlreadyMapped, relationshipsFromResult, nodesFromResult));
358358
parentNodeDescription = parentNodeDescription.getParentNodeDescription();
359359
}

src/main/java/org/springframework/data/neo4j/core/mapping/DefaultNeo4jPersistentEntity.java

+7-3
Original file line numberDiff line numberDiff line change
@@ -512,11 +512,15 @@ public void addChildNodeDescription(NodeDescription<?> child) {
512512
}
513513

514514
@Override
515-
public Set<NodeDescription<?>> getChildNodeDescriptionsInHierarchy() {
516-
Set<NodeDescription<?>> childNodes = new HashSet<>(childNodeDescriptions);
515+
public List<NodeDescription<?>> getChildNodeDescriptionsInHierarchy() {
516+
List<NodeDescription<?>> childNodes = new ArrayList<>(childNodeDescriptions);
517517

518518
for (NodeDescription<?> childNodeDescription : childNodeDescriptions) {
519-
childNodes.addAll(childNodeDescription.getChildNodeDescriptionsInHierarchy());
519+
for (NodeDescription<?> grantChildNodeDescription : childNodeDescription.getChildNodeDescriptionsInHierarchy()) {
520+
if (!childNodes.contains(grantChildNodeDescription)) {
521+
childNodes.add(grantChildNodeDescription);
522+
}
523+
}
520524
}
521525
return childNodes;
522526
}

0 commit comments

Comments
 (0)