Class NashornScriptEngineFactory

  • All Implemented Interfaces:
    javax.script.ScriptEngineFactory

    public final class NashornScriptEngineFactory
    extends java.lang.Object
    implements javax.script.ScriptEngineFactory
    JSR-223 compliant script engine factory for Nashorn. The engine answers for:
    • names "nashorn", "Nashorn", "js", "JS", "JavaScript", "javascript", "ECMAScript", and "ecmascript";
    • MIME types "application/javascript", "application/ecmascript", "text/javascript", and "text/ecmascript";
    • as well as for the extension "js".
    Programs executing in engines created using getScriptEngine(String[]) will have the passed arguments accessible as a global variable named "arguments".
    Since:
    1.8u40
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getEngineName()  
      java.lang.String getEngineVersion()  
      java.util.List<java.lang.String> getExtensions()  
      java.lang.String getLanguageName()  
      java.lang.String getLanguageVersion()  
      java.lang.String getMethodCallSyntax​(java.lang.String obj, java.lang.String method, java.lang.String... args)  
      java.util.List<java.lang.String> getMimeTypes()  
      java.util.List<java.lang.String> getNames()  
      java.lang.String getOutputStatement​(java.lang.String toDisplay)  
      java.lang.Object getParameter​(java.lang.String key)  
      java.lang.String getProgram​(java.lang.String... statements)  
      javax.script.ScriptEngine getScriptEngine()  
      javax.script.ScriptEngine getScriptEngine​(java.lang.ClassLoader appLoader)
      Create a new Script engine initialized with the given class loader.
      javax.script.ScriptEngine getScriptEngine​(java.lang.String... args)
      Create a new Script engine initialized with the given arguments.
      javax.script.ScriptEngine getScriptEngine​(java.lang.String[] args, java.lang.ClassLoader appLoader)
      Create a new Script engine initialized with the given arguments and the given class loader.
      javax.script.ScriptEngine getScriptEngine​(java.lang.String[] args, java.lang.ClassLoader appLoader, ClassFilter classFilter)
      Create a new Script engine initialized with the given arguments, class loader and class filter.
      javax.script.ScriptEngine getScriptEngine​(ClassFilter classFilter)
      Create a new Script engine initialized with the given class filter.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • NashornScriptEngineFactory

        public NashornScriptEngineFactory()
    • Method Detail

      • getEngineName

        public java.lang.String getEngineName()
        Specified by:
        getEngineName in interface javax.script.ScriptEngineFactory
      • getEngineVersion

        public java.lang.String getEngineVersion()
        Specified by:
        getEngineVersion in interface javax.script.ScriptEngineFactory
      • getExtensions

        public java.util.List<java.lang.String> getExtensions()
        Specified by:
        getExtensions in interface javax.script.ScriptEngineFactory
      • getLanguageName

        public java.lang.String getLanguageName()
        Specified by:
        getLanguageName in interface javax.script.ScriptEngineFactory
      • getLanguageVersion

        public java.lang.String getLanguageVersion()
        Specified by:
        getLanguageVersion in interface javax.script.ScriptEngineFactory
      • getMethodCallSyntax

        public java.lang.String getMethodCallSyntax​(java.lang.String obj,
                                                    java.lang.String method,
                                                    java.lang.String... args)
        Specified by:
        getMethodCallSyntax in interface javax.script.ScriptEngineFactory
      • getMimeTypes

        public java.util.List<java.lang.String> getMimeTypes()
        Specified by:
        getMimeTypes in interface javax.script.ScriptEngineFactory
      • getNames

        public java.util.List<java.lang.String> getNames()
        Specified by:
        getNames in interface javax.script.ScriptEngineFactory
      • getOutputStatement

        public java.lang.String getOutputStatement​(java.lang.String toDisplay)
        Specified by:
        getOutputStatement in interface javax.script.ScriptEngineFactory
      • getParameter

        public java.lang.Object getParameter​(java.lang.String key)
        Specified by:
        getParameter in interface javax.script.ScriptEngineFactory
      • getProgram

        public java.lang.String getProgram​(java.lang.String... statements)
        Specified by:
        getProgram in interface javax.script.ScriptEngineFactory
      • getScriptEngine

        public javax.script.ScriptEngine getScriptEngine()
        Specified by:
        getScriptEngine in interface javax.script.ScriptEngineFactory
      • getScriptEngine

        public javax.script.ScriptEngine getScriptEngine​(java.lang.ClassLoader appLoader)
        Create a new Script engine initialized with the given class loader.
        Parameters:
        appLoader - class loader to be used as script "app" class loader.
        Returns:
        newly created script engine.
        Throws:
        java.lang.SecurityException - if the security manager's checkPermission denies RuntimePermission("nashorn.setConfig")
      • getScriptEngine

        public javax.script.ScriptEngine getScriptEngine​(ClassFilter classFilter)
        Create a new Script engine initialized with the given class filter.
        Parameters:
        classFilter - class filter to use.
        Returns:
        newly created script engine.
        Throws:
        java.lang.NullPointerException - if classFilter is null
        java.lang.SecurityException - if the security manager's checkPermission denies RuntimePermission("nashorn.setConfig")
      • getScriptEngine

        public javax.script.ScriptEngine getScriptEngine​(java.lang.String... args)
        Create a new Script engine initialized with the given arguments.
        Parameters:
        args - arguments array passed to script engine.
        Returns:
        newly created script engine.
        Throws:
        java.lang.NullPointerException - if args is null
        java.lang.SecurityException - if the security manager's checkPermission denies RuntimePermission("nashorn.setConfig")
      • getScriptEngine

        public javax.script.ScriptEngine getScriptEngine​(java.lang.String[] args,
                                                         java.lang.ClassLoader appLoader)
        Create a new Script engine initialized with the given arguments and the given class loader.
        Parameters:
        args - arguments array passed to script engine.
        appLoader - class loader to be used as script "app" class loader.
        Returns:
        newly created script engine.
        Throws:
        java.lang.NullPointerException - if args is null
        java.lang.SecurityException - if the security manager's checkPermission denies RuntimePermission("nashorn.setConfig")
      • getScriptEngine

        public javax.script.ScriptEngine getScriptEngine​(java.lang.String[] args,
                                                         java.lang.ClassLoader appLoader,
                                                         ClassFilter classFilter)
        Create a new Script engine initialized with the given arguments, class loader and class filter.
        Parameters:
        args - arguments array passed to script engine.
        appLoader - class loader to be used as script "app" class loader.
        classFilter - class filter to use.
        Returns:
        newly created script engine.
        Throws:
        java.lang.NullPointerException - if args or classFilter is null
        java.lang.SecurityException - if the security manager's checkPermission denies RuntimePermission("nashorn.setConfig")