I call the requirement that any persistent class implement PersistenceCapable an evil part of the spec for the SPI as it is completely unnecessary. If a vendor chooses to use bytecode enhancement/generation/etc they are welcome to, but to require it as part of the spec is just annoying and encourages bad practices.

Anything obtainable from the PC interface is obtainable via the helper class, and that lets the behind-the-curtain stuff remain behind the curtain. Requiring the ability to cast to PC is a hack, and a hack in a spec not an implementation, which is worse.

-Brian

On Dec 9, 2003, at 2:45 PM, Gus Heck wrote:

The reason I expected to be wrong was that PC is listed as part of the SPI not the API. If applications muck around in the SPI then they may get information that is inconsistant with the same information provided by the API. The JDO vendor (OJB) may be doing fancy (and maybe even cool and useful) stuff you arn't supposed to see before giving it to you through the api, but accessing it through the SPI may short circuit the vendor's code. That is the theory as I understand it at least. Why is that evil?

- Gus

Brian McCallister wrote:

On Dec 9, 2003, at 2:04 PM, Gus Heck wrote:

Well I have discovered that my feeling that casting to PersistenceCapable was wrong is correct.


I prefer the term "evil" for this part of the spec ;-) (sorry Matt)

-Brian



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]





--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to