Side note: I never remember but if hashcode is not cached in Object native impl we should do it in classloaders. It is called so often it can be noticeable in some cases Romain Manni-Bucau Twitter: @rmannibucau Blog: http://rmannibucau.wordpress.com/ LinkedIn: http://fr.linkedin.com/in/rmannibucau Github: https://github.com/rmannibucau
2013/12/3 <[email protected]>: > Author: tveronezi > Date: Tue Dec 3 20:35:41 2013 > New Revision: 1547574 > > URL: http://svn.apache.org/r1547574 > Log: > Using "Object.equals" and "Object.hashCode". > > Modified: > > tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/LazyStopWebappClassLoader.java > > Modified: > tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/LazyStopWebappClassLoader.java > URL: > http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/LazyStopWebappClassLoader.java?rev=1547574&r1=1547573&r2=1547574&view=diff > ============================================================================== > --- > tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/LazyStopWebappClassLoader.java > (original) > +++ > tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/LazyStopWebappClassLoader.java > Tue Dec 3 20:35:41 2013 > @@ -41,21 +41,19 @@ public class LazyStopWebappClassLoader e > private boolean restarting = false; > private boolean forceStopPhase = > Boolean.parseBoolean(SystemInstance.get().getProperty("tomee.webappclassloader.force-stop-phase", > "false")); > private ClassLoaderConfigurer configurer = null; > - private final int hashCode; > > public LazyStopWebappClassLoader() { > - hashCode = construct(); > + construct(); > } > > public LazyStopWebappClassLoader(final ClassLoader parent) { > super(parent); > - hashCode = construct(); > + construct(); > } > > - private int construct() { > + private void construct() { > setDelegate(isDelegate()); > configurer = INIT_CONFIGURER.get(); > - return super.hashCode(); > } > > @Override > @@ -208,16 +206,6 @@ public class LazyStopWebappClassLoader e > } > > @Override > - public boolean equals(final Object other) { > - return other != null && ClassLoader.class.isInstance(other) && > hashCode() == other.hashCode(); > - } > - > - @Override > - public int hashCode() { > - return hashCode; > - } > - > - @Override > public String toString() { > return "LazyStop" + super.toString(); > } > >
