| |
|
| java.lang.Object java.io.OutputStream java.io.ObjectOutputStream org.mozilla.javascript.serialize.ScriptableOutputStream
ScriptableOutputStream | public class ScriptableOutputStream extends ObjectOutputStream (Code) | | Class ScriptableOutputStream is an ObjectOutputStream used
to serialize JavaScript objects and functions. Note that
compiled functions currently cannot be serialized, only
interpreted functions. The top-level scope containing the
object is not written out, but is instead replaced with
another top-level object when the ScriptableInputStream
reads in this object. Also, object corresponding to names
added to the exclude list are not written out but instead
are looked up during deserialization. This approach avoids
the creation of duplicate copies of standard objects
during deserialization.
author: Norris Boyd |
Inner Class :static class PendingLookup implements Serializable | |
ScriptableOutputStream | public ScriptableOutputStream(OutputStream out, Scriptable scope) throws IOException(Code) | | ScriptableOutputStream constructor.
Creates a ScriptableOutputStream for use in serializing
JavaScript objects. Calls excludeStandardObjectNames.
Parameters: out - the OutputStream to write to. Parameters: scope - the scope containing the object. |
addExcludedName | public void addExcludedName(String name)(Code) | | Adds a qualified name to the list of object to be excluded from
serialization. Names excluded from serialization are looked up
in the new scope and replaced upon deserialization.
Parameters: name - a fully qualified name (of the form "a.b.c", where"a" must be a property of the top-level object) throws: IllegalArgumentException - if the object is not found or is nota Scriptable. |
addOptionalExcludedName | public void addOptionalExcludedName(String name)(Code) | | Adds a qualified name to the list of object to be excluded from
serialization. Names excluded from serialization are looked up
in the new scope and replaced upon deserialization.
Parameters: name - a fully qualified name (of the form "a.b.c", where"a" must be a property of the top-level object). The objectneed not exist, in which case the name is ignored. throws: IllegalArgumentException - if the object is not aScriptable. |
excludeStandardObjectNames | public void excludeStandardObjectNames()(Code) | | Adds the names of the standard objects and their
prototypes to the list of excluded names.
|
hasExcludedName | public boolean hasExcludedName(String name)(Code) | | Returns true if the name is excluded from serialization.
|
removeExcludedName | public void removeExcludedName(String name)(Code) | | Removes a name from the list of names to exclude.
|
|
|
|