Spec-Zone .ru
спецификации, руководства, описания, API
|
public class DescriptorSupport extends Object implements Descriptor
Дескриптор состоит из набора полей. Каждое поле находится в формате fieldname=fieldvalue. Имена полей не являются чувствительными к регистру, случай будет сохранен на значениях полей.
Все имена полей и значения не предопределяются. Новые поля могут быть определены и добавлены любой программой. Некоторые поля были предопределены для непротиворечивости реализации и поддержки ModelMBeanInfo, ModelMBeanAttributeInfo, ModelMBeanConstructorInfo, ModelMBeanNotificationInfo, ModelMBeanOperationInfo и классами ModelMBean.
serialVersionUID этого class -6292969195866300415L
.
Конструктор и Описание |
---|
DescriptorSupport()
Конструктор по умолчанию дескриптора.
|
DescriptorSupport(DescriptorSupport inDescr)
Конструктор дескриптора, берущий Дескриптор в качестве параметра.
|
DescriptorSupport(int initNumFields)
Конструктор дескриптора.
|
DescriptorSupport(String... fields)
Поля взятия конструктора в формате fieldName=fieldValue.
|
DescriptorSupport(String inStr)
Конструктор дескриптора, берущий XML Строка.
|
DescriptorSupport(String[] fieldNames, Object[] fieldValues)
Конструктор, берущий имена полей и значения полей.
|
Модификатор и Тип | Метод и Описание |
---|---|
Объект |
clone()
Возвращает новый Дескриптор, который является копией Дескриптора.
|
boolean |
equals(Object o)
Сравнивает этот дескриптор с данным объектом.
|
Строка[] |
getFieldNames()
Возвраты все имена полей в дескрипторе.
|
Строка[] |
getFields()
Возвраты все поля, содержавшиеся в этом дескрипторе как строковый массив.
|
Объект |
getFieldValue(String fieldName)
Возвращает значение для определенного имени поля, или нуль, если никакое значение не присутствует для того имени.
|
Объект[] |
getFieldValues(String... fieldNames)
Возвраты все значения полей в дескрипторе как массив Объектов.
|
int |
hashCode()
Возвращает значение хэш-кода для этого дескриптора.
|
boolean |
isValid()
Возвращает true, если у всех полей есть юридические значения, данные их имена.
|
void |
removeField(String fieldName)
Удаляет поле из дескриптора.
|
void |
setField(String fieldName, Object fieldValue)
Устанавливает значение для определенного имени поля.
|
void |
setFields(String[] fieldNames, Object[] fieldValues)
Наборы все поля в массиве имен полей к новому значению с тем же самым индексируют в массиве значений полей.
|
Строка |
toString()
Возвращает
|
Строка |
toXMLString()
Возвращает XML Строка, представляющая дескриптор.
|
public DescriptorSupport()
isValid
возвраты false
)public DescriptorSupport(int initNumFields) throws MBeanException, RuntimeOperationsException
isValid
возвраты false
).initNumFields
- Начальная емкость Карты, которая хранит поля дескриптора.RuntimeOperationsException
- для недопустимого значения для initNumFields (<= 0)MBeanException
- Обертывает распределенное коммуникационное Исключение.public DescriptorSupport(DescriptorSupport inDescr)
inDescr
- дескриптор, который будет использоваться, чтобы инициализировать созданный дескриптор. Если это будет нулем или не будет содержать полей дескриптора, то пустой Дескриптор будет создаваться.public DescriptorSupport(String inStr) throws MBeanException, RuntimeOperationsException, XMLParseException
Конструктор дескриптора, берущий XML Строка.
Формат строки XML не определяется, но реализация должна гарантировать что строка, возвращенная toXMLString()
на существующем дескрипторе может использоваться, чтобы инстанцировать эквивалентного дескриптора, используя этого конструктора.
В этой реализации все значения полей будут создаваться как Строки. Если значения полей не являются Строками, программист должен будет сбросить или преобразовать эти поля правильно.
inStr
- Отформатированная XML строка, используемая, чтобы заполнить этот Дескриптор. Формат не определяется, но любая реализация должна гарантировать что строка, возвращенная методом toXMLString
на существующем дескрипторе может использоваться, чтобы инстанцировать эквивалентного дескриптора, инстанцировано используя этого конструктора.RuntimeOperationsException
- Если Строка inStr передала в параметре, нульXMLParseException
- XML, анализирующий проблему, анализируя строку вводаMBeanException
- Обертывает распределенное коммуникационное Исключение.public DescriptorSupport(String[] fieldNames, Object[] fieldValues) throws RuntimeOperationsException
fieldNames
- Строковый массив имен полей. Никакие элементы этого массива не могут быть нулем.fieldValues
- Объектный массив соответствующих значений полей. Элементы массива могут быть нулем. fieldValue
должно быть допустимым для fieldName
(как определено в методе isValid
) Отметьте: размеры массива параметров должны соответствовать. Если оба массива пусты, то пустой дескриптор создается.
RuntimeOperationsException
- для недопустимого значения для имен полей или значений полей. Длины массива должны быть равными. Если сбои конструкции дескриптора по какой-либо причине, это исключение будет выдано.public DescriptorSupport(String... fields)
fields
- Строковый массив с каждым элементом, содержащим имя поля и значение. Если этот массив будет нулем или пустой, то конструктор по умолчанию будет выполняться. Пустые строки или пустые строки будут проигнорированы. Все значения полей должны быть Строками. Если значения полей не являются Строками, программист должен будет сбросить или преобразовать эти поля правильно.
Отметьте: Каждая строка должна иметь форму fieldName=fieldValue. Имя поля заканчивается в первом =
символ; например, если Строка a=b=c
тогда имя поля a
и его значение b=c
.
RuntimeOperationsException
- для недопустимого значения для имен полей или значений полей. Поле должно содержать "=". "=fieldValue", "имя поля", и "fieldValue" недопустимы. FieldName не может быть нулем. "имя поля =" заставит значение быть нулем. Если сбои конструкции дескриптора по какой-либо причине, это исключение будет выдано.public Object getFieldValue(String fieldName) throws RuntimeOperationsException
Descriptor
getFieldValue
в интерфейсе Descriptor
fieldName
- имя поля.RuntimeOperationsException
- если имя поля недопустимо.public void setField(String fieldName, Object fieldValue) throws RuntimeOperationsException
Descriptor
Устанавливает значение для определенного имени поля. Это изменит существующее поле или добавит новое поле.
Значение поля будет проверено прежде, чем оно будет установлено. Если это не будет допустимо, то исключение будет выдано. Значение законности зависит от реализации дескриптора.
setField
в интерфейсе Descriptor
fieldName
- Имя поля, которое будет установлено. Не может быть нуль или пустой.fieldValue
- Значение поля, которое будет установлено для имени поля. Может быть нуль, если это - допустимое значение для поля.RuntimeOperationsException
- если имя поля или значение поля недопустимы (обернутое исключение IllegalArgumentException
); или если дескриптор является неизменным (обернутое исключение UnsupportedOperationException
).public String[] getFields()
Descriptor
getFields
в интерфейсе Descriptor
Descriptor.setFields(java.lang.String[], java.lang.Object[])
public String[] getFieldNames()
Descriptor
getFieldNames
в интерфейсе Descriptor
public Object[] getFieldValues(String... fieldNames)
Descriptor
fieldNames
Строковый параметр массива.getFieldValues
в интерфейсе Descriptor
fieldNames
- Строковый массив имен полей, для которых должны быть возвращены значения. Если массив будет пуст тогда будет возвращен, то пустой массив. Если массив будет нулем тогда, то все значения будут возвращены, как будто параметр был массивом, возвращенным Descriptor.getFieldNames()
. Если имя поля в массиве не существует, включая случай, где это - нуль или пустая строка, то нуль возвращается для соответствующего возвращаемого элемента массива.fieldNames
пусто, Вы получите пустой массив.public void setFields(String[] fieldNames, Object[] fieldValues) throws RuntimeOperationsException
Descriptor
Наборы все поля в массиве имен полей к новому значению с тем же самым индексируют в массиве значений полей. Размеры массива должны соответствовать.
Значение поля будет проверено прежде, чем оно будет установлено. Если это не будет допустимо, то исключение будет выдано. Если массивы будут пусты, то никакое изменение не вступит в силу.
setFields
в интерфейсе Descriptor
fieldNames
- Строковый массив имен полей. Элементы массива и массива не могут быть нулем.fieldValues
- Объектный массив соответствующих значений полей. Массив не может быть нулем. Элементы массива могут быть нулем.RuntimeOperationsException
- если изменение перестало работать по какой-либо причине. Обернутое исключение IllegalArgumentException
если fieldNames
или fieldValues
нуль, или если массивы имеют различные длины, или если есть недопустимое значение в одном из них. Обернутое исключение UnsupportedOperationException
если бы дескриптор является неизменным, и вызов изменил бы свое содержание.Descriptor.getFields()
public Object clone() throws RuntimeOperationsException
clone
в интерфейсе Descriptor
clone
в class Object
RuntimeOperationsException
- для недопустимого значения для имен полей или значений полей. Если сбои конструкции дескриптора по какой-либо причине, это исключение будет выдано.Cloneable
public void removeField(String fieldName)
Descriptor
removeField
в интерфейсе Descriptor
fieldName
- Имя строки поля, которое будет удалено. Если имя поля недопустимо, или поле не находится, никакое исключение не выдается.public boolean equals(Object o)
Arrays.deepEquals
должен возвратить true.Object.equals(Object)
должен возвратить true.equals
в интерфейсе Descriptor
equals
в class Object
o
- объект сравниться с.true
если объекты являются тем же самым; false
иначе.Object.hashCode()
, HashMap
public int hashCode()
Возвращает значение хэш-кода для этого дескриптора. Хэш-код вычисляется как сумма хэш-кодов для каждого поля в дескрипторе. Хэш-код поля с именем n
и значение v
n.toLowerCase().hashCode() ^ h
. Здесь h
хэш-код v
, вычисленный следующим образом:
v
нуль тогда h
0.v
примитивный массив тогда h
вычисляется, используя соответствующую перегрузку java.util.Arrays.hashCode
.v
объектный массив тогда h
вычисляется, используя Arrays.deepHashCode
.h
v.hashCode()
.hashCode
в интерфейсе Descriptor
hashCode
в class Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean isValid() throws RuntimeOperationsException
Эта реализация не поддерживает взаимодействие со службой поиска или каталогом. Таким образом, соответствуя спецификации, никакая проверка не делается на поле "экспорта".
Иначе эта реализация возвращает false если:
isValid
в интерфейсе Descriptor
RuntimeOperationsException
- Если сбои проверки законности по какой-либо причине, это исключение будет выдано.public String toXMLString()
Возвращает XML Строка, представляющая дескриптор.
Формат не определяется, но реализация должна гарантировать, что строка, возвращенная этим методом, может использоваться, чтобы создать эквивалентный дескриптор, инстанцировано используя конструктора DescriptorSupport(String inStr)
.
У полей, которые не являются Строковыми объектами, будет toString (), обращался к ним с просьбой создавать стоимость. Значение будет включено в круглые скобки. Не гарантируется, что можно восстановить эти объекты, если они не были определенно установлены, чтобы поддерживать toString () в значимом формате и иметь соответствующего конструктора, который принимает Строку в том же самом формате.
Если дескриптор пуст, следующая Строка возвращается: <Дескриптор> </Дескриптор>
RuntimeOperationsException
- для недопустимого значения для имен полей или значений полей. Если XML отформатированные строковые сбои конструкции по какой-либо причине, это исключение будет выдано.public String toString()
toString
в class Object
RuntimeOperationsException
- для недопустимого значения для имен полей или значений полей. Если строковые сбои дескриптора по какой-либо причине, это исключение будет выдано.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92