Класс TypeInfoProvider

public abstract class TypeInfoProvider
extends Object

Этот класс предоставляет доступ к информации о типе, определенной ValidatorHandler.

Некоторые языки схем, такие как W3C XML Schema, рекомендуют валидатору сообщать "тип", который он присваивает каждому атрибуту/элементу. Приложения, которые хотят получить доступ к этой информации о типе, могут вызвать методы, определенные в этом "интерфейсе", для доступа к такой информации о типе.

Реализация этого "интерфейса" может быть получена с помощью метода ValidatorHandler.getTypeInfoProvider().

Since:
1.5
См. также:
TypeInfo

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

Модификатор Конструктор Описание
protected TypeInfoProvider()

Конструктор для производного класса.

Методы

Модификатор и тип Метод Описание
abstract TypeInfo getAttributeTypeInfo​(int index)

Возвращает неизменяемый объект TypeInfo для указанного атрибута текущего элемента.

abstract TypeInfo getElementTypeInfo()

Возвращает неизменяемый объект TypeInfo для текущего элемента.

abstract boolean isIdAttribute​(int index)

Возвращает true, если указанный атрибут определен как ID.

abstract boolean isSpecified​(int index)

Возвращает false, если атрибут был добавлен валидатором.

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

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

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

TypeInfoProvider

protected TypeInfoProvider()

Конструктор для производного класса.

Конструктор ничего не делает.

Методы

getElementTypeInfo

public abstract TypeInfo getElementTypeInfo()

Возвращает неизменяемый объект TypeInfo для текущего элемента.

Метод может вызываться только событием startElement или endElement обработчика ContentHandler, который приложение устанавливает для ValidatorHandler.

При выполнении валидации W3C XML Schema, в случае, если у элемента есть тип объединения, TypeInfo, возвращаемый вызовом getElementTypeInfo() из события startElement, будет типом объединения. TypeInfo, возвращаемый вызовом из события endElement, будет фактическим типом члена, используемым для валидации элемента.

Возвращает:
Неизменяемый объект TypeInfo, представляющий тип текущего элемента. Обратите внимание, что вызывающий может сохранять ссылки на полученный TypeInfo дольше, чем область действия обратного вызова. В противном случае этот метод возвращает null, если валидатор по какой-либо причине не может определить тип текущего элемента (например, если валидатор восстанавливается после предыдущей ошибки.)
Бросает:
IllegalStateException - Если этот метод вызван из других методов ContentHandler.

getAttributeTypeInfo

public abstract TypeInfo getAttributeTypeInfo(int index)

Возвращает неизменяемый объект TypeInfo для указанного атрибута текущего элемента.

Метод может вызываться только событием startElement обработчика ContentHandler, который приложение устанавливает для ValidatorHandler.

Параметры:
index - Индекс атрибута. Тот же индекс, что и для объекта Attributes, переданного в обратный вызов startElement.
Возвращает:
Неизменяемый объект TypeInfo, представляющий тип указанного атрибута. Обратите внимание, что вызывающий может сохранять ссылки на полученный TypeInfo дольше, чем область действия обратного вызова. В противном случае этот метод возвращает null, если валидатор не может определить тип.
Бросает:
IndexOutOfBoundsException - Если индекс некорректен.
IllegalStateException - Если этот метод вызван из других методов ContentHandler.

isIdAttribute

public abstract boolean isIdAttribute(int index)

Возвращает true, если указанный атрибут определен как ID.

Точно как атрибут "определяется как ID" зависит от языка схемы. В случае W3C XML Schema это означает, что фактический тип атрибута - это встроенный тип ID или его производный тип.

Класс DocumentBuilder использует эту информацию для правильной реализации Attr.isId().

Метод может вызываться только событием startElement обработчика ContentHandler, который приложение устанавливает для ValidatorHandler.

Параметры:
index - Индекс атрибута. Тот же индекс, что и для объекта Attributes, переданного в обратный вызов startElement.
Возвращает:
true, если тип указанного атрибута - ID.
Бросает:
IndexOutOfBoundsException - Если индекс некорректен.
IllegalStateException - Если этот метод вызван из других методов ContentHandler.

isSpecified

public abstract boolean isSpecified(int index)

Возвращает false, если атрибут был добавлен валидатором.

Этот метод предоставляет информацию, необходимую классу DocumentBuilder для определения того, что дерево DOM должно вернуть методом Attr.getSpecified().

Метод может вызываться только событием startElement обработчика ContentHandler, который приложение устанавливает для ValidatorHandler.

Общие рекомендации для валидаторов - возвращать true, если атрибут изначально присутствовал в потоке, и false, если он был добавлен валидатором.

Параметры:
index - Индекс атрибута. Тот же индекс, что и для объекта Attributes, переданного в обратный вызов startElement.
Возвращает:
true если атрибут был присутствовал до обработки входных данных валидатором. false если атрибут был добавлен валидатором.
Бросает:
IndexOutOfBoundsException - Если индекс некорректен.
IllegalStateException - Если этот метод вызван из других методов ContentHandler.

© 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.xml/javax/xml/validation/TypeInfoProvider.html

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