[Mulgara-general] Mulgara API's

Life is hard, and then you die ronald at innovation.ch
Sat Feb 23 02:57:58 UTC 2008


On Fri, Feb 22, 2008 at 08:12:41PM -0600, Paul Gearon wrote:
> On Fri, Feb 22, 2008 at 6:38 PM, Life is hard, and then you die
> <ronald at innovation.ch> wrote:
> > On Thu, Feb 21, 2008 at 06:52:49PM -0600, Paul Gearon wrote:
> >  [snip]
> >
> > > For backward compatibility, the ItqlInterpreterBean is still there,
> >  > but now it works differently.  Now it parses a query into a command.
> >  [snip]
> >
> > > (caveat: Ronald pointed out that I fiddled trivially with the
> >  > ItqlInterpreterBean interface, breaking backward compatibility.  If he
> >  > hasn't fixed this already then I will.  It was a mistake)
> >
> >  I fixed it almost two weeks ago (see [634] and [636]).
> >
> >  But note that it's still not fully backwards compatible because
> >  setServerURI() is now a no-op and any explicit session passed in is
> >  also ignored (unless you use "local:" for the server/model uri's and
> >  the session is a local DatabaseSession instance).
> 
> Yes, that was an explicit decision on my part.  I realized that it
> could be hazardous, but decided to deprecate it anyway.  After all,
> it's a method fraught with peril, since the wrong query can update
> your session on you without you knowing about it.

Agreed. I'm not saying ItqlInterpreterBean was good or the fact that
it's not fully backwards compatible is bad, I just meant to note for
the unwary that this part has changed.

> If you're using that method, then you're managing your own sessions.
> To my knowledge, very few developers are working at this level, and I
> thought that by imposing an extra requirement on those people was
> going to be worthwhile to make the code simpler.  Besides, the
> Connection code was written with these developers in mind.  There's
> even a constructor on SessionConnection which lets you create a
> Connection with a session you have created yourself.

I know - I'm using it :-)

> Had I wanted to continue support for ItqlInterpreterBean.setSession(),
> and to make it correct, then I'd have to manage sessions in
> ItqlInterpreterBean, as well as the existing management of
> connections.  That's just getting silly.

Agreed.

> IMO, the biggest problem with what I've done is that I haven't had
> time to document it yet.  :-(

Yup. So at least the mailing list archives provide some documentation
(Google will find it...)


  Cheers,

  Ronald




More information about the Mulgara-general mailing list