Package helma.scripting.rhino
Class NodeModulesProvider
java.lang.Object
org.mozilla.javascript.commonjs.module.provider.ModuleSourceProviderBase
org.mozilla.javascript.commonjs.module.provider.UrlModuleSourceProvider
helma.scripting.rhino.NodeModulesProvider
- All Implemented Interfaces:
Serializable
,org.mozilla.javascript.commonjs.module.provider.ModuleSourceProvider
public class NodeModulesProvider
extends org.mozilla.javascript.commonjs.module.provider.UrlModuleSourceProvider
Bridges the gap between CommonJS-style module loading and Node.js-style module loading.
- See Also:
-
Field Summary
Fields inherited from interface org.mozilla.javascript.commonjs.module.provider.ModuleSourceProvider
NOT_MODIFIED
-
Constructor Summary
ConstructorsConstructorDescriptionNodeModulesProvider
(Iterable<URI> privilegedUris, Iterable<URI> fallbackUris) Delegates to the super constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected org.mozilla.javascript.commonjs.module.provider.ModuleSource
loadFromUri
(URI uri, URI base, Object validator) Do what Node.js's require(X) would do.Methods inherited from class org.mozilla.javascript.commonjs.module.provider.UrlModuleSourceProvider
entityNeedsRevalidation, loadFromActualUri, loadFromFallbackLocations, loadFromPrivilegedLocations, onFailedClosingUrlConnection, openUrlConnection
Methods inherited from class org.mozilla.javascript.commonjs.module.provider.ModuleSourceProviderBase
loadSource, loadSource
-
Constructor Details
-
NodeModulesProvider
Delegates to the super constructor.
-
-
Method Details
-
loadFromUri
protected org.mozilla.javascript.commonjs.module.provider.ModuleSource loadFromUri(URI uri, URI base, Object validator) throws IOException, URISyntaxException Do what Node.js's require(X) would do. Case 1 is not supported, you will have to use modules from npmjs.org, re-implementing the core core module's functionality. We might want to use Nodeschnaps in the future. Case 2 is not supported, paths are always treated as relative paths within the application's "commonjs" directory. Case 5 additionally triesModuleSourceProviderBase.loadSource(URI, URI, Object)
, even if it is very unlikely that something, which hasn't been tried yet, will be done. One could say we are just delegating throwing the error.- Overrides:
loadFromUri
in classorg.mozilla.javascript.commonjs.module.provider.UrlModuleSourceProvider
- Throws:
IOException
URISyntaxException
-