Hi Daniel,

There are currently several different FactoryFinder class in the JAXP implementation and there might be slight difference in each of them. Do you know if it has been looked into whether it's feasible to merge them into a single utility class? I suspect someone might have brought this up in the past.

Mandy

On 12/17/2012 9:43 AM, Daniel Fuchs wrote:
Hi,

Here is a new webrev in the series that addresses using ServiceLoader in
JAXP for JDK 8.

7169894: JAXP Plugability Layer: using service loader

This changeset addresses modification in the javax.xml.stream
package.
It is similar to changes proposed for the javax.xml.parsers
package [1], with a few differences due to the specificity of
javax.xml.stream.

Namely:

1. The XMLXxxxFactory.newInstance methods that takes parameter takes
   a property name, rather than a class name, and thus calls
   FactoryFinder.find.

2. One of the deprecated XMLOutputFactory.newInstance method had a
   bug - it used to return an XMLInputFactory - and was deprecated
   because of that - so I did preserve the bug.

3. The noarg newFactory() methods were leaking instances of the
   private FactoryFinder$ConfigurationError - my patch corrects
   that since it removes FactoryFinder$ConfigurationError.

4. In FactoryFinder.find() the ClassLoader parameter is often ignored,
   which makes the factories in the stream package behave differently
   from theirs cousins in the other packages. I believe this was an
   oversight due to (1).
   My patch will not fix that - I will instead log this as a separate
   issue.


<http://cr.openjdk.java.net/~dfuchs/JDK-7169894/javax.xml.stream/webrev.00>

best regards,

-- daniel

previous webrevs in the series:

[1] javax.xml.parsers:
<http://cr.openjdk.java.net/~dfuchs/JDK-7169894/javax.xml.parser/webrev.06>

[2] javax.xml.datatype:
<http://cr.openjdk.java.net/~dfuchs/JDK-7169894/javax.xml.datatype/webrev.02>

Reply via email to