Интерфейс IIOMetadataFormat
- Все известные реализующие классы:
IIOMetadataFormatImpl
public interface IIOMetadataFormat
Объект, описывающий структуру документов метаданных, возвращаемых из IIOMetadata.getAsTree и передаваемых в IIOMetadata.setFromTree и mergeTree. Структуры документов описываются набором ограничений на тип и количество дочерних элементов, которые могут принадлежать данному типу родительского элемента, имена, типы и значения атрибутов, которые могут принадлежать элементу, и тип и значения Object ссылок, которые могут храниться в узле.
Примечание: классы, реализующие этот интерфейс, должны содержать метод, объявленный как public static getInstance() , который возвращает экземпляр класса. Обычно реализация создает только один экземпляр и кэширует его для последующих вызовов getInstance.
В случае, если плагин предоставляется как часть именованного модуля, этот модуль должен экспортировать пакет, содержащий реализующий класс, в модуль
java.desktopчерез квалифицированный экспорт. Неквалифицированный экспорт не рекомендуется, если он не нужен также по какой-либо другой причине. Отсутствие экспорта пакета приведет к ошибке доступа во время выполнения.
Структуры, которые может описывать этот класс, являются подмножеством структур, которые можно выразить с помощью определений типов документов XML (DTD), с добавлением некоторых основных сведений о типах данных атрибутов и возможностью хранить Object ссылку внутри узла. В будущем для представления этих структур и многих других можно использовать схемы XML.
Различия между структурами, описанными IIOMetadataFormat, и DTD заключаются в следующем:
- Элементы не могут содержать текст или смешивать текст с вложенными тегами.
- Дочерние элементы элемента должны соответствовать одному из нескольких простых шаблонов, описанных в документации для
CHILD_*констант; - Внутреннее представление элементов может содержать ссылку на
Object. Нет возможности текстового представления таких объектов.
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static int | CHILD_POLICY_ALL | Константа, возвращаемая |
static int | CHILD_POLICY_CHOICE | Константа, возвращаемая |
static int | CHILD_POLICY_EMPTY | Константа, возвращаемая |
static int | CHILD_POLICY_MAX | Наибольшая допустимая |
static int | CHILD_POLICY_REPEAT | Константа, возвращаемая |
static int | CHILD_POLICY_SEQUENCE | Константа, возвращаемая |
static int | CHILD_POLICY_SOME | Константа, возвращаемая |
static int | DATATYPE_BOOLEAN | Константа, возвращаемая |
static int | DATATYPE_DOUBLE | Константа, возвращаемая |
static int | DATATYPE_FLOAT | Константа, возвращаемая |
static int | DATATYPE_INTEGER | Константа, возвращаемая |
static int | DATATYPE_STRING | Константа, возвращаемая |
static int | VALUE_ARBITRARY | Константа, возвращаемая |
static int | VALUE_ENUMERATION | Константа, возвращаемая |
static int | VALUE_LIST | Константа, возвращаемая |
static int | VALUE_NONE | Константа, возвращаемая |
static int | VALUE_RANGE | Константа, возвращаемая |
static int | VALUE_RANGE_MAX_INCLUSIVE | Константа, возвращаемая |
static int | VALUE_RANGE_MAX_INCLUSIVE_MASK | Значение, которое можно побитово объединять с |
static int | VALUE_RANGE_MIN_INCLUSIVE | Константа, возвращаемая |
static int | VALUE_RANGE_MIN_INCLUSIVE_MASK | Значение, которое можно побитово объединять с |
static int | VALUE_RANGE_MIN_MAX_INCLUSIVE | Константа, возвращаемая |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean | canNodeAppear(String elementName,
ImageTypeSpecifier imageType) | Возвращает |
int | getAttributeDataType(String elementName,
String attrName) | Возвращает одну из констант, начинающихся с |
String | getAttributeDefaultValue(String elementName,
String attrName) | Возвращает значение по умолчанию указанного атрибута, если он не указан явно внутри указанного элемента, как |
String | getAttributeDescription(String elementName,
String attrName,
Locale locale) | Возвращает |
String[] | getAttributeEnumerations(String elementName,
String attrName) | Возвращает массив |
int | getAttributeListMaxLength(String elementName,
String attrName) | Возвращает максимальное количество элементов списка, которые могут быть использованы для определения этого атрибута. |
int | getAttributeListMinLength(String elementName,
String attrName) | Возвращает минимальное количество элементов списка, которые могут быть использованы для определения этого атрибута. |
String | getAttributeMaxValue(String elementName,
String attrName) | Возвращает максимальное допустимое значение для атрибута. |
String | getAttributeMinValue(String elementName,
String attrName) | Возвращает минимальное допустимое значение для атрибута. |
String[] | getAttributeNames(String elementName) | Возвращает массив |
int | getAttributeValueType(String elementName,
String attrName) | Возвращает одну из констант, начинающихся с |
String[] | getChildNames(String elementName) | Возвращает массив |
int | getChildPolicy(String elementName) | Возвращает одну из констант, начинающихся с |
String | getElementDescription(String elementName,
Locale locale) | Возвращает |
int | getElementMaxChildren(String elementName) | Возвращает максимальное количество дочерних элементов указанного элемента с политикой дочерних элементов |
int | getElementMinChildren(String elementName) | Возвращает минимальное количество дочерних элементов указанного элемента с политикой дочерних элементов |
int | getObjectArrayMaxLength(String elementName) | Возвращает максимальное количество элементов массива, которые могут быть использованы для определения ссылки |
int | getObjectArrayMinLength(String elementName) | Возвращает минимальное количество элементов массива, которые могут быть использованы для определения ссылки |
Class<?> | getObjectClass(String elementName) | Возвращает тип |
Object | getObjectDefaultValue(String elementName) | Возвращает |
Object[] | getObjectEnumerations(String elementName) | Возвращает массив |
Comparable<?> | getObjectMaxValue(String elementName) | Возвращает максимальное допустимое значение для ссылки |
Comparable<?> | getObjectMinValue(String elementName) | Возвращает минимальное допустимое значение для ссылки |
int | getObjectValueType(String elementName) | Возвращает одно из перечисленных значений, начинающихся с |
String | getRootName() | Возвращает имя корневого элемента формата. |
boolean | isAttributeRequired(String elementName,
String attrName) | Возвращает |
Поля
CHILD_POLICY_EMPTY
static final int CHILD_POLICY_EMPTY
Постоянная, возвращаемая getChildPolicy, для указания того, что элемент не может иметь потомков. Другими словами, он должен быть листом.
- См. также:
- Значения постоянных полей
CHILD_POLICY_ALL
static final int CHILD_POLICY_ALL
Постоянная, возвращаемая getChildPolicy, для указания того, что элемент должен иметь по одному экземпляру каждого из его допустимых дочерних элементов в определенном порядке. В терминах DTD содержимое элемента определяется последовательностью a,b,c,d,....
- См. также:
- Значения постоянных полей
CHILD_POLICY_SOME
static final int CHILD_POLICY_SOME
Постоянная, возвращаемая getChildPolicy, для указания того, что элемент должен иметь ноль или один экземпляр каждого из его допустимых дочерних элементов в определенном порядке. В терминах DTD содержимое элемента определяется последовательностью a?,b?,c?,d?,....
- См. также:
- Значения постоянных полей
CHILD_POLICY_CHOICE
static final int CHILD_POLICY_CHOICE
Постоянная, возвращаемая getChildPolicy, для указания того, что элемент должен иметь ноль или один дочерний элемент, выбранный среди его допустимых дочерних элементов. В терминах DTD содержимое элемента определяется выбором a|b|c|d|....
- См. также:
- Значения постоянных полей
CHILD_POLICY_SEQUENCE
static final int CHILD_POLICY_SEQUENCE
Постоянная, возвращаемая getChildPolicy, для указания того, что элемент должен иметь последовательность экземпляров любых его допустимых дочерних элементов. В терминах DTD содержимое элемента определяется последовательностью (a|b|c|d|...)*.
- См. также:
- Значения постоянных полей
CHILD_POLICY_REPEAT
static final int CHILD_POLICY_REPEAT
Постоянная, возвращаемая getChildPolicy, для указания того, что элемент должен иметь ноль или более экземпляров своего уникального допустимого дочернего элемента. В терминах DTD содержимое элемента определяется выражением с звёздочкой a*.
- См. также:
- Значения постоянных полей
CHILD_POLICY_MAX
static final int CHILD_POLICY_MAX
Наибольшая допустимая CHILD_POLICY_* постоянная, используемая для проверок диапазона.
- См. также:
- Значения постоянных полей
VALUE_NONE
static final int VALUE_NONE
Постоянная, возвращаемая getObjectValueType, для указания отсутствия пользовательского объекта.
- См. также:
- Значения постоянных полей
VALUE_ARBITRARY
static final int VALUE_ARBITRARY
Постоянная, возвращаемая getAttributeValueType и getObjectValueType, для указания того, что атрибут или пользовательский объект могут быть установлены в одно произвольное значение.
- См. также:
- Значения постоянных полей
VALUE_RANGE
static final int VALUE_RANGE
Постоянная, возвращаемая getAttributeValueType и getObjectValueType, для указания того, что атрибут или пользовательский объект могут быть установлены в диапазон значений. Оба крайних значения диапазона исключаются. Рекомендуется использовать включительные диапазоны целых чисел и исключительные только для данных с плавающей точкой.
VALUE_RANGE_MIN_INCLUSIVE_MASK
static final int VALUE_RANGE_MIN_INCLUSIVE_MASK
Значение, которое может быть сложено с помощью операции «или» с VALUE_RANGE для получения VALUE_RANGE_MIN_INCLUSIVE, и с VALUE_RANGE_MAX_INCLUSIVE для получения VALUE_RANGE_MIN_MAX_INCLUSIVE.
Аналогично, значение может быть сложено с помощью операции «и» с getAttributeValueType или getObjectValueType для определения, является ли минимальное значение диапазона включительным.
- См. также:
- Значения постоянных полей
VALUE_RANGE_MAX_INCLUSIVE_MASK
static final int VALUE_RANGE_MAX_INCLUSIVE_MASK
Значение, которое может быть сложено с помощью операции «или» с VALUE_RANGE для получения VALUE_RANGE_MAX_INCLUSIVE, и с VALUE_RANGE_MIN_INCLUSIVE для получения VALUE_RANGE_MIN_MAX_INCLUSIVE.
Аналогично, значение может быть сложено с помощью операции «и» с getAttributeValueType или getObjectValueType для определения, является ли максимальное значение диапазона включительным.
- См. также:
- Значения постоянных полей
VALUE_RANGE_MIN_INCLUSIVE
static final int VALUE_RANGE_MIN_INCLUSIVE
Постоянная, возвращаемая getAttributeValueType и getObjectValueType, для указания того, что атрибут или пользовательский объект могут быть установлены в диапазон значений. Минимальное значение диапазона (но не максимальное) является включительным.
- См. также:
- Значения постоянных полей
VALUE_RANGE_MAX_INCLUSIVE
static final int VALUE_RANGE_MAX_INCLUSIVE
Постоянная, возвращаемая getAttributeValueType и getObjectValueType, для указания того, что атрибут или пользовательский объект могут быть установлены в диапазон значений. Максимальное значение диапазона (но не минимальное) является включительным.
- См. также:
- Значения постоянных полей
VALUE_RANGE_MIN_MAX_INCLUSIVE
static final int VALUE_RANGE_MIN_MAX_INCLUSIVE
Постоянная, возвращаемая getAttributeValueType и getObjectValueType, для указания того, что атрибут или пользовательский объект могут быть установлены в диапазон значений. Оба крайних значения диапазона включены. Рекомендуется использовать включительные диапазоны целых чисел и исключительные только для данных с плавающей точкой.
- См. также:
- Значения постоянных полей
VALUE_ENUMERATION
static final int VALUE_ENUMERATION
Постоянная, возвращаемая getAttributeValueType и getObjectValueType, для указания того, что атрибут или пользовательский объект могут быть установлены в одно из перечисленных значений. В случае атрибутов эти значения являются String; для объектов — Object реализующие заданный класс или интерфейс.
Значения атрибутов типа DATATYPE_BOOLEAN должны быть помечены как перечисления.
- См. также:
- Значения постоянных полей
VALUE_LIST
static final int VALUE_LIST
Постоянная, возвращаемая getAttributeValueType и getObjectValueType, для указания того, что атрибут или пользовательский объект могут быть установлены в список или массив значений. В случае атрибутов список будет состоять из значений, разделенных пробелами, внутри String; для объектов будет использован массив.
- См. также:
- Значения постоянных полей
DATATYPE_STRING
static final int DATATYPE_STRING
Постоянная, возвращаемая getAttributeDataType, указывающая, что значение атрибута — общая строка Юникода.
- См. также:
- Значения постоянных полей
DATATYPE_BOOLEAN
static final int DATATYPE_BOOLEAN
Постоянная, возвращаемая getAttributeDataType, указывающая, что значение атрибута — одно из логических значений 'true' или 'false'. Значения атрибутов типа DATATYPE_BOOLEAN должны быть помечены как перечисления, и допустимые значения должны быть строковые литералы "TRUE" или "FALSE", хотя плагин также может распознавать эквиваленты в нижнем регистре или смешанном регистре.
- См. также:
- Значения постоянных полей
DATATYPE_INTEGER
static final int DATATYPE_INTEGER
Постоянная, возвращаемая getAttributeDataType, указывающая, что значение атрибута — строковое представление целого числа.
- См. также:
- Значения постоянных полей
DATATYPE_FLOAT
static final int DATATYPE_FLOAT
Постоянная, возвращаемая getAttributeDataType, указывающая, что значение атрибута — строковое представление десятичного числа с плавающей точкой.
- См. также:
- Значения постоянных полей
DATATYPE_DOUBLE
static final int DATATYPE_DOUBLE
Постоянная, возвращаемая getAttributeDataType, указывающая, что значение атрибута — строковое представление числа двойной точности с плавающей точкой.
- См. также:
- Значения постоянных полей
Методы
getRootName
String getRootName()
Возвращает имя корневого элемента формата.
- Возвращает:
- a
String.
canNodeAppear
boolean canNodeAppear(String elementName,
ImageTypeSpecifier imageType) Возвращает true если элемент (и поддерево под ним) разрешено отображать в документе метаданных для изображения данного типа, определенного с помощью ImageTypeSpecifier. Например, формат документа метаданных может содержать элемент, который описывает основные цвета изображения, что не допускается при записи изображения в оттенках серого.
- Параметры:
-
elementName- имя запрашиваемого элемента. -
imageType- anImageTypeSpecifierindicating the type of the image that will be associated with the metadata. - Возвращает:
-
trueесли узел имеет значение для изображений данного типа.
getElementMinChildren
int getElementMinChildren(String elementName)
Возвращает минимальное количество дочерних элементов именованного элемента с политикой дочерних элементов CHILD_POLICY_REPEAT. Например, элемент, представляющий информацию о цветовой гамме, может быть обязан иметь как минимум 3 дочерних элемента, по одному для каждого основного цвета.
- Параметры:
-
elementName- имя запрашиваемого элемента. - Возвращает:
- an
int. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format. -
IllegalArgumentException- if the named element does not have a child policy ofCHILD_POLICY_REPEAT.
getElementMaxChildren
int getElementMaxChildren(String elementName)
Возвращает максимальное количество дочерних элементов именованного элемента с политикой дочерних элементов CHILD_POLICY_REPEAT. Например, элемент, представляющий запись в 8-битной цветовой палитре, может повторяться до 256 раз. Значение Integer.MAX_VALUE может использоваться для указания отсутствия верхнего предела.
- Параметры:
-
elementName- имя запрашиваемого элемента. - Возвращает:
- an
int. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format. -
IllegalArgumentException- if the named element does not have a child policy ofCHILD_POLICY_REPEAT.
getElementDescription
String getElementDescription(String elementName,
Locale locale) Возвращает String, содержащий описание именованного элемента, или null. Описание будет локализовано для предоставленного Locale если это возможно.
Если locale is null, будет использоваться текущее значение по умолчанию Locale, возвращаемое методом Locale.getLocale.
- Параметры:
-
elementName- имя элемента. -
locale- theLocalefor which localization will be attempted. - Возвращает:
- описание элемента.
- Исключения:
-
IllegalArgumentException- ifelementNameisnull, or is not a legal element name for this format.
getChildPolicy
int getChildPolicy(String elementName)
Возвращает одну из констант, начинающихся с CHILD_POLICY_, указывающую на допустимый шаблон дочерних элементов для именованного элемента.
- Параметры:
-
elementName- имя запрашиваемого элемента. - Возвращает:
- одну из констант
CHILD_POLICY_*. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format.
getChildNames
String[] getChildNames(String elementName)
Возвращает массив Strings, указывающий на имена элементов, которые разрешено быть дочерними для именованного элемента, в порядке, в котором они должны появляться. Если элемент не может иметь дочерних элементов, возвращается null.
- Параметры:
-
elementName- имя запрашиваемого элемента. - Возвращает:
- массив
Strings или null. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format.
getAttributeNames
String[] getAttributeNames(String elementName)
Возвращает массив Strings, перечисляющий имена атрибутов, которые могут быть связаны с именованным элементом.
- Параметры:
-
elementName- имя запрашиваемого элемента. - Возвращает:
- массив
Strings. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format.
getAttributeValueType
int getAttributeValueType(String elementName,
String attrName) Возвращает одну из констант, начинающихся с VALUE_, указывающую на то, являются ли значения данного атрибута в именованном элементе произвольными, ограниченными заданным диапазоном, ограниченными одним из набора перечисленных значений или представляют собой список произвольных значений, разделенных пробелами.
- Параметры:
-
elementName- имя запрашиваемого элемента. -
attrName- имя запрашиваемого атрибута. - Возвращает:
- одну из констант
VALUE_*. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format. -
IllegalArgumentException- ifattrNameisnullor is not a legal attribute name for this element.
getAttributeDataType
int getAttributeDataType(String elementName,
String attrName) Возвращает одну из констант, начинающихся с DATATYPE_, указывающую на формат и интерпретацию значения данного атрибута в именованном элементе. Если getAttributeValueType возвращает VALUE_LIST, то допустимым значением является список значений возвращаемого типа данных, разделенных пробелами.
- Параметры:
-
elementName- имя запрашиваемого элемента. -
attrName- имя запрашиваемого атрибута. - Возвращает:
- одну из констант
DATATYPE_*. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format. -
IllegalArgumentException- ifattrNameisnullor is not a legal attribute name for this element.
isAttributeRequired
boolean isAttributeRequired(String elementName,
String attrName) Возвращает true если именованный атрибут должен присутствовать в именованном элементе.
- Параметры:
-
elementName- имя запрашиваемого элемента. -
attrName- имя запрашиваемого атрибута. - Возвращает:
-
trueесли атрибут должен присутствовать. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format. -
IllegalArgumentException- ifattrNameisnullor is not a legal attribute name for this element.
getAttributeDefaultValue
String getAttributeDefaultValue(String elementName,
String attrName) Возвращает значение по умолчанию именованного атрибута, если он явно не присутствует в именованном элементе, как String, или null если значение по умолчанию недоступно.
- Параметры:
-
elementName- имя запрашиваемого элемента. -
attrName- имя запрашиваемого атрибута. - Возвращает:
- a
Stringcontaining the default value, ornull. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format. -
IllegalArgumentException- ifattrNameisnullor is not a legal attribute name for this element.
getAttributeEnumerations
String[] getAttributeEnumerations(String elementName,
String attrName) Возвращает массив Strings, содержащий допустимые перечисляемые значения для данного атрибута в именованном элементе. Этот метод следует вызывать только в том случае, если getAttributeValueType возвращает VALUE_ENUMERATION.
- Параметры:
-
elementName- имя запрашиваемого элемента. -
attrName- имя запрашиваемого атрибута. - Возвращает:
- массив
Strings. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format. -
IllegalArgumentException- ifattrNameisnullor is not a legal attribute name for this element. -
IllegalArgumentException- if the given attribute is not defined as an enumeration.
getAttributeMinValue
String getAttributeMinValue(String elementName,
String attrName) Возвращает минимальное допустимое значение атрибута. Включает ли это значение или нет, можно определить по значению getAttributeValueType. Значение возвращается как String; его интерпретация зависит от значения getAttributeDataType. Этот метод следует вызывать только в том случае, если getAttributeValueType возвращает VALUE_RANGE_*.
- Параметры:
-
elementName- имя запрашиваемого элемента. -
attrName- имя запрашиваемого атрибута. - Возвращает:
- a
Stringcontaining the smallest legal value for the attribute. - Исключения:
-
IllegalArgumentException- ifelementNameisnullor is not a legal element name for this format. -
IllegalArgumentException- ifattrNameisnullor is not a legal attribute name for this element. -
IllegalArgumentException- if the given attribute is not defined as a range.
getAttributeMaxValue
String getAttributeMaxValue(String elementName,
String attrName) Возвращает максимальное допустимое значение для атрибута. Является ли это значение включительным или исключительным, можно определить по значению getAttributeValueType. Значение возвращается как String; его интерпретация зависит от значения getAttributeDataType. Этот метод следует вызывать только в том случае, если getAttributeValueType возвращает VALUE_RANGE_*.
- Parameters:
-
elementName- имя запрашиваемого элемента, какString. -
attrName- имя запрашиваемого атрибута. - Returns:
- a
Stringcontaining the largest legal value for the attribute. - Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- еслиattrNameisnullили не является допустимым именем атрибута для этого элемента. -
IllegalArgumentException- если данный атрибут не определен как диапазон.
getAttributeListMinLength
int getAttributeListMinLength(String elementName,
String attrName) Возвращает минимальное количество элементов списка, которые могут использоваться для определения этого атрибута. Сам атрибут определяется как String содержащий несколько элементов, разделенных пробелами. Этот метод следует вызывать только в том случае, если getAttributeValueType возвращает VALUE_LIST.
- Parameters:
-
elementName- имя запрашиваемого элемента. -
attrName- имя запрашиваемого атрибута. - Returns:
- наименьшее допустимое количество элементов списка для атрибута.
- Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- еслиattrNameisnullили не является допустимым именем атрибута для этого элемента. -
IllegalArgumentException- если данный атрибут не определен как список.
getAttributeListMaxLength
int getAttributeListMaxLength(String elementName,
String attrName) Возвращает максимальное количество элементов списка, которые могут использоваться для определения этого атрибута. Значение Integer.MAX_VALUE может использоваться для указания отсутствия верхнего предела. Сам атрибут определяется как String содержащий несколько элементов, разделенных пробелами. Этот метод следует вызывать только в том случае, если getAttributeValueType возвращает VALUE_LIST.
- Parameters:
-
elementName- имя запрашиваемого элемента. -
attrName- имя запрашиваемого атрибута. - Returns:
- наибольшее допустимое количество элементов списка для атрибута.
- Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- еслиattrNameisnullили не является допустимым именем атрибута для этого элемента. -
IllegalArgumentException- если данный атрибут не определен как список.
getAttributeDescription
String getAttributeDescription(String elementName,
String attrName,
Locale locale) Возвращает String содержащий описание указанного атрибута или null. Описание будет локализовано для предоставленного Locale если возможно.
Если locale is null, будет использоваться текущее значение по умолчанию Locale возвращаемое Locale.getLocale.
- Parameters:
-
elementName- имя элемента. -
attrName- имя атрибута. -
locale-Localeдля которого будет предпринята попытка локализации. - Returns:
- описание атрибута.
- Throws:
-
IllegalArgumentException- еслиelementNameisnull, или не является допустимым именем элемента для этого формата. -
IllegalArgumentException- еслиattrNameisnullили не является допустимым именем атрибута для этого элемента.
getObjectValueType
int getObjectValueType(String elementName)
Возвращает одно из перечисленных значений, начинающихся с VALUE_, указывающее тип значений (перечисление, диапазон или массив), которые разрешены для ссылки Object. Если внутри данного элемента не может храниться ни одно объектное значение, результатом этого метода будет VALUE_NONE.
Ссылки Object, допустимые значения которых определены как диапазон, должны реализовывать интерфейс Comparable.
- Parameters:
-
elementName- имя запрашиваемого элемента. - Returns:
- одна из констант
VALUE_*. - Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. - See Also:
Comparable
getObjectClass
Class<?> getObjectClass(String elementName)
Возвращает тип Class ссылки Object, хранящейся внутри элемента. Если этот элемент не может содержать ссылку Object, будет выброшено исключение IllegalArgumentException. Если тип класса является массивом, это поле указывает на базовый тип класса (например, для массива int этот метод вернет int.class).
Ссылки Object, допустимые значения которых определены как диапазон, должны реализовывать интерфейс Comparable.
- Parameters:
-
elementName- имя запрашиваемого элемента. - Returns:
- объект
Class. - Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- если указанный элемент не может содержать объектное значение (т.е., еслиgetObjectValueType(elementName) == VALUE_NONE).
getObjectDefaultValue
Object getObjectDefaultValue(String elementName)
Возвращает Object содержащий значение по умолчанию для ссылки Object внутри указанного элемента.
- Parameters:
-
elementName- имя запрашиваемого элемента. - Returns:
- an
Object. - Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- если указанный элемент не может содержать объектное значение (т.е., еслиgetObjectValueType(elementName) == VALUE_NONE).
getObjectEnumerations
Object[] getObjectEnumerations(String elementName)
Возвращает массив Object содержащий допустимые перечисляемые значения для ссылки Object внутри указанного элемента. Этот метод следует вызывать только в том случае, если getObjectValueType возвращает VALUE_ENUMERATION.
Object связанный с узлом, который принимает перечисляемые значения, должен быть равен одному из значений, возвращаемых этим методом, как определено оператором == (в отличие от метода Object.equals).
- Parameters:
-
elementName- имя запрашиваемого элемента. - Returns:
- массив
Object. - Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- если указанный элемент не может содержать объектное значение (т.е., еслиgetObjectValueType(elementName) == VALUE_NONE). -
IllegalArgumentException- еслиObjectне определен как перечисление.
getObjectMinValue
Comparable<?> getObjectMinValue(String elementName)
Возвращает минимальное допустимое значение для ссылки Object внутри указанного элемента. Является ли это значение включительным или исключительным, можно определить по значению getObjectValueType. Этот метод следует вызывать только в том случае, если getObjectValueType возвращает одну из констант, начинающихся с VALUE_RANGE.
- Parameters:
-
elementName- имя запрашиваемого элемента. - Returns:
- наименьшее допустимое значение для атрибута.
- Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- если указанный элемент не может содержать объектное значение (т.е., еслиgetObjectValueType(elementName) == VALUE_NONE). -
IllegalArgumentException- еслиObjectне определен как диапазон.
getObjectMaxValue
Comparable<?> getObjectMaxValue(String elementName)
Возвращает максимальное допустимое значение для ссылки Object внутри указанного элемента. Является ли это значение включительным или исключительным, можно определить по значению getObjectValueType. Этот метод следует вызывать только в том случае, если getObjectValueType возвращает одну из констант, начинающихся с VALUE_RANGE.
- Parameters:
-
elementName- имя запрашиваемого элемента. - Returns:
- наименьшее допустимое значение для атрибута.
- Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- если указанный элемент не может содержать объектное значение (т.е., еслиgetObjectValueType(elementName) == VALUE_NONE). -
IllegalArgumentException- еслиObjectне определен как диапазон.
getObjectArrayMinLength
int getObjectArrayMinLength(String elementName)
Возвращает минимальное количество элементов массива, которые могут использоваться для определения ссылки Object внутри указанного элемента. Этот метод следует вызывать только в том случае, если getObjectValueType возвращает VALUE_LIST.
- Parameters:
-
elementName- имя запрашиваемого элемента. - Returns:
- наименьшая допустимая длина массива для ссылки
Object. - Throws:
-
IllegalArgumentException- еслиelementNameisnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- если указанный элемент не может содержать объектное значение (т.е., еслиgetObjectValueType(elementName) == VALUE_NONE). -
IllegalArgumentException- еслиObjectне является массивом.
getObjectArrayMaxLength
int getObjectArrayMaxLength(String elementName)
Возвращает максимальное количество элементов массива, которые могут быть использованы для определения ссылки Object в указанном элементе. Значение Integer.MAX_VALUE может быть использовано для указания отсутствия верхней границы. Этот метод следует вызывать только в том случае, если getObjectValueType возвращает VALUE_LIST.
- Параметры:
-
elementName- имя запрашиваемого элемента. - Возвращает:
- наибольшую допустимую длину массива для ссылки
Object. - Исключение:
-
IllegalArgumentException- еслиelementNameравноnullили не является допустимым именем элемента для этого формата. -
IllegalArgumentException- если указанный элемент не может содержать значение объекта (т.е., еслиgetObjectValueType(elementName) == VALUE_NONE). -
IllegalArgumentException- еслиObjectне является массивом.
© 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.desktop/javax/imageio/metadata/IIOMetadataFormat.html