[hibernate-dev] Patch for HHH-272: Custom SQL for column gets and sets

Steve Ebersole steve at hibernate.org
Tue Sep 8 10:04:52 EDT 2009


Do you use IRC at all?  We could chat there.

On Sat, 2009-09-05 at 09:21 -0400, Rob Hasselbaum wrote:
> Steve,
> 
> Any additional input before I upload a new patch?
> 
> -Rob
> 
> 
> On 09/03/2009 10:28 PM, Rob Hasselbaum wrote:
> > Hi Steve, 
> > 
> > Thanks for the feedback. I am working on moving the patch to trunk
> > as you requested. I'll update the bug when that's done. My comments
> > on the rest of your feedback are inline below. 
> > 
> > On 09/03/2009 04:39 PM, Steve Ebersole wrote: 
> > > 1) Personally, I don't like the attribute names sql-get and
> > > sql-set. 
> > > When I think through trying to describe and explain this feature
> > > to 
> > > people, the terms "wrap" and "unwrap" keep coming to my head as
> > > being 
> > > descriptive, relevant and natural.  It was really the
> > > "naturalness" 
> > > aspect that got me with sql-get and sql-set.  Other terms I could
> > > think 
> > > of included encode/decodeAny other suggestions?   
> > 
> > I went with "sql-set" and "sql-get" because they are consistent with
> > the existing "sql-type" attribute and make sense to me, but I'm not
> > married to the terms. Wrap and unwrap sound good, too. Bear in mind
> > that the expressions need not be function calls, which wrap and
> > unwrap might suggest. The functional tests do math, for instance. 
> > 
> > > 2) Can anyone foresee a valid use-case for allowing one of these
> > > to be 
> > > defined w/o the other?  The only thing I came up with was for
> > > immutable 
> > > properties.  So something like <column name="xyz"
> > > unwrap="decode(xyz)" 
> > > insert="false" update="false"/>, which can also be defined using
> > > a 
> > > formula like <formula>decode(xyz)</formula>.  The reason I ask is
> > > that 
> > > if they should always be used together then maybe it is better to 
> > > enforce that in the DTD and/or binder 
> > >   
> > 
> > I couldn't think of a use case for a one-way conversion either. In
> > fact, you could end up reading out a different value than the one
> > you put in if you're not careful. But I'd regret adding an
> > artificial restriction if someone came up with a legitimate use case
> > next year. 
> > 
> > > 3) You renamed the getTemplate method on Selectable to 
> > > getGetterTemplate.  Everything in the o.h.mapping package is an
> > > SPI that 
> > > is used by many other libraries.  We need to be very careful
> > > about 
> > > changing stuff in here.  I am not sure if folks bind to this
> > > particular 
> > > method.  But since this is just a cosmetic change, I think it
> > > should be 
> > > reverted. 
> > > 
> > >   
> > 
> > Sorry, this was an oversight. At first, I thought I was going to
> > need to store a setter template in addition to a getter template in
> > the Column class,  It turned out that I didn't need it, but I forgot
> > to revert the name of the getter template. I'll fix that. 
> > 
> > > Still not done looking through the whole patch.  Will try to
> > > finish up 
> > > tomorrow. 
> > > 
> > >   
> > 
> > Thanks, 
> > -Rob 
> > 
> 
-- 
Steve Ebersole <steve at hibernate.org>
Hibernate.org




More information about the hibernate-dev mailing list