vhardy 2002/06/18 01:27:22 Modified: sources/org/apache/batik/script InterpreterPool.java sources/org/apache/batik/script/rhino RhinoInterpreter.java Log: Clean-up: Fixed bug #8404 and removed hard coded constants from scripting module Revision Changes Path 1.13 +7 -2 xml-batik/sources/org/apache/batik/script/InterpreterPool.java Index: InterpreterPool.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/script/InterpreterPool.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- InterpreterPool.java 14 May 2002 08:57:32 -0000 1.12 +++ InterpreterPool.java 18 Jun 2002 08:27:22 -0000 1.13 @@ -44,6 +44,11 @@ "org.apache.batik.script.jacl.JaclInterpreterFactory"; /** + * Name of the "document" object when referenced by scripts + */ + public static final String BIND_NAME_DOCUMENT = "document"; + + /** * The default InterpreterFactory map. */ protected static Map defaultFactories = new HashMap(7); @@ -102,7 +107,7 @@ interpreter = factory.createInterpreter (((SVGOMDocument)document).getURLObject()); if (document != null) { - interpreter.bindObject("document", document); + interpreter.bindObject(BIND_NAME_DOCUMENT, document); } } catch (Exception t) { // may happen if the batik interpreters class is here but 1.19 +24 -7 xml-batik/sources/org/apache/batik/script/rhino/RhinoInterpreter.java Index: RhinoInterpreter.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/script/rhino/RhinoInterpreter.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- RhinoInterpreter.java 6 Jun 2002 08:33:46 -0000 1.18 +++ RhinoInterpreter.java 18 Jun 2002 08:27:22 -0000 1.19 @@ -69,9 +69,26 @@ } }; - // store last 32 precompiled objects. + /** + * store last 32 precompiled objects. + */ private static final int MAX_CACHED_SCRIPTS = 32; + /** + * Constant used to describe an SVG source + */ + public static final String SOURCE_NAME_SVG = "<SVG>"; + + /** + * Name of the "window" object when referenced by scripts + */ + public static final String BIND_NAME_WINDOW = "window"; + + /** + * Instantiate the "window" object + */ + public static final String ECMA_WINDOW_INSTANTIATION = "window = new Window(window)"; + private ScriptableObject globalObject = null; private LinkedList compiledScripts = new LinkedList(); private WrapHandler wrapHandler = @@ -193,7 +210,7 @@ try { rv = ctx.evaluateReader(globalObject, scriptreader, - "<SVG>", + SOURCE_NAME_SVG, 1, rhinoClassLoader); } catch (JavaScriptException e) { // exception from JavaScript (possibly wrapping a Java Ex) @@ -258,7 +275,7 @@ try { return ctx.compileReader(globalObject, new StringReader(scriptstr), - "<SVG>", + SOURCE_NAME_SVG, 1, rhinoClassLoader); } catch(IOException io) { // Should never happen: we are using a string @@ -327,18 +344,18 @@ Context.exit(); } - if (name.equals("window") && object instanceof Window) { + if (name.equals(BIND_NAME_WINDOW) && object instanceof Window) { try { // Defines the 'Window' class. ScriptableObject.defineClass(globalObject, WindowWrapper.class); // Wrap the given window object. - evaluate(new StringReader("window = new Window(window)")); + evaluate(new StringReader(ECMA_WINDOW_INSTANTIATION)); // The window becomes the global object. globalObject = - (ScriptableObject)globalObject.get("window", globalObject); + (ScriptableObject)globalObject.get(BIND_NAME_WINDOW, globalObject); } catch (Exception e) { // Cannot happen. }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]