|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.batik.script.rhino.RhinoInterpreter
A simple implementation of Interpreter
interface to use
Rhino ECMAScript interpreter.
Nested Class Summary | |
static interface |
RhinoInterpreter.ArgumentsBuilder
To build an argument list. |
protected static class |
RhinoInterpreter.Entry
Class to store cached compiled scripts. |
protected class |
RhinoInterpreter.Factory
Factory for Context objects. |
Field Summary | |
static String |
BIND_NAME_WINDOW
Name of the "window" object when referenced by scripts |
protected ClassShutter |
classShutter
Class shutter. |
protected LinkedList |
compiledScripts
List of cached compiled scripts. |
protected ContextFactory |
contextFactory
Factory object for creating Contexts. |
protected static List |
contexts
Context vector, to make sure we are not setting the security context too many times |
protected Context |
defaultContext
Default Context for scripts. |
protected ScriptableObject |
globalObject
The global object. |
protected RhinoClassLoader |
rhinoClassLoader
The Rhino 'security domain'. |
protected SecurityController |
securityController
The SecurityController implementation for Batik, which ensures scripts have access to the server they were downloaded from |
static String |
SOURCE_NAME_SVG
Constant used to describe an SVG source |
protected Window |
window
The window object. |
protected WrapFactory |
wrapFactory
Factory for Java wrapper objects. |
Constructor Summary | |
RhinoInterpreter(URL documentURL)
Build a Interpreter for ECMAScript using Rhino. |
|
RhinoInterpreter(URL documentURL,
ImportInfo imports)
Build a Interpreter for ECMAScript using Rhino. |
Method Summary | |
void |
bindObject(String name,
Object object)
This method registers a particular Java Object in
the environment of the interpreter. |
protected ScriptableObject |
createGlobalObject(Context ctx)
Creates the global object. |
protected void |
defineGlobalWrapperClass(Scriptable global)
Defines the class for the global object. |
void |
dispose()
For RhinoInterpreter this method flushes the
Rhino caches to avoid memory leaks. |
Object |
evaluate(Reader scriptreader)
This method evaluates a piece of ECMAScript. |
Object |
evaluate(Reader scriptReader,
String description)
This method evaluates a piece of ECMAScript. |
Object |
evaluate(String scriptStr)
This method evaluates a piece of ECMA script. |
String |
formatMessage(String key,
Object[] args)
Creates and returns a localized message, given the key of the message, 0, data.length in the resource bundle and the message parameters. |
AccessControlContext |
getAccessControlContext()
Returns the AccessControlContext associated with this Interpreter. |
ContextFactory |
getContextFactory()
Returns the ContextFactory for this interpreter. |
protected ScriptableObject |
getGlobalObject()
This method returns the ECMAScript global object used by this interpreter. |
Locale |
getLocale()
Returns the current locale or null if the locale currently used is the default one. |
String[] |
getMimeTypes()
Returns the content types of the scripting languages this interpreter handles. |
Window |
getWindow()
Returns the window object for this interpreter. |
protected void |
init(URL documentURL,
ImportInfo imports)
|
void |
setLocale(Locale locale)
Provides a way to the user to specify a locale which override the default one. |
void |
setOut(Writer out)
By default Rhino has no output method in its language. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final String SOURCE_NAME_SVG
public static final String BIND_NAME_WINDOW
protected static List contexts
protected Window window
protected ScriptableObject globalObject
protected LinkedList compiledScripts
protected WrapFactory wrapFactory
protected ClassShutter classShutter
protected RhinoClassLoader rhinoClassLoader
protected SecurityController securityController
protected ContextFactory contextFactory
protected Context defaultContext
Constructor Detail |
public RhinoInterpreter(URL documentURL)
Interpreter
for ECMAScript using Rhino.
documentURL
- the URL for the document which referencesInterpreter
,
InterpreterPool
public RhinoInterpreter(URL documentURL, ImportInfo imports)
Interpreter
for ECMAScript using Rhino.
documentURL
- the URL for the document which referencesimports
- the set of Java classes/packages to import
into the scripting enviornment.Interpreter
,
InterpreterPool
Method Detail |
protected void init(URL documentURL, ImportInfo imports)
public String[] getMimeTypes()
getMimeTypes
in interface Interpreter
public Window getWindow()
public ContextFactory getContextFactory()
protected void defineGlobalWrapperClass(Scriptable global)
protected ScriptableObject createGlobalObject(Context ctx)
public AccessControlContext getAccessControlContext()
RhinoClassLoader
protected ScriptableObject getGlobalObject()
public Object evaluate(Reader scriptreader) throws IOException
evaluate
in interface Interpreter
scriptreader
- a java.io.Reader
on the piece of script
IOException
public Object evaluate(Reader scriptReader, String description) throws IOException
evaluate
in interface Interpreter
scriptReader
- a java.io.Reader
on the piece of scriptdescription
- description which can be later used (e.g., for error
messages).
IOException
public Object evaluate(String scriptStr)
evaluate
in interface Interpreter
scriptStr
- the piece of script
public void dispose()
RhinoInterpreter
this method flushes the
Rhino caches to avoid memory leaks.
dispose
in interface Interpreter
public void bindObject(String name, Object object)
Object
in
the environment of the interpreter.
bindObject
in interface Interpreter
name
- the name of the script object to createobject
- the Java objectpublic void setOut(Writer out)
setOut
in interface Interpreter
out
- the new out Writer
.public Locale getLocale()
getLocale
in interface Localizable
public void setLocale(Locale locale)
setLocale
in interface Localizable
locale
- The locale to set.public String formatMessage(String key, Object[] args)
formatMessage
in interface Localizable
key
- The key used to retreive the message from the resource
bundle.args
- The objects that compose the message.
MissingResourceException
- if the key is not in the bundle.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |