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]