Hi Markus,
I accept your point. On the other hand, i think this restriction hurts green dao integration.
For example, I'm considering adding green dao to an existing project which has all value object which have many helper methods. It will be really hard to move all of it to a keep section. + for project structure clarity, I prefer to have generated classes in a different folder.
If GreenDao had this suggested inheritance, I could configure it to generate wrapper classes (empty ones) to my VO folder.
Assuming that properties will be protected not private, all I would need to do would be removing my fields that are persistent from my value objects and I will be good to go. (to be clear, my value objects extend GreenDao models and all GreenDao classes will return my VOs rather than GreenDao models). In this case, we would make GreenDao models abstract to make sure nothing goes out of control.
I might be missing sth but I really cannot see why such inheritance will hurt further projects, e.g. entity inheritance or polymorphic queries. Basically, generated code will never ever construct an instance of Model objects, it will always use instances of value objects. (or whatever the extending elements are called which extend base model objects). The only constraint would be to have same constructors of Model objects in VOs.
If you are concerned about time (e.g. implementing this change); I would be happy to implement it and commit to GreenDao Project. But if you are not willing to do such change, it will require us to diverge from the main source code which we would not like to do for further updates & compatibility.
yigit