From 685ae449325bb6196c767dedf5d1902927abfb48 Mon Sep 17 00:00:00 2001 From: "Brian S. O'Neill" Date: Wed, 30 May 2007 14:59:41 +0000 Subject: Fixed bug which allowed dereferencing properties against type Query in filter expressions. --- src/main/java/com/amazon/carbonado/filter/FilterParser.java | 4 ++-- src/main/java/com/amazon/carbonado/info/ChainedProperty.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'src/main/java/com/amazon/carbonado') diff --git a/src/main/java/com/amazon/carbonado/filter/FilterParser.java b/src/main/java/com/amazon/carbonado/filter/FilterParser.java index baf264d..a0a178d 100644 --- a/src/main/java/com/amazon/carbonado/filter/FilterParser.java +++ b/src/main/java/com/amazon/carbonado/filter/FilterParser.java @@ -220,7 +220,7 @@ class FilterParser { } List> chain = new ArrayList>(4); - Class type = prime.isJoin() ? prime.getJoinedType() : prime.getType(); + Class type = prime.getType(); while (true) { ident = parseIdentifier(); @@ -238,7 +238,7 @@ class FilterParser { type = prop.isJoin() ? prop.getJoinedType() : prop.getType(); } else { throw error("Property \"" + ident + "\" not found for type \"" + - type.getName() + "\" because type has no properties"); + type.getName() + "\" because it has no properties"); } if (nextCharIgnoreWhitespace() != '.') { mPos--; diff --git a/src/main/java/com/amazon/carbonado/info/ChainedProperty.java b/src/main/java/com/amazon/carbonado/info/ChainedProperty.java index 0299ae8..7d21a49 100644 --- a/src/main/java/com/amazon/carbonado/info/ChainedProperty.java +++ b/src/main/java/com/amazon/carbonado/info/ChainedProperty.java @@ -101,7 +101,7 @@ public class ChainedProperty implements Appender { } List> chain = new ArrayList>(4); - Class type = prime.isJoin() ? prime.getJoinedType() : prime.getType(); + Class type = prime.getType(); while (pos > 0) { dot = str.indexOf('.', pos); @@ -127,7 +127,7 @@ public class ChainedProperty implements Appender { } else { throw new IllegalArgumentException ("Property \"" + name + "\" not found for type \"" + - type.getName() + "\" because type has no properties"); + type.getName() + "\" because it has no properties"); } } -- cgit v1.2.3