.. java:import:: java.time Duration .. java:import:: java.util Map .. java:import:: java.util Optional .. java:import:: jdk.internal ValueBased .. java:import:: org.openqa.selenium WebElement .. java:import:: ru.bitec.gs.automation.client BrowserContext .. java:import:: ru.bitec.gs.automation.client.ui.layout Layout Selection ========= .. java:package:: ru.bitec.gs.automation.client.ui :noindex: .. java:type:: public class Selection extends AbstractUiElement .. versionadded:: 1.1.0 Добавлен методы :java:ref:`locate(Map) )>` и :java:ref:`locate(Map, LocateOption[]) , LocateOption[])>`, добавлены методы ожидания выборки, имена и сигнатуры методов приведены к :ref:`соглашению по именам`. Выборка. Не имеет графического представления на экране, но обладает элементом в дереве html-элементов браузера. Constructors ------------ Selection ^^^^^^^^^ .. java:constructor:: protected Selection(BrowserContext browserContext, WebElement webElement) :outertype: Selection Selection ^^^^^^^^^ .. java:constructor:: protected Selection(AbstractUiElement parent, WebElement webElement) :outertype: Selection Methods ------- executeJexl ^^^^^^^^^^^ .. java:method:: public Object executeJexl(String jexlScript) throws AutomationException :outertype: Selection .. versionadded:: 1.1.0 Добавлено ожидание появления признака окончания выполнения jexl-скрипта по состоянию маркера :java:ref:`DataAttributes.DATA_SELECTION_JEXL_INPROGRESS `. Отправляет Jexl-скрипт на сервер, где он выполняется в контексте текущей выборки. Для возможности выполнения скриптов, в конфигурации сервера должна быть активирована опция. `````` :param jexlScript: Текст Jexl-скрипта. :throws AutomationException: если возникли проблемы при вызове операции на выполнение. :return: Результат выполнения Jexl-скрипта, возвращённый из скрипта выражением `return "результат";`. executeOperation ^^^^^^^^^^^^^^^^ .. java:method:: public Object executeOperation(String name) throws AutomationException :outertype: Selection Отправляет на сервер команду выполнения операции по имени. Для возможности выполнения скриптов, в конфигурации сервера должна быть активирована опция `````` :param name: Имя операции. :throws AutomationException: если возникли проблемы при вызове операции на выполнение. :return: Строка с результатом выполнения операции, если операция возвращает результат. find ^^^^ .. java:method:: public static Optional find(AbstractUiElement parent, String name) :outertype: Selection .. versionadded:: 1.1.0 Сигнатура приведена к :ref:`соглашению по именам` (ранее возвращалась выборка, теперь возвращается опциональная выборка). Метод ищет первый html-элемент, соответствующий выборке с именем `name` и отображением "Default", во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя выборки :return: Опциональная выборка find ^^^^ .. java:method:: public static Optional find(AbstractUiElement parent, String name, String representation) :outertype: Selection .. versionadded:: 1.1.0 Сигнатура приведена к :ref:`соглашению по именам` (ранее возвращалась выборка, теперь возвращается опциональная выборка). Метод ищет первый html-элемент, соответствующий выборке с именем `name` и отображением `representation`, во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя выборки :param representation: отображение :return: Опциональная выборка find ^^^^ .. java:method:: public static Optional find(AbstractUiElement parent, Name name) :outertype: Selection .. versionadded:: 1.1.0 Сигнатура приведена к :ref:`соглашению по именам` (ранее возвращалась выборка, теперь возвращается опциональная выборка). Метод ищет первый html-элемент, соответствующий выборке с именем и отображением указанным в `name`, во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя и отображение выборки :return: Опциональная выборка findAll ^^^^^^^ .. java:method:: public static Selection[] findAll(BrowserContext browserContext) :outertype: Selection Метод ищет на странице все html-элементы, соответствующие выборкам. :param browserContext: Контекст браузера :return: Массив выборок findAll ^^^^^^^ .. java:method:: public static Selection[] findAll(AbstractUiElement parent) :outertype: Selection Метод ищет все html-элементы, соответствующие выборкам, во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :return: массив выборок findBySimpleName ^^^^^^^^^^^^^^^^ .. java:method:: static Optional findBySimpleName(AbstractUiElement parent, String simpleName, String representation) :outertype: Selection .. versionadded:: 1.1.0 Сигнатура приведена к :ref:`соглашению по именам` (ранее возвращалась выборка, теперь возвращается опциональная выборка). Метод ищет первый html-элемент, соответствующий выборке с именем завершающимся `simpleName` и отображением `representation`, во множестве дочерних html-элементов элемента `parent`. Метод относится к системным и не вынесен в public намеренно. Не полные имена могут быть только у главных выборок приложений. :param parent: родительский html-элемент :param simpleName: Краткое имя выборки :param representation: отображение :return: Опциональная выборка findBySimpleName ^^^^^^^^^^^^^^^^ .. java:method:: static Optional findBySimpleName(AbstractUiElement parent, Name name) :outertype: Selection .. versionadded:: 1.1.0 Сигнатура приведена к :ref:`соглашению по именам` (ранее возвращалась выборка, теперь возвращается опциональная выборка). Метод ищет первый html-элемент, соответствующий выборке с именем, завершающимся :java:ref:`Name.getSimpleName() `, и отображением :java:ref:`Name.getRepresentation() `, во множестве дочерних html-элементов элемента `parent`. Метод относится к системным и не вынесен в public намеренно. Не полные имена могут быть только у главных выборок приложений. :param parent: родительский html-элемент :param name: Краткое имя и отображение выборки :return: Опциональная выборка get ^^^ .. java:method:: public static Selection get(AbstractUiElement parent, String name) throws ElementNotFoundException :outertype: Selection .. versionadded:: 1.1.0 Метод возвращает первый html-элемент, соответствующий выборке с именем `name` и отображением "Default", во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя выборки :throws ElementNotFoundException: если элемент не найден на dom-модели :return: Выборка get ^^^ .. java:method:: public static Selection get(AbstractUiElement parent, String name, String representation) throws ElementNotFoundException :outertype: Selection .. versionadded:: 1.1.0 Метод возвращает первый html-элемент, соответствующий выборке с именем `name` и отображением `representation`, во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя выборки :param representation: отображение :throws ElementNotFoundException: если элемент не найден на dom-модели :return: Выборка get ^^^ .. java:method:: public static Selection get(AbstractUiElement parent, Name name) throws ElementNotFoundException :outertype: Selection .. versionadded:: 1.1.0 Метод возвращает первый html-элемент, соответствующий выборке с именем и отображением указанным в `name`, во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя и отображение выборки :throws ElementNotFoundException: если элемент не найден на dom-модели :return: Выборка getBySimpleName ^^^^^^^^^^^^^^^ .. java:method:: static Selection getBySimpleName(AbstractUiElement parent, String simpleName, String representation) throws ElementNotFoundException :outertype: Selection .. versionadded:: 1.1.0 Метод возвращает первый html-элемент, соответствующий выборке с именем завершающимся `simpleName` и отображением `representation`, во множестве дочерних html-элементов элемента `parent`. Метод относится к системным и не вынесен в public намеренно. Не полные имена могут быть только у главных выборок приложений. :param parent: родительский html-элемент :param simpleName: Краткое имя выборки :param representation: отображение :throws ElementNotFoundException: если элемент не найден на dom-модели :return: выборка getBySimpleName ^^^^^^^^^^^^^^^ .. java:method:: static Selection getBySimpleName(AbstractUiElement parent, Name name) throws ElementNotFoundException :outertype: Selection .. versionadded:: 1.1.0 Метод возвращает первый html-элемент, соответствующий выборке с именем, завершающимся :java:ref:`Name.getSimpleName() `, и отображением :java:ref:`Name.getRepresentation() `, во множестве дочерних html-элементов элемента `parent`. Метод относится к системным и не вынесен в public намеренно. Не полные имена могут быть только у главных выборок приложений. :param parent: родительский html-элемент :param name: Краткое имя и отображение выборки :throws ElementNotFoundException: если элемент не найден на dom-модели :return: Выборка getId ^^^^^ .. java:method:: public String getId() :outertype: Selection Возвращает идентификатор выборки в виде строкового представления. :return: Идентификатор getJexlSelectionLocateScript ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: protected static String getJexlSelectionLocateScript(Map propertyMap, Selection.LocateOption[] locateOptions) :outertype: Selection Конструирование простого запроса вида "selection.locate" :param propertyMap: простая карта параметров. :param locateOptions: массив опций запроса :return: строка, которую можно передать в метод executeJexl getName ^^^^^^^ .. java:method:: public String getName() :outertype: Selection Возвращает полное имя. :return: полное имя. getQualifiedName ^^^^^^^^^^^^^^^^ .. java:method:: public Name getQualifiedName() :outertype: Selection Возвращает квалифицированное имя формы :java:ref:`Name `. :return: Квалифицированное имя. getRepresentation ^^^^^^^^^^^^^^^^^ .. java:method:: public String getRepresentation() :outertype: Selection Возвращает отображение. :return: отображение. layout ^^^^^^ .. java:method:: public Layout layout() :outertype: Selection locate ^^^^^^ .. java:method:: public Object locate(Map propertyMap) :outertype: Selection .. versionadded:: 1.1.0 Метод, упрощающий написание вызова вида ``selection.executeJexl("selection.locate(asScala({'id': 353L}), asScala([...]))");``. Собственно, именно такой вызов этот метод и делает. :param propertyMap: простая карта параметров. :return: результат locate ^^^^^^ .. java:method:: public Object locate(Map propertyMap, Selection.LocateOption[] locateOptions) :outertype: Selection .. versionadded:: 1.1.0 Метод, упрощающий написание вызова вида ``selection.executeJexl("selection.locate(asScala({'id': 353L}), asScala([new ru.bitec.app.gtk.gl.selection.locateoption.Up(), ...]))");``. Собственно, именно такой вызов этот метод и делает, с учетом переданных :java:ref:`Selection.LocateOption `[]. :param propertyMap: простая карта параметров. :param locateOptions: массив опций для selection.locate :return: результат locateOptionArrayToString ^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: protected static String locateOptionArrayToString(Selection.LocateOption[] locateOptions) :outertype: Selection Конструирование строки опций для запроса вида "selection.locate" :param locateOptions: массив опций :return: строка toString ^^^^^^^^ .. java:method:: @Override public String toString() :outertype: Selection wait ^^^^ .. java:method:: public static Selection wait(AbstractUiElement parent, String name) :outertype: Selection .. versionadded:: 1.1.0 Метод ожидает появления на dom-модели первого html-элемента, соответствующего выборке с именем `name` и отображением "Default", во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя выборки :return: Выборка wait ^^^^ .. java:method:: public static Selection wait(AbstractUiElement parent, String name, String representation) :outertype: Selection .. versionadded:: 1.1.0 Метод ожидает появления на dom-модели первого html-элемента, соответствующего выборке с именем `name` и отображением `representation`, во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя выборки :param representation: отображение :return: Выборка wait ^^^^ .. java:method:: static Selection wait(AbstractUiElement parent, Name name) :outertype: Selection .. versionadded:: 1.1.0 Метод ожидает появления на dom-модели первого html-элемента, соответствующего выборке с именем и отображением указанным в `name`, во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя и отображение выборки :return: Выборка wait ^^^^ .. java:method:: public static Selection wait(AbstractUiElement parent, Name name, Duration duration) :outertype: Selection .. versionadded:: 1.1.0 Метод ожидает появления на dom-модели первого html-элемента, соответствующего выборке с именем и отображением указанным в `name`, во множестве дочерних html-элементов элемента `parent`. :param parent: родительский html-элемент :param name: имя и отображение выборки :param duration: длительность ожидания :return: Выборка waitBySimpleName ^^^^^^^^^^^^^^^^ .. java:method:: static Selection waitBySimpleName(AbstractUiElement parent, Name name) :outertype: Selection .. versionadded:: 1.1.0 Метод ожидает появления на dom-модели первого html-элемента, соответствующего выборке с именем, завершающимся :java:ref:`Name.getSimpleName() `, и отображением :java:ref:`Name.getRepresentation() `, во множестве дочерних html-элементов элемента `parent`. Метод относится к системным и не вынесен в public намеренно. Не полные имена могут быть только у главных выборок приложений. :param parent: родительский html-элемент :param name: Краткое имя и отображение выборки :return: Выборка waitBySimpleName ^^^^^^^^^^^^^^^^ .. java:method:: static Selection waitBySimpleName(AbstractUiElement parent, Name name, Duration duration) :outertype: Selection .. versionadded:: 1.1.0 Метод ожидает появления на dom-модели первого html-элемента, соответствующего выборке с именем, завершающимся :java:ref:`Name.getSimpleName() `, и отображением :java:ref:`Name.getRepresentation() `, во множестве дочерних html-элементов элемента `parent`. Метод относится к системным и не вынесен в public намеренно. Не полные имена могут быть только у главных выборок приложений. :param parent: родительский html-элемент :param name: Краткое имя и отображение выборки :param duration: Длительность ожидания :return: Выборка