cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Øyvind Harboe <oyvind.har...@zylin.com>
Subject Problems with Expression.match()
Date Fri, 05 Jun 2009 08:43:33 GMT
I'm trying to figure out if a CayenneDataObject matches an
expression and I run into various and sundry problems.

This is the final solution I ended up with, but it's pretty ugly.


		List l=getDataContext().performQuery(new SelectQuery(Treatment.class,
				expression)));
		return l.contains(this);


1. I can't use expression.match() because it will fail when the
expression contains
an array in the path. I.e. matchExp(role.members.user, user) here "members"
will return a list, and this causes an exception for .match(), whereas it works
fine in a query.

2. In the above statement I don't know how to add a andExp() to only return
"this", so I get a bigger query result than I need + unecessary post processing.
I've run into this problem previously as well, without finding an
elegant solution.

-- 
Øyvind Harboe
Embedded software and hardware consulting services
http://consulting.zylin.com

Mime
View raw message