On 24/04/2009, at 9:53 AM, Robert Zeigler wrote:

I expected the Entry subclass of _Entry, and superclass of the other two concrete classes to be abstract. Instead, only the cayenne-"managed" superclass was abstract. It seems like there's very little point to that: nobody is going to try to directly instantiate _Entry, anyway. And I can't put abstract methods that subclasses should implement into _Entry, since they'll be lost on class regeneration. I guess it's a matter of expectations: by checking "isabstract", I expect cayenne to treat that object entity as abstract... and not try to instantiate it. :)

Is this fix as simple as changing the DOtemplate for the subclass? Now I understand your point and I think you are right that it is broken, but the fix should be one line in the template.

To some degree it might make sense for the _Entry superclass to be abstract always to avoid people shooting themselves in the foot and using the wrong class by mistake.

Ari



-------------------------->
ish
http://www.ish.com.au
Level 1, 30 Wilson Street Newtown 2042 Australia
phone +61 2 9550 5001   fax +61 2 9550 4001
GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A


Reply via email to