On Sat, 10 Nov 2001 21:47, Jeff Turner wrote:
> > > Is there a reason for returning an empty child Configuration, or is
> > > this a bug?
> >
> > Its a feature so that we can support a pattern like
> >
> > c = getChild("foo").getChild("bar").getChild("baz");
>
> If /foo/bar exists, that will work under either system. If /foo or /foo/bar
> doesn't exist, isn't it a logical error for the program to assume it
> does?
maybe. Not sure. It was originally implemented like this when we were talking
about default values for things in config tree. Then people started using the
below construct and we got stuck with it ;)
> What can be done with an empty 'c' object?
s =
getChild("foo").getChild("bar").getChild("baz").getValue("default-value");
will always return a string value (using "default-value" - even if a
intermediate config doesn't exist.
>
> And to gain this "feature", one gives up the logical way to check for a
> subelement's presence (a null check). Though I guess it can still be
> done with:
>
> if (conf.getChid("foo", false) == null) {
> // ..
> }
>
> Anyway, if it's being used in the way you say, the issue probably isn't
> worth breaking everyone's code over.
I got a new funky acronym for that - it's BCS - Backwards Compatability
Syndrome ;]
--
Cheers,
Pete
---------------------------------------------
We shall not cease from exploration, and the
end of all our exploring will be to arrive
where we started and know the place for the
first time -- T.S. Eliot
---------------------------------------------
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>