public class MultiModuleScriptProvider extends java.lang.Object implements ModuleScriptProvider
| Constructor and Description |
|---|
MultiModuleScriptProvider(java.lang.Iterable<? extends ModuleScriptProvider> providers)
Creates a new multiplexing module script provider tht gathers the specified providers
|
| Modifier and Type | Method and Description |
|---|---|
ModuleScript |
getModuleScript(Context cx,
java.lang.String moduleId,
java.net.URI uri,
java.net.URI base,
Scriptable paths)
Returns a module script.
|
public MultiModuleScriptProvider(java.lang.Iterable<? extends ModuleScriptProvider> providers)
providers - the providers to multiplex.public ModuleScript getModuleScript(Context cx, java.lang.String moduleId, java.net.URI uri, java.net.URI base, Scriptable paths) throws java.lang.Exception
ModuleScriptProvidergetModuleScript in interface ModuleScriptProvidercx - current context. Can be used to compile module scripts.moduleId - the ID of the module. An implementation must only accept an absolute ID,
starting with a term.uri - the URI of the module. If this is not null, resolution of moduleId
is bypassed and the script is directly loaded from moduleUribase - the module path base URI from which moduleUri was derived.paths - the value of the require() function's "paths" attribute. If the require()
function is sandboxed, it will be null, otherwise it will be a JavaScript Array object.
It is up to the provider implementation whether and how it wants to honor the contents of
the array.java.lang.Exception - if there was an unrecoverable problem obtaining the scriptjava.lang.IllegalArgumentException - if the module ID is syntactically not a valid absolute
module identifier.