cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Gamache" <cgama...@gmail.com>
Subject Re: ExtendedType and IN operator
Date Fri, 30 Nov 2007 03:55:20 GMT
Was this enough code to make a determination?

On Nov 27, 2007 4:56 PM, Chris Gamache <cgamache@gmail.com> wrote:
> Exact Cayenne Version is 2.0.3
>
> Here's the query builder...
>
>        public static List selectMulti(final DataContext context,final
> ArrayList<UUID> userUuids, final Date fromDate, final Date toDate,
> final int status) {
>
>                ArrayList<Expression> expList = new ArrayList<Expression>();
>
>                //this is where the trouble is...
>                if (userUuids != null && userUuids.size() > 0)
> expList.add(ExpressionFactory.inExp(TodOrders.USER_UUID_PROPERTY,
> userUuids));
>
>
>                if (fromDate != null && toDate != null) {
>                        expList.add(ExpressionFactory.betweenExp(TodOrders.TRANS_DATE_PROPERTY,
> fromDate, toDate));
>                } else if (fromDate != null && toDate == null) {
>                        expList.add(ExpressionFactory.greaterOrEqualExp(TodOrders.TRANS_DATE_PROPERTY,
> fromDate));
>                } else if (fromDate == null && toDate != null) {
>                        expList.add(ExpressionFactory.lessOrEqualExp(TodOrders.TRANS_DATE_PROPERTY,
> toDate));
>                }
>
>                if (status == 1) {
>                        expList.add(ExpressionFactory.matchExp(TodOrders.FULFILLED_PROPERTY,
null));
>                } else if (status == 2) {
>                        expList.add(ExpressionFactory.noMatchExp(TodOrders.FULFILLED_PROPERTY,
> null));
>                }
>                SelectQuery orderQuery = new
> SelectQuery(TodOrders.class,ExpressionFactory.joinExp(Expression.AND,
> expList));
>                orderQuery.addOrdering(new Ordering(TodOrders.TRANS_DATE_PROPERTY, true));
>
>                return context.performQuery(orderQuery);
>
>
>        }
>
>
> On Nov 26, 2007 7:42 AM, Andrus Adamchik <andrus@objectstyle.org> wrote:
> > Chris,
> >
> > I vaguely remember this being a problem in the past and us fixing
> > it... I couldn't find any references via Google (having "IN" as a
> > keyword doesn't help). So could you post the code that builds the
> > query and the exact Cayenne version.
> >
> > Thanks
> > Andrus
> >
> >
> >
> > On Nov 23, 2007, at 3:39 AM, Chris Gamache wrote:
> >
> > > I'm using Cayenne2 and PostgreSQL.
> > >
> > > For any single R-value in a where clause, my ExtendedType is working
> > > wonderfully. But! If I create an expression which uses the operator
> > > IN, my ExtendedType doesn't seem to get called. In the query logger
> > > everything looks okay, but pgjdbc complains in the same way that it
> > > would if there were no exended type. That leads me to believe either
> > > that Cayenne is ignoring ExtendedTypes when it does the JDBC binding
> > > for the R-value list, or that I've left out a detail in my
> > > ExtendedType class which is the culprit. I can post my ExtendedType
> > > code and some code that misbehaves. Will that suffice, or would you
> > > need more?
> > >
> > > CG
> > >
> >
> >
>

Mime
View raw message