Author: kkolinko Date: Tue May 20 12:29:41 2014 New Revision: 1596226 URL: http://svn.apache.org/r1596226 Log: Improve handling of Throwable. Add changelog entry.
Modified: tomcat/trunk/java/org/apache/naming/factory/EjbFactory.java tomcat/trunk/java/org/apache/naming/factory/FactoryBase.java tomcat/trunk/java/org/apache/naming/factory/ResourceFactory.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/naming/factory/EjbFactory.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/naming/factory/EjbFactory.java?rev=1596226&r1=1596225&r2=1596226&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/naming/factory/EjbFactory.java (original) +++ tomcat/trunk/java/org/apache/naming/factory/EjbFactory.java Tue May 20 12:29:41 2014 @@ -46,8 +46,15 @@ public class EjbFactory extends FactoryB factory = (ObjectFactory) Class.forName(javaxEjbFactoryClassName).newInstance(); } catch(Throwable t) { - if (t instanceof NamingException) + if (t instanceof NamingException) { throw (NamingException) t; + } + if (t instanceof ThreadDeath) { + throw (ThreadDeath) t; + } + if (t instanceof VirtualMachineError) { + throw (VirtualMachineError) t; + } NamingException ex = new NamingException ("Could not create resource factory instance"); ex.initCause(t); Modified: tomcat/trunk/java/org/apache/naming/factory/FactoryBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/naming/factory/FactoryBase.java?rev=1596226&r1=1596225&r2=1596226&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/naming/factory/FactoryBase.java (original) +++ tomcat/trunk/java/org/apache/naming/factory/FactoryBase.java Tue May 20 12:29:41 2014 @@ -74,6 +74,12 @@ public abstract class FactoryBase implem if (t instanceof NamingException) { throw (NamingException) t; } + if (t instanceof ThreadDeath) { + throw (ThreadDeath) t; + } + if (t instanceof VirtualMachineError) { + throw (VirtualMachineError) t; + } NamingException ex = new NamingException( "Could not create resource factory instance"); ex.initCause(t); Modified: tomcat/trunk/java/org/apache/naming/factory/ResourceFactory.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/naming/factory/ResourceFactory.java?rev=1596226&r1=1596225&r2=1596226&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/naming/factory/ResourceFactory.java (original) +++ tomcat/trunk/java/org/apache/naming/factory/ResourceFactory.java Tue May 20 12:29:41 2014 @@ -60,6 +60,15 @@ public class ResourceFactory extends Fac factory = (ObjectFactory) Class.forName(javaxMailSessionFactoryClassName).newInstance(); } catch(Throwable t) { + if (t instanceof NamingException) { + throw (NamingException) t; + } + if (t instanceof ThreadDeath) { + throw (ThreadDeath) t; + } + if (t instanceof VirtualMachineError) { + throw (VirtualMachineError) t; + } NamingException ex = new NamingException( "Could not create resource factory instance"); ex.initCause(t); Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1596226&r1=1596225&r2=1596226&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Tue May 20 12:29:41 2014 @@ -77,6 +77,12 @@ application threads printed by WebappClassLoader.clearReferencesThreads() from error to info. (kkolinko) </update> + <scode> + Refactor and simplify common code in object factories in + <code>org.apache.catalina.naming</code> package, found thanks to Simian + (Similarity Analyser) tool. Improve handling of Throwable. + (markt/kkolinko) + </scode> </changelog> </subsection> <section name="WebSocket"> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org