From 60d63b13f1c829fa1c3f5643701983119d4f1d82 Mon Sep 17 00:00:00 2001 From: Par Winzell Date: Mon, 20 Aug 2007 18:54:40 +0000 Subject: [PATCH] Let's explain that a bit more hands-on --- src/java/com/samskivert/jdbc/depot/BuildVisitor.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/java/com/samskivert/jdbc/depot/BuildVisitor.java b/src/java/com/samskivert/jdbc/depot/BuildVisitor.java index ed99a72..5a0d651 100644 --- a/src/java/com/samskivert/jdbc/depot/BuildVisitor.java +++ b/src/java/com/samskivert/jdbc/depot/BuildVisitor.java @@ -511,8 +511,10 @@ public abstract class BuildVisitor implements ExpressionVisitor // first, see if there's a field override FieldOverride override = fieldOverrides.get(field); if (override != null) { - // overrides point to a raw column even when that column is overridden - // for the purposes of the query itself + // If a FieldOverride's target is in turn another FieldOverride, the second + // one is ignored. As an example, when creating ItemRecords from CloneRecords, + // we make Item.itemId = Clone.itemId. We also make Item.parentId = Item.itemId + // and would be dismayed to find Item.parentID = Item.itemId = Clone.itemId. _ignoreOverrides = true; override.accept(this); _ignoreOverrides = false;