[ 
https://issues.apache.org/jira/browse/CAY-1693?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrus Adamchik closed CAY-1693.
--------------------------------

       Resolution: Fixed
    Fix Version/s: 3.1M4

There's still a lot to be done (and will be done in separate Jiras). 
Specifically:

* ExpressionFactory support, 
* parser support
* all DBs other than MySQL (I suspect it will work on PostgreSQL, but haven't 
tested yet)
* unit tests for in-memory eval of bitwise ops
* maybe implement more ops (shifts, etc)

Some current usage examples: notes

+        Expression left = new ASTBitwiseAnd(new ASTObjPath(
+                ReturnTypesMap1.INTEGER_COLUMN_PROPERTY), new ASTScalar(1));
+        Expression right = new ASTScalar(0);
+        Expression equal = new ASTEqual();
+        equal.setOperand(0, left);
+        equal.setOperand(1, right);
+
+        SelectQuery query = new SelectQuery(ReturnTypesMap1.class);
+        query.setQualifier(equal);


                
> Initial support for bitwise operators in Expression and SelectQuery - MySQL
> ---------------------------------------------------------------------------
>
>                 Key: CAY-1693
>                 URL: https://issues.apache.org/jira/browse/CAY-1693
>             Project: Cayenne
>          Issue Type: Task
>          Components: Core Library
>    Affects Versions: 3.1M3
>            Reporter: Andrus Adamchik
>            Assignee: Andrus Adamchik
>             Fix For: 3.1M4
>
>
> I need to use some bitmasks as query criteria. It appears that most DBs 
> support bitwise operations:
> http://en.wikipedia.org/wiki/Bitwise_operation
> http://dev.mysql.com/doc/refman/5.1/en/bit-functions.html
> http://www.postgresql.org/docs/8.4/static/functions-math.html
> http://hsqldb.org/doc/guide/builtinfunctions-chapt.html#builtin_functions_numeric_sect
> I am going to add support in Expressions, SelectQueries and the underlying 
> stack for &, ~, |, ^... For now a very basic implementation with no parser 
> support, no ExpressionFactory support, and probably just MySQL adapter 
> support. It will stay under the radar, hopefully useful to people who need 
> them until we have the time to expand it to cover all DBs and all use cases.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to