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

Reply via email to