Интерфейс ScriptContext
- Все известные реализующие классы:
SimpleScriptContext
public interface ScriptContext
Интерфейс, реализующие классы которого используются для подключения Script Engines к объектам, таким как scoped Bindings, в приложениях-хостах. Каждый scope представляет собой набор именованных атрибутов, значения которых можно устанавливать и получать с помощью методов ScriptContext. ScriptContexts также предоставляют Readers и Writers, которые могут использоваться ScriptEngines для ввода и вывода.
- С:
- 1.6
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
static int | ENGINE_SCOPE | Атрибуты EngineScope видны в течение жизни одного |
static int | GLOBAL_SCOPE | Атрибуты GlobalScope видны для всех движков, созданных той же ScriptEngineFactory. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
Object | getAttribute(String name) | Получает значение атрибута с заданным именем в области, которая встречается раньше всего в порядке поиска. |
Object | getAttribute(String name,
int scope) | Получает значение атрибута в заданной области. |
int | getAttributesScope(String name) | Получает область с наименьшим уровнем, в которой определён атрибут. |
Bindings | getBindings(int scope) | Получает |
Writer | getErrorWriter() | Возвращает |
Reader | getReader() | Возвращает |
List<Integer> | getScopes() | Возвращает неизменяемый |
Writer | getWriter() | Возвращает |
Object | removeAttribute(String name,
int scope) | Удаляет атрибут в заданной области. |
void | setAttribute(String name,
Object value,
int scope) | Устанавливает значение атрибута в заданной области. |
void | setBindings(Bindings bindings,
int scope) | Связывает экземпляр |
void | setErrorWriter(Writer writer) | Устанавливает |
void | setReader(Reader reader) | Устанавливает |
void | setWriter(Writer writer) | Устанавливает |
Поля
ENGINE_SCOPE
static final int ENGINE_SCOPE
Атрибуты EngineScope видны в течение жизни одного ScriptEngine и набор атрибутов поддерживается для каждого движка.
- См. также:
- Значения константных полей
GLOBAL_SCOPE
static final int GLOBAL_SCOPE
Атрибуты GlobalScope видны для всех движков, созданных той же ScriptEngineFactory.
- См. также:
- Значения константных полей
Методы
setBindings
void setBindings(Bindings bindings,
int scope)Связывает экземпляр Bindings с конкретной областью в этом ScriptContext. Вызовы методов getAttribute и setAttribute должны соответствовать методам get и put экземпляра Bindings для указанной области.
- Параметры:
-
bindings-Bindingsдля связи с данной областью -
scope- Область - Исключения:
-
IllegalArgumentException- Если для указанного значения области в ScriptContexts этого типа не определёнBindings. -
NullPointerException- если значение области равноENGINE_SCOPEи указанныйBindingsимеет значение null.
getBindings
Bindings getBindings(int scope)
Получает Bindings , связанный с заданной областью в этом ScriptContext.
- Параметры:
-
scope- Область - Возвращает:
- Связанный
Bindings. Возвращаетnull, если он не был установлен. - Исключения:
-
IllegalArgumentException- Если для указанного значения области вScriptContextэтого типа не определёнBindings.
setAttribute
void setAttribute(String name,
Object value,
int scope)Устанавливает значение атрибута в заданной области. Если область равна GLOBAL_SCOPE и для GLOBAL_SCOPE не установлен Bindings, то вызов setAttribute не выполняется.
- Параметры:
-
name- Имя атрибута для установки -
value- Значение атрибута -
scope- Область для установки атрибута - Исключения:
-
IllegalArgumentException- если имя пустое или область некорректна. -
NullPointerException- если имя равно null.
getAttribute
Object getAttribute(String name,
int scope)Получает значение атрибута в заданной области.
- Параметры:
-
name- Имя атрибута для извлечения. -
scope- Область для извлечения атрибута. - Возвращает:
- Значение атрибута. Возвращает
null, если имя не существует в данной области. - Исключения:
-
IllegalArgumentException- если имя пустое или значение области некорректно. -
NullPointerException- если имя равно null.
removeAttribute
Object removeAttribute(String name,
int scope)Удаляет атрибут в заданной области.
- Параметры:
-
name- Имя атрибута для удаления -
scope- Область для удаления атрибута - Возвращает:
- Удаленное значение.
- Исключения:
-
IllegalArgumentException- если имя пустое или область некорректна. -
NullPointerException- если имя равно null.
getAttribute
Object getAttribute(String name)
Получает значение атрибута с заданным именем в области, которая встречается раньше всего в порядке поиска. Порядок определяется числовым значением параметра области (значения области с меньшим числом — раньше).
- Параметры:
-
name- Имя атрибута для извлечения. - Возвращает:
- Значение атрибута в области с наименьшим уровнем, в которой определен атрибут с заданным именем. Возвращает null, если атрибут с данным именем не существует ни в одной области.
- Исключения:
-
NullPointerException- если имя равно null. -
IllegalArgumentException- если имя пустое.
getAttributesScope
int getAttributesScope(String name)
Получает наименьшую область, в которой определен атрибут.
- Параметры:
-
name- Имя атрибута. - Возвращает:
- Наименьшая область. Возвращает -1, если атрибут с заданным именем не определен ни в одной области.
- Исключения:
-
NullPointerException- если имя равно null. -
IllegalArgumentException- если имя пустое.
getWriter
Writer getWriter()
Возвращает Writer для вывода данных скриптами.
- Возвращает:
Writer.
getErrorWriter
Writer getErrorWriter()
Возвращает Writer для вывода сообщений об ошибках.
- Возвращает:
Writer
setWriter
void setWriter(Writer writer)
Устанавливает Writer для вывода данных скриптами.
- Параметры:
-
writer- НовыйWriter.
setErrorWriter
void setErrorWriter(Writer writer)
Устанавливает Writer для вывода сообщений об ошибках.
- Параметры:
-
writer-Writer.
getReader
Reader getReader()
Возвращает Reader для чтения входных данных скриптом.
- Возвращает:
Reader.
setReader
void setReader(Reader reader)
Устанавливает Reader для чтения входных данных скриптами.
- Параметры:
-
reader- НовыйReader.
getScopes
List<Integer> getScopes()
Возвращает неизменяемый List всех допустимых значений области в ScriptContext.
- Возвращает:
- Список значений области
© 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/ScriptContext.html