Kay Ramme - Sun Germany - Hamburg wrote:
Stephan,
Stephan Bergmann wrote:
Why do you think so? My reading of the article is as follows:
Something marked "public" in Java can be accessed by everybody, and
that is a problem, as while some of those things are really intended
by their authors to be accessible by anybody, others are not (but must
be "public" nonetheless for some technical reasons): "The two cases
are quite different, yet there’s nothing in the Java language to tell
the difference." Introducing the "published" concept solves that
problem in that authors can now specify whether or not they intend
specific things to be accessible by anybody. (Technically, people
could still cheat and access unpublished things, but it would at least
be clear who is doing something wrong then.) This is the same
situation as our UNO API: While all the things are technically
visible, clients should only use those things marked "published" (they
still can technically use the others, too, but have to be very sure
they know the consequences of doing so).
The "public" problem is purely Java related, UNO APIs can very well be
private ...
...not really. The (new-style) services and singletons of the private
API need to be available at the global service manager and component
context (by definition), and information about any types of the private
API should be available at the global type description manager (so that
bridging works). So, information about a private API leaks, and you are
faced with the problem that, as I said before, I see analogous in
Fowler's original Java case and our UNO API case: you want to
differentiate API that is globally accessible by design from API that is
globally accessible by accident.
-Stephan
Kay
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]