[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[eclipselink-dev] Fix for bug 233756 (SDOClassLoader performance optimizations)
|
I have submitted a fix for the following bug:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=233756
Description: Performance improvements to loadClass() - look to see if
class has already been generated before searching the classpath.
Patch file attached, reviewed by Matt.
--
Rick Barkhouse | Software Developer, TopLink | 613.288.4613
Oracle Development
45 O'Connor Street, Suite 400 | Ottawa, Ontario K1P 1A4
|
Index: SAXUnmarshaller.java
===================================================================
--- SAXUnmarshaller.java (revision 16832)
+++ SAXUnmarshaller.java (working copy)
@@ -213,7 +213,7 @@
saxUnmarshallerHandler.setUnmarshaller(xmlUnmarshaller);
xmlReader.setContentHandler(saxUnmarshallerHandler);
xmlReader.parse(inputSource);
- xmlReader.setContentHandler(null);
+
// resolve any mapping references
saxUnmarshallerHandler.resolveReferences();
return saxUnmarshallerHandler.getObject();
@@ -231,7 +231,7 @@
saxUnmarshallerHandler.setUnmarshaller(xmlUnmarshaller);
xmlReader.setContentHandler(saxUnmarshallerHandler);
xmlReader.parse(inputSource);
- xmlReader.setContentHandler(null);
+
// resolve any mapping references
saxUnmarshallerHandler.resolveReferences();
return saxUnmarshallerHandler.getObject();
@@ -281,7 +281,7 @@
//if lexical handling is not supported by this parser, just ignore.
}
xmlReader.parse(inputSource);
- xmlReader.setContentHandler(null);
+
} catch (IOException e) {
throw XMLMarshalException.unmarshalException(e);
} catch (SAXException e) {
@@ -333,7 +333,7 @@
//if lexical handling is not supported by this parser, just ignore.
}
xmlReader.parse(inputSource);
- xmlReader.setContentHandler(null);
+
} catch (IOException e) {
throw XMLMarshalException.unmarshalException(e);
} catch (SAXException e) {
@@ -361,8 +361,8 @@
handler.setXMLReader(reader);
handler.setUnmarshaller(xmlUnmarshaller);
reader.parse(node);
- reader.setContentHandler(null);
+
handler.resolveReferences();
return handler.getObject();
} catch (SAXException e) {
@@ -404,7 +404,7 @@
domReader.setContentHandler(unmarshalRecord);
domReader.setProperty("http://xml.org/sax/properties/lexical-handler", unmarshalRecord);
domReader.parse(node);
- domReader.setContentHandler(null);
+
} catch (SAXException e) {
throw convertSAXException(e);
}
@@ -545,7 +545,7 @@
saxUnmarshallerHandler.setUnmarshaller(xmlUnmarshaller);
xmlReader.setContentHandler(saxUnmarshallerHandler);
xmlReader.parse(systemId);
- xmlReader.setContentHandler(null);
+
// resolve mapping references
saxUnmarshallerHandler.resolveReferences();
return saxUnmarshallerHandler.getObject();