Интерфейс 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

Константа, возвращаемая getChildPolicy для указания того, что элемент должен иметь по одному экземпляру каждого его допустимого дочернего элемента в заданном порядке.

static int CHILD_POLICY_CHOICE

Константа, возвращаемая getChildPolicy для указания того, что элемент должен иметь ноль или один дочерний элемент, выбранный из числа его допустимых дочерних элементов.

static int CHILD_POLICY_EMPTY

Константа, возвращаемая getChildPolicy для указания того, что элемент не может иметь дочерних элементов.

static int CHILD_POLICY_MAX

Наибольшая допустимая CHILD_POLICY_* константа, используемая для проверок диапазона.

static int CHILD_POLICY_REPEAT

Константа, возвращаемая getChildPolicy для указания того, что элемент должен иметь ноль или более экземпляров своего уникального допустимого дочернего элемента.

static int CHILD_POLICY_SEQUENCE

Константа, возвращаемая getChildPolicy для указания того, что элемент должен иметь последовательность экземпляров любого из его допустимых дочерних элементов.

static int CHILD_POLICY_SOME

Константа, возвращаемая getChildPolicy для указания того, что элемент должен иметь ноль или один экземпляр каждого из его допустимых дочерних элементов в заданном порядке.

static int DATATYPE_BOOLEAN

Константа, возвращаемая getAttributeDataType, указывающая, что значение атрибута является одним из булевых значений 'true' или 'false'.

static int DATATYPE_DOUBLE

Константа, возвращаемая getAttributeDataType , указывающая, что значение атрибута является строковым представлением числа с двойной точностью.

static int DATATYPE_FLOAT

Константа, возвращаемая getAttributeDataType , указывающая, что значение атрибута является строковым представлением десятичного числа с плавающей точкой.

static int DATATYPE_INTEGER

Константа, возвращаемая getAttributeDataType , указывающая, что значение атрибута является строковым представлением целого числа.

static int DATATYPE_STRING

Константа, возвращаемая getAttributeDataType , указывающая, что значение атрибута является строкой Unicode.

static int VALUE_ARBITRARY

Константа, возвращаемая getAttributeValueType и getObjectValueType для указания того, что атрибут или пользовательский объект может принимать единственное произвольное значение.

static int VALUE_ENUMERATION

Константа, возвращаемая getAttributeValueType и getObjectValueType для указания того, что атрибут или пользовательский объект может принимать одно из перечисленных значений.

static int VALUE_LIST

Константа, возвращаемая getAttributeValueType и getObjectValueType для указания того, что атрибут или пользовательский объект может принимать список или массив значений.

static int VALUE_NONE

Константа, возвращаемая getObjectValueType для указания отсутствия пользовательского объекта.

static int VALUE_RANGE

Константа, возвращаемая getAttributeValueType и getObjectValueType для указания того, что атрибут или пользовательский объект может принимать диапазон значений.

static int VALUE_RANGE_MAX_INCLUSIVE

Константа, возвращаемая getAttributeValueType и getObjectValueType для указания того, что атрибут или пользовательский объект может принимать диапазон значений.

static int VALUE_RANGE_MAX_INCLUSIVE_MASK

Значение, которое можно побитово объединять с VALUE_RANGE для получения VALUE_RANGE_MAX_INCLUSIVE, и с VALUE_RANGE_MIN_INCLUSIVE для получения VALUE_RANGE_MIN_MAX_INCLUSIVE.

static int VALUE_RANGE_MIN_INCLUSIVE

Константа, возвращаемая getAttributeValueType и getObjectValueType для указания того, что атрибут или пользовательский объект может принимать диапазон значений.

static int VALUE_RANGE_MIN_INCLUSIVE_MASK

Значение, которое можно побитово объединять с VALUE_RANGE для получения VALUE_RANGE_MIN_INCLUSIVE, и с VALUE_RANGE_MAX_INCLUSIVE для получения VALUE_RANGE_MIN_MAX_INCLUSIVE.

static int VALUE_RANGE_MIN_MAX_INCLUSIVE

Константа, возвращаемая getAttributeValueType и getObjectValueType для указания того, что атрибут или пользовательский объект может принимать диапазон значений.

Методы

Модификатор и тип Метод Описание
boolean canNodeAppear​(String elementName, ImageTypeSpecifier imageType)

Возвращает true, если элемент (и поддерево под ним) разрешено отображать в документе метаданных для изображения заданного типа, определенного ImageTypeSpecifier.

int getAttributeDataType​(String elementName, String attrName)

Возвращает одну из констант, начинающихся с DATATYPE_, указывающую формат и интерпретацию значения заданного атрибута внутри указанного элемента.

String getAttributeDefaultValue​(String elementName, String attrName)

Возвращает значение по умолчанию указанного атрибута, если он не указан явно внутри указанного элемента, как String, или null, если значение по умолчанию недоступно.

String getAttributeDescription​(String elementName, String attrName, Locale locale)

Возвращает String с описанием указанного атрибута или null.

String[] getAttributeEnumerations​(String elementName, String attrName)

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

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)

Возвращает массив String с именами атрибутов, которые могут быть связаны с указанным элементом.

int getAttributeValueType​(String elementName, String attrName)

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

String[] getChildNames​(String elementName)

Возвращает массив String с именами элементов, которые разрешено использовать в качестве дочерних элементов указанного элемента, в порядке их появления.

int getChildPolicy​(String elementName)

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

String getElementDescription​(String elementName, Locale locale)

Возвращает String с описанием указанного элемента или null.

int getElementMaxChildren​(String elementName)

Возвращает максимальное количество дочерних элементов указанного элемента с политикой дочерних элементов CHILD_POLICY_REPEAT.

int getElementMinChildren​(String elementName)

Возвращает минимальное количество дочерних элементов указанного элемента с политикой дочерних элементов CHILD_POLICY_REPEAT.

int getObjectArrayMaxLength​(String elementName)

Возвращает максимальное количество элементов массива, которые могут быть использованы для определения ссылки Object внутри указанного элемента.

int getObjectArrayMinLength​(String elementName)

Возвращает минимальное количество элементов массива, которые могут быть использованы для определения ссылки Object внутри указанного элемента.

Class<?> getObjectClass​(String elementName)

Возвращает тип Class ссылки Object , сохранённой внутри элемента.

Object getObjectDefaultValue​(String elementName)

Возвращает Object с значением по умолчанию для ссылки Object внутри указанного элемента.

Object[] getObjectEnumerations​(String elementName)

Возвращает массив Object с допустимыми перечисленными значениями для ссылки Object внутри указанного элемента.

Comparable<?> getObjectMaxValue​(String elementName)

Возвращает максимальное допустимое значение для ссылки Object внутри указанного элемента.

Comparable<?> getObjectMinValue​(String elementName)

Возвращает минимальное допустимое значение для ссылки Object внутри указанного элемента.

int getObjectValueType​(String elementName)

Возвращает одно из перечисленных значений, начинающихся с VALUE_, указывающее тип значений (перечисление, диапазон или массив), разрешённых для ссылки Object.

String getRootName()

Возвращает имя корневого элемента формата.

boolean isAttributeRequired​(String elementName, String attrName)

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

Поля

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_MAX_INCLUSIVE, Значения постоянных полей

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 - an ImageTypeSpecifier indicating 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 - if elementName is null or is not a legal element name for this format.
IllegalArgumentException - if the named element does not have a child policy of CHILD_POLICY_REPEAT.

getElementMaxChildren

int getElementMaxChildren(String elementName)

Возвращает максимальное количество дочерних элементов именованного элемента с политикой дочерних элементов CHILD_POLICY_REPEAT. Например, элемент, представляющий запись в 8-битной цветовой палитре, может повторяться до 256 раз. Значение Integer.MAX_VALUE может использоваться для указания отсутствия верхнего предела.

Параметры:
elementName - имя запрашиваемого элемента.
Возвращает:
an int.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.
IllegalArgumentException - if the named element does not have a child policy of CHILD_POLICY_REPEAT.

getElementDescription

String getElementDescription(String elementName,
                             Locale locale)

Возвращает String, содержащий описание именованного элемента, или null. Описание будет локализовано для предоставленного Locale если это возможно.

Если locale is null, будет использоваться текущее значение по умолчанию Locale, возвращаемое методом Locale.getLocale.

Параметры:
elementName - имя элемента.
locale - the Locale for which localization will be attempted.
Возвращает:
описание элемента.
Исключения:
IllegalArgumentException - if elementName is null, or is not a legal element name for this format.

getChildPolicy

int getChildPolicy(String elementName)

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

Параметры:
elementName - имя запрашиваемого элемента.
Возвращает:
одну из констант CHILD_POLICY_*.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.

getChildNames

String[] getChildNames(String elementName)

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

Параметры:
elementName - имя запрашиваемого элемента.
Возвращает:
массив Strings или null.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.

getAttributeNames

String[] getAttributeNames(String elementName)

Возвращает массив Strings, перечисляющий имена атрибутов, которые могут быть связаны с именованным элементом.

Параметры:
elementName - имя запрашиваемого элемента.
Возвращает:
массив Strings.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.

getAttributeValueType

int getAttributeValueType(String elementName,
                          String attrName)

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

Параметры:
elementName - имя запрашиваемого элемента.
attrName - имя запрашиваемого атрибута.
Возвращает:
одну из констант VALUE_*.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.
IllegalArgumentException - if attrName is null or is not a legal attribute name for this element.

getAttributeDataType

int getAttributeDataType(String elementName,
                         String attrName)

Возвращает одну из констант, начинающихся с DATATYPE_, указывающую на формат и интерпретацию значения данного атрибута в именованном элементе. Если getAttributeValueType возвращает VALUE_LIST, то допустимым значением является список значений возвращаемого типа данных, разделенных пробелами.

Параметры:
elementName - имя запрашиваемого элемента.
attrName - имя запрашиваемого атрибута.
Возвращает:
одну из констант DATATYPE_*.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.
IllegalArgumentException - if attrName is null or is not a legal attribute name for this element.

isAttributeRequired

boolean isAttributeRequired(String elementName,
                            String attrName)

Возвращает true если именованный атрибут должен присутствовать в именованном элементе.

Параметры:
elementName - имя запрашиваемого элемента.
attrName - имя запрашиваемого атрибута.
Возвращает:
true если атрибут должен присутствовать.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.
IllegalArgumentException - if attrName is null or is not a legal attribute name for this element.

getAttributeDefaultValue

String getAttributeDefaultValue(String elementName,
                                String attrName)

Возвращает значение по умолчанию именованного атрибута, если он явно не присутствует в именованном элементе, как String, или null если значение по умолчанию недоступно.

Параметры:
elementName - имя запрашиваемого элемента.
attrName - имя запрашиваемого атрибута.
Возвращает:
a String containing the default value, or null.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.
IllegalArgumentException - if attrName is null or is not a legal attribute name for this element.

getAttributeEnumerations

String[] getAttributeEnumerations(String elementName,
                                  String attrName)

Возвращает массив Strings, содержащий допустимые перечисляемые значения для данного атрибута в именованном элементе. Этот метод следует вызывать только в том случае, если getAttributeValueType возвращает VALUE_ENUMERATION.

Параметры:
elementName - имя запрашиваемого элемента.
attrName - имя запрашиваемого атрибута.
Возвращает:
массив Strings.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.
IllegalArgumentException - if attrName is null or 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 String containing the smallest legal value for the attribute.
Исключения:
IllegalArgumentException - if elementName is null or is not a legal element name for this format.
IllegalArgumentException - if attrName is null or 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 String containing the largest legal value for the attribute.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
IllegalArgumentException - если attrName is null или не является допустимым именем атрибута для этого элемента.
IllegalArgumentException - если данный атрибут не определен как диапазон.

getAttributeListMinLength

int getAttributeListMinLength(String elementName,
                              String attrName)

Возвращает минимальное количество элементов списка, которые могут использоваться для определения этого атрибута. Сам атрибут определяется как String содержащий несколько элементов, разделенных пробелами. Этот метод следует вызывать только в том случае, если getAttributeValueType возвращает VALUE_LIST.

Parameters:
elementName - имя запрашиваемого элемента.
attrName - имя запрашиваемого атрибута.
Returns:
наименьшее допустимое количество элементов списка для атрибута.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
IllegalArgumentException - если attrName is null или не является допустимым именем атрибута для этого элемента.
IllegalArgumentException - если данный атрибут не определен как список.

getAttributeListMaxLength

int getAttributeListMaxLength(String elementName,
                              String attrName)

Возвращает максимальное количество элементов списка, которые могут использоваться для определения этого атрибута. Значение Integer.MAX_VALUE может использоваться для указания отсутствия верхнего предела. Сам атрибут определяется как String содержащий несколько элементов, разделенных пробелами. Этот метод следует вызывать только в том случае, если getAttributeValueType возвращает VALUE_LIST.

Parameters:
elementName - имя запрашиваемого элемента.
attrName - имя запрашиваемого атрибута.
Returns:
наибольшее допустимое количество элементов списка для атрибута.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
IllegalArgumentException - если attrName is null или не является допустимым именем атрибута для этого элемента.
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 - если elementName is null, или не является допустимым именем элемента для этого формата.
IllegalArgumentException - если attrName is null или не является допустимым именем атрибута для этого элемента.

getObjectValueType

int getObjectValueType(String elementName)

Возвращает одно из перечисленных значений, начинающихся с VALUE_, указывающее тип значений (перечисление, диапазон или массив), которые разрешены для ссылки Object. Если внутри данного элемента не может храниться ни одно объектное значение, результатом этого метода будет VALUE_NONE.

Ссылки Object, допустимые значения которых определены как диапазон, должны реализовывать интерфейс Comparable.

Parameters:
elementName - имя запрашиваемого элемента.
Returns:
одна из констант VALUE_*.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
See Also:
Comparable

getObjectClass

Class<?> getObjectClass(String elementName)

Возвращает тип Class ссылки Object, хранящейся внутри элемента. Если этот элемент не может содержать ссылку Object, будет выброшено исключение IllegalArgumentException. Если тип класса является массивом, это поле указывает на базовый тип класса (например, для массива int этот метод вернет int.class).

Ссылки Object, допустимые значения которых определены как диапазон, должны реализовывать интерфейс Comparable.

Parameters:
elementName - имя запрашиваемого элемента.
Returns:
объект Class.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
IllegalArgumentException - если указанный элемент не может содержать объектное значение (т.е., если getObjectValueType(elementName) == VALUE_NONE).

getObjectDefaultValue

Object getObjectDefaultValue(String elementName)

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

Parameters:
elementName - имя запрашиваемого элемента.
Returns:
an Object.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
IllegalArgumentException - если указанный элемент не может содержать объектное значение (т.е., если getObjectValueType(elementName) == VALUE_NONE).

getObjectEnumerations

Object[] getObjectEnumerations(String elementName)

Возвращает массив Object содержащий допустимые перечисляемые значения для ссылки Object внутри указанного элемента. Этот метод следует вызывать только в том случае, если getObjectValueType возвращает VALUE_ENUMERATION.

Object связанный с узлом, который принимает перечисляемые значения, должен быть равен одному из значений, возвращаемых этим методом, как определено оператором == (в отличие от метода Object.equals).

Parameters:
elementName - имя запрашиваемого элемента.
Returns:
массив Object.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
IllegalArgumentException - если указанный элемент не может содержать объектное значение (т.е., если getObjectValueType(elementName) == VALUE_NONE).
IllegalArgumentException - если Object не определен как перечисление.

getObjectMinValue

Comparable<?> getObjectMinValue(String elementName)

Возвращает минимальное допустимое значение для ссылки Object внутри указанного элемента. Является ли это значение включительным или исключительным, можно определить по значению getObjectValueType. Этот метод следует вызывать только в том случае, если getObjectValueType возвращает одну из констант, начинающихся с VALUE_RANGE.

Parameters:
elementName - имя запрашиваемого элемента.
Returns:
наименьшее допустимое значение для атрибута.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
IllegalArgumentException - если указанный элемент не может содержать объектное значение (т.е., если getObjectValueType(elementName) == VALUE_NONE).
IllegalArgumentException - если Object не определен как диапазон.

getObjectMaxValue

Comparable<?> getObjectMaxValue(String elementName)

Возвращает максимальное допустимое значение для ссылки Object внутри указанного элемента. Является ли это значение включительным или исключительным, можно определить по значению getObjectValueType. Этот метод следует вызывать только в том случае, если getObjectValueType возвращает одну из констант, начинающихся с VALUE_RANGE.

Parameters:
elementName - имя запрашиваемого элемента.
Returns:
наименьшее допустимое значение для атрибута.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
IllegalArgumentException - если указанный элемент не может содержать объектное значение (т.е., если getObjectValueType(elementName) == VALUE_NONE).
IllegalArgumentException - если Object не определен как диапазон.

getObjectArrayMinLength

int getObjectArrayMinLength(String elementName)

Возвращает минимальное количество элементов массива, которые могут использоваться для определения ссылки Object внутри указанного элемента. Этот метод следует вызывать только в том случае, если getObjectValueType возвращает VALUE_LIST.

Parameters:
elementName - имя запрашиваемого элемента.
Returns:
наименьшая допустимая длина массива для ссылки Object.
Throws:
IllegalArgumentException - если elementName is null или не является допустимым именем элемента для этого формата.
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

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