2006/12/4, Pavel Pervov <[EMAIL PROTECTED]>:
Hope, these changes didn't make their way to the SVN yet... See below.
Pavel, thank you for explicit argumentation. Answers are inlined below, too.

[snip]
I believe, I can shed some light on the decision of making SetBCPElement
available to the public.
Magics are different from the rest of the jars in the way they belong to the
respective components, which provide these jars.
They are no way different than kernel.jar, which belongs to vmcore.
Just a matter of modular packaging, nothing more.

I don't see it as advantage for these jars to be available through any
public APIs for browsing - including system properties.
I can see some advantages - e.g. being clear and predictable. Similar
arguments you can find in the very beginning of this thread, btw. So
if you see no disadvantages either, we better change this.

That is why it was
suggested to Mikhail (Fursov; I believe there was a discussion on dev-list
on this topic) to implement it the way, it is now.


> > Do you believe that adding jars directly is no good?
> I prefer to have the consistent way.
> IMHO BootstrapClassLoader::SetBCPElement() should not be public, it is
> just a part of BootstrapClassLoader initialization and not intended
> for regular usage.


It is not exactly "regular use". Still, if you insist on keeping
SetBCPElement() private, merge the code from
bootstrap_add_components_classpath with
the BootstrapClassLoader initialization code.
Usually they call it a "hack", when an public API is there but not
meant for regular use ;) So I will do as you suggest, move it to
BootstrapClassLoader::Initialize().

--
Alexey

Reply via email to