From: Gavin_King/Cirrus%<CI...@ci...> - 2002-03-05 14:42:47
|
Cool! Sounds great. > * Added a public boolean isNative function to the IDGenerator interface. > All old generators return false here, the NativeGenerator returns true. I'm wondering if this is the best place for this flag. Can't see how its used but I would have been tempted to plonk it on ClassPersister instead. My reasoning is that there will only ever be that one single implementation of IDGenerator where it returns false. By adding the method to IDGenerator we force every future implementation of the interface to declare a method that does the exact same thing. There are three places where hibernate is supposed to support user-extension * cirrus.hibernate.sql.Dialect * cirrus.hibernate.id.IDGenerator * cirrus.hibernate.type.Type People have gone crazy adding new Dialects which is All Good. I had hoped for a bit more action in the other areas..... Now, Type has already got a little bit out of hand and will probably be slightly refactored sometime soon (before 1.0). I notice no-one has taken the plunge and tried to add new Types so far. This is probably an indication that something is wrong. (Or maybe everyone is just so happy with the existing Types.) Doesn't someone out there need BLOB support?? This can't be part of the "official" API because some priority target platforms (Postgres) don't have BLOBS yet. Still, I would happily distribute BLOBType with the rest of the project.... I think what I just did is called "going off on a tangent". Anyways my point was lets try and keep IDGenerator and Dialect as trivial as possible. If possible. Cool? |