You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by us...@apache.org on 2013/09/13 17:10:24 UTC

svn commit: r1522967 - /lucene/dev/branches/lucene5207/lucene/expressions/src/java/org/apache/lucene/expressions/js/JavascriptCompiler.java

Author: uschindler
Date: Fri Sep 13 15:10:23 2013
New Revision: 1522967

URL: http://svn.apache.org/r1522967
Log:
LUCENE-5207: Remove classloader field (is not needed, we call only once)

Modified:
    lucene/dev/branches/lucene5207/lucene/expressions/src/java/org/apache/lucene/expressions/js/JavascriptCompiler.java

Modified: lucene/dev/branches/lucene5207/lucene/expressions/src/java/org/apache/lucene/expressions/js/JavascriptCompiler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5207/lucene/expressions/src/java/org/apache/lucene/expressions/js/JavascriptCompiler.java?rev=1522967&r1=1522966&r2=1522967&view=diff
==============================================================================
--- lucene/dev/branches/lucene5207/lucene/expressions/src/java/org/apache/lucene/expressions/js/JavascriptCompiler.java (original)
+++ lucene/dev/branches/lucene5207/lucene/expressions/src/java/org/apache/lucene/expressions/js/JavascriptCompiler.java Fri Sep 13 15:10:23 2013
@@ -136,8 +136,6 @@ public class JavascriptCompiler {
   
   private static final int MAX_SOURCE_LENGTH = 16384;
   
-  private final Loader loader = new Loader(getClass().getClassLoader());
-  
   private ClassWriter classWriter;
   private MethodVisitor methodVisitor;
   private Map<String, Integer> externalsMap;
@@ -192,7 +190,8 @@ public class JavascriptCompiler {
       recursiveCompile(antlrTree, ComputedType.DOUBLE);
       endCompile();
       
-      Class<? extends Expression> evaluatorClass = loader.define(COMPILED_EXPRESSION_CLASS, classWriter.toByteArray());
+      Class<? extends Expression> evaluatorClass = new Loader(getClass().getClassLoader())
+        .define(COMPILED_EXPRESSION_CLASS, classWriter.toByteArray());
       Constructor<? extends Expression> constructor = evaluatorClass.getConstructor(String.class, String[].class);
       return constructor.newInstance(sourceText, externalsList.toArray(new String[externalsList.size()]));
     } catch (InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException exception) {