On Apr 5, 2014, at 4:23 PM, Aristedes Maniatis <a...@maniatis.org> wrote:
> 1. At the moment Cayenne is clever enough not to save objects to the database > if no actual changes are made to that object in the context. Will this > encryption change this in any way? Will Cayenne still know which objects are > unchanged? Yes. The main design decision was to do it below the object layer. It all happens at the Cayenne/JDBC boundary. So nothing changes at the user API side. > 2. Why did you decide to go down the regex path instead of some annotation or > property in the model to decide which columns to encrypt? It was just the simplest thing to implement :) We will likely provide alternatives eventually and anyone can hack their own: builder.columnMapper(MyMapper.class); > 3. What happens with searching on these columns? Does your patch address any > strategy to perform queries in memory or is that up to the developer to sort > out? There’s no special “search-in-memory” until we implement in-memory queries. But of course Expression.filterObjects(..) will work for manual matching, as the objects are decrypted. Andrus