Класс ScriptEngineManager

public class ScriptEngineManager
extends Object

Класс ScriptEngineManager реализует механизм обнаружения и создания экземпляров классов ScriptEngine и также поддерживает коллекцию пар ключ/значение, хранящих состояние, общее для всех движков, созданных менеджером. Этот класс использует механизм поставщиков услуг, описанный в классе ServiceLoader, для перечисления всех реализаций ScriptEngineFactory.

Класс ScriptEngineManager предоставляет метод для возвращения списка всех этих фабрик, а также служебные методы, которые ищут фабрики на основе имени языка, расширения файла и типа MIME.

Коллекция пар ключ/значение, известная как «Глобальная область», поддерживаемая менеджером, доступна для всех экземпляров ScriptEngine , созданных ScriptEngineManager. Значения в Bindings обычно доступны во всех скриптах.

Since:
1.6

Конструкторы

КонструкторОписание
ScriptEngineManager()

Вызов этого конструктора эквивалентен вызову ScriptEngineManager(Thread.currentThread().getContextClassLoader()).

ScriptEngineManager​(ClassLoader loader)

Этот конструктор загружает реализации ScriptEngineFactory , видимые для данного ClassLoader, используя механизм поставщиков услуг.

Если loader является null, загружаются фабрики движков скриптов, входящие в состав платформы.

Методы

Модификатор и типМетодОписание
Objectget​(String key)

Получает значение для указанного ключа в Глобальной области

BindingsgetBindings()

getBindings возвращает значение поля globalScope.

ScriptEnginegetEngineByExtension​(String extension)

Ищет и создаёт ScriptEngine для заданного расширения.

ScriptEnginegetEngineByMimeType​(String mimeType)

Ищет и создаёт ScriptEngine для заданного типа MIME.

ScriptEnginegetEngineByName​(String shortName)

Ищет и создаёт ScriptEngine для данного имени.

List<ScriptEngineFactory>getEngineFactories()

Возвращает список, элементы которого являются экземплярами всех классов ScriptEngineFactory, найденных механизмом обнаружения.

voidput​(String key, Object value)

Устанавливает указанную пару ключ/значение в Глобальной области.

voidregisterEngineExtension​(String extension, ScriptEngineFactory factory)

Регистрирует ScriptEngineFactory для обработки расширения.

voidregisterEngineMimeType​(String type, ScriptEngineFactory factory)

Регистрирует ScriptEngineFactory для обработки типа MIME.

voidregisterEngineName​(String name, ScriptEngineFactory factory)

Регистрирует ScriptEngineFactory для обработки имени языка.

voidsetBindings​(Bindings bindings)

setBindings сохраняет указанный Bindings в поле globalScope.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

ScriptEngineManager

public ScriptEngineManager()

Вызов этого конструктора эквивалентен вызову ScriptEngineManager(Thread.currentThread().getContextClassLoader()).

См. также:
Thread.getContextClassLoader()

ScriptEngineManager

public ScriptEngineManager(ClassLoader loader)

Этот конструктор загружает реализации ScriptEngineFactory , видимые для данного ClassLoader , используя механизм поставщиков услуг.

Если loader является null, загружаются фабрики движков скриптов, входящие в состав платформы.

Параметры:
loader - ClassLoader для обнаружения фабрик движков скриптов.

Методы

setBindings

public void setBindings(Bindings bindings)

setBindings сохраняет указанный Bindings в поле globalScope. ScriptEngineManager устанавливает этот Bindings в качестве глобальных связываний для объектов ScriptEngine , созданных им.

Параметры:
bindings - Указанный Bindings
Исключения:
IllegalArgumentException - если bindings равно null.

getBindings

public Bindings getBindings()

getBindings возвращает значение поля globalScope. ScriptEngineManager устанавливает это Bindings в качестве глобальных связываний для объектов ScriptEngine , созданных им.

Возвращает:
Поле globalScope.

put

public void put(String key,
                Object value)

Устанавливает указанную пару ключ/значение в Глобальной области.

Параметры:
key - Ключ для установки
value - Значение для установки.
Исключения:
NullPointerException - если ключ равен null.
IllegalArgumentException - если ключ является пустой строкой.

get

public Object get(String key)

Получает значение для указанного ключа в Глобальной области

Параметры:
key - Ключ, значение которого требуется вернуть.
Возвращает:
Значение для указанного ключа.

getEngineByName

public ScriptEngine getEngineByName(String shortName)

Ищет и создаёт ScriptEngine для данного имени. Алгоритм сначала ищет ScriptEngineFactory , зарегистрированный как обработчик для указанного имени с помощью метода registerEngineName.

Если такой не найден, он ищет среди набора экземпляров ScriptEngineFactory , сохранённых конструктором, экземпляр с заданным именем. Если ScriptEngineFactory найден любым из способов, он используется для создания экземпляра ScriptEngine.

Параметры:
shortName - Короткое имя реализации ScriptEngine , возвращаемое методом getNames его ScriptEngineFactory.
Возвращает:
Созданный ScriptEngine фабрикой, найденной в поиске. Возвращает null, если такая фабрика не найдена. ScriptEngineManager устанавливает собственные globalScope Bindings в качестве GLOBAL_SCOPE Bindings вновь созданного ScriptEngine.
Исключения:
NullPointerException - если shortName равно null.

getEngineByExtension

public ScriptEngine getEngineByExtension(String extension)

Ищет и создаёт ScriptEngine для заданного расширения. Используется алгоритм getEngineByName, за исключением того, что поиск начинается с поиска ScriptEngineFactory, зарегистрированного для обработки данного расширения с использованием registerEngineExtension.

Параметры:
extension - Заданное расширение
Возвращает:
Движок для обработки скриптов с этим расширением. Возвращает null, если не найдено.
Исключения:
NullPointerException - если extension равно null.

getEngineByMimeType

public ScriptEngine getEngineByMimeType(String mimeType)

Ищет и создаёт ScriptEngine для заданного типа MIME. Используется алгоритм getEngineByName, за исключением того, что поиск начинается с поиска ScriptEngineFactory, зарегистрированного для обработки данного типа MIME с использованием registerEngineMimeType.

Параметры:
mimeType - Заданный тип MIME
Возвращает:
Движок для обработки скриптов с этим типом MIME. Возвращает null, если не найдено.
Исключения:
NullPointerException - если mimeType равно null.

getEngineFactories

public List<ScriptEngineFactory> getEngineFactories()

Возвращает список, элементы которого являются экземплярами всех классов ScriptEngineFactory , найденных механизмом обнаружения.

Возвращает:
Список всех обнаруженных ScriptEngineFactory.

registerEngineName

public void registerEngineName(String name,
                               ScriptEngineFactory factory)

Регистрирует ScriptEngineFactory для обработки имени языка. Заменяет любое подобное ассоциацию, найденное с помощью механизма обнаружения.

Параметры:
name - Имя, которое должно быть ассоциировано с ScriptEngineFactory.
factory - Класс для ассоциации с заданным именем.
Исключения:
NullPointerException - если какой-либо из параметров равен null.

registerEngineMimeType

public void registerEngineMimeType(String type,
                                   ScriptEngineFactory factory)

Регистрирует ScriptEngineFactory для обработки типа MIME. Заменяет любое подобное ассоциацию, найденное с помощью механизма обнаружения.

Параметры:
type - Тип MIME, который должен быть ассоциирован с ScriptEngineFactory.
factory - Класс для ассоциации с заданным типом MIME.
Исключения:
NullPointerException - если какой-либо из параметров равен null.

registerEngineExtension

public void registerEngineExtension(String extension,
                                    ScriptEngineFactory factory)

Регистрирует ScriptEngineFactory для обработки расширения. Заменяет любое подобное ассоциацию, найденное с помощью механизма обнаружения.

Параметры:
extension - Тип расширения, который должен быть ассоциирован с ScriptEngineFactory.
factory - Класс для ассоциации с заданным расширением.
Исключения:
NullPointerException - если какой-либо из параметров равен null.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.scripting/javax/script/ScriptEngineManager.html

Spec-Zone .ru
спецификации, руководства, описания, API