Spec-Zone .ru
спецификации, руководства, описания, API
|
public interface Descriptor extends Serializable, Cloneable
Дополнительные метаданные для элемента JMX. A Descriptor
связывается с a MBeanInfo
, MBeanAttributeInfo
, и т.д.. Это состоит из набора полей. Поле является именем и присваиваемым значением.
Имена полей не являются чувствительными к регистру. Имена descriptorType
, descriptortype
, и DESCRIPTORTYPE
весь эквивалент. Однако, случай, который использовался, когда поле было сначала установлено, сохраняется в результате getFields()
и getFieldNames()
методы.
Не все имена полей и значения предопределяются. Новые поля могут быть определены и добавлены любой программой.
Дескриптор может быть изменчивым или неизменным. Неизменный дескриптор, когда-то создаваемый, никогда не изменяется. Descriptor
методы, которые могли изменить содержание дескриптора, выдадут исключение для неизменного дескриптора. Неизменные дескрипторы обычно являются экземплярами ImmutableDescriptor
или подкласс. Изменчивые дескрипторы обычно являются экземплярами DescriptorSupport
или подкласс.
Определенные поля используются реализацией JMX. Это означает или что присутствие поля может изменить поведение API JMX или что поле может быть установлено в дескрипторах, возвращенных API JMX. Эти поля появляются курсивом в таблице ниже, и у каждого есть соответствующая константа в JMX
класс. Например, поле defaultValue
представляется константой JMX.DEFAULT_VALUE_FIELD
.
Определенным другим полям описали стандартные значения в таблице ниже, но они не обязаны быть понятыми или установленными реализацией JMX.
Имена полей, определенные спецификацией JMX в этом и всех будущих версиях, никогда не будут содержать период (.). Пользователи могут безопасно создать свои собственные поля включением периода на имя и убедиться, что эти имена не будут сталкиваться ни с какой будущей версией API JMX. Рекомендуется следовать за соглашением о присвоении имен пакета Java избежать коллизий между именами полей от различных источников. Например, поле, создаваемое example.com
мог бы иметь имя com.example.interestLevel
.
Отметьте что значения в defaultValue
, legalValues
, maxValue
, и minValue
поля должны быть непротиворечивыми с типом, возвращенным getType()
метод для связанного MBeanAttributeInfo
или MBeanParameterInfo
. Для MXBeans это означает, что они должны иметь отображенный тип Java, названный opendata (J) в правилах отображения типа MXBean.
Имя | Ввести | Используемый в | Значение |
---|---|---|---|
defaultValue | Объект | MBeanAttributeInfo MBeanParameterInfo |
Значение по умолчанию для атрибута или параметра. См. javax.management.openmbean . |
осуждаемый | Строка | Любой | Индикация, которую этот элемент информационной модели больше не рекомендуется для использования. Ряд MBeans, определенного приложением, все вместе вызывают информационной моделью. Соглашение для значения этого поля, чтобы содержать строку, которая является версией модели, в которой элемент сначала осуждался, сопровождался пространством, сопровождаемым объяснением осуждения, например "1.3 Replaced by the Capacity attribute" . |
descriptionResource BundleBaseName | Строка | Любой | Базовое имя для ResourceBundle в котором ключ, поданный descriptionResourceKey поле может быть найдено, например "com.example.myapp.MBeanResources" . Значение этого поля определяется этой спецификацией, но поле не устанавливается или используется API JMX непосредственно. |
descriptionResourceKey | Строка | Любой | Ключ ресурса для описания этого элемента. В соединении с descriptionResourceBundleBaseName , это может использоваться, чтобы найти локализованную версию описания. Значение этого поля определяется этой спецификацией, но поле не устанавливается или используется API JMX непосредственно. |
включенный | Строка | MBeanAttributeInfo MBeanNotificationInfo MBeanOperationInfo |
Строка "true" или "false" смотря по тому, как этот элемент включается. Когда атрибут или работа не включаются, это существует, но не может в настоящий момент быть получено доступ. Пользовательский интерфейс мог бы представить это как greyed элемент. Например, атрибут мог бы только быть значимым после start() метод MBean вызвали, и иначе отключается. Аналогично, уведомление могло бы быть отключено, если оно не может в настоящий момент быть испущено, но могло бы быть при других обстоятельствах. |
исключения | Строка [] | MBeanAttributeInfo, MBeanConstructorInfo, MBeanOperationInfo | Имена классов исключений, которые могут быть выданы, вызывая конструктора или работу, или получая атрибут. Значение этого поля определяется этой спецификацией, но поле не устанавливается или используется API JMX непосредственно. Исключения, выданные, устанавливая атрибут, определяются полем setExceptions . |
immutableInfo | Строка | MBeanInfo | Строка "true" или "false" смотря по тому, как MBeanInfo этого MBEAN является неизменным. Когда это поле будет истиной, MBeanInfo для данного MBean, как гарантируют, не переключит время жизни MBean. Следовательно, клиент может считать это однажды и кэшировать значение чтения. Когда это поле является ложью или отсутствующий, нет такой гарантии, хотя это не означает, что MBeanInfo обязательно изменится. См. также "jmx.mbean.info.changed" уведомление. |
infoTimeout | Строка Долго | MBeanInfo | Время в миллисекундах, что MBeanInfo, как могут разумно ожидать, будет неизменен. Значение может быть a Long или десятичная строка. Это обеспечивает подсказку от DynamicMBean или любого MBean, который не определяет immutableInfo как true то, что MBeanInfo вряд ли изменится в пределах этого периода и поэтому может кэшироваться. Когда это поле пропускает или имеет нуль значения, не рекомендуется кэшировать MBeanInfo, если это не имеет immutableInfo набор к true или это имеет "jmx.mbean.info.changed" в MBeanNotificationInfo массив. |
interfaceClassName | Строка | MBeanInfo | Имя интерфейса Java для Стандартного MBean или MXBean, как возвращено Class.getName() . Стандартный MBean или MXBean, зарегистрированный непосредственно в Сервере MBean или создаваемом использовании StandardMBean у класса будет это поле в его Дескрипторе MBeanInfo. |
legalValues | Набор <?> | MBeanAttributeInfo MBeanParameterInfo |
Юридические значения для атрибута или параметра. См. javax.management.openmbean . |
локаль | Строка | Любой | Локаль описания в этом MBeanInfo , MBeanAttributeInfo , и т.д., как возвращено Locale.toString() . |
maxValue | Объект | MBeanAttributeInfo MBeanParameterInfo |
Максимальное юридическое значение для атрибута или параметра. См. javax.management.openmbean . |
metricType | Строка | MBeanAttributeInfo MBeanOperationInfo |
Тип метрики, одна из строк "счетчик" или "прибор". Метрика является измерением, экспортируемым MBean, обычно атрибут, но иногда результат работы. У метрики, которая является счетчиком, есть значение, которое никогда не уменьшается кроме, будучи сброшенным к начальному значению. Встречные метрики являются почти всегда неотрицательными целыми числами. Примером могло бы быть число полученных запросов. У метрики, которая является прибором, есть числовое значение, которое может увеличиться или уменьшиться. Примерами могло бы быть число открытых соединений или уровня удачного обращения в кэш или температурного чтения. |
minValue | Объект | MBeanAttributeInfo MBeanParameterInfo |
Минимальное юридическое значение для атрибута или параметра. См. javax.management.openmbean . |
mxbean | Строка | MBeanInfo | Строка "true" или "false" смотря по тому, как этот MBean MXBean . Стандартный MBean или MXBean, зарегистрированный непосредственно в Сервере MBean или создаваемом использовании StandardMBean у класса будет это поле в его Дескрипторе MBeanInfo. |
openType | OpenType |
MBeanAttributeInfo MBeanOperationInfo MBeanParameterInfo |
Открытый Тип этого элемента. В случае Это поле может быть установлено для |
originalType | Строка | MBeanAttributeInfo MBeanOperationInfo MBeanParameterInfo |
Исходный тип Java этого элемента, поскольку это появилось в Формат этой строки описывается в Именах типов раздела спецификации MXBean. |
setExceptions | Строка [] | MBeanAttributeInfo | Имена классов исключений, которые могут быть выданы, устанавливая атрибут. Значение этого поля определяется этой спецификацией, но поле не устанавливается или используется API JMX непосредственно. Исключения, выданные, получая атрибут, определяются полем exceptions . |
серьезность | Строка Целое число |
MBeanNotificationInfo | Серьезность этого уведомления. Это может быть 0, чтобы означать неизвестную серьезность или значение от 1 до 6 уровней уменьшения представления серьезности. Это может быть представлено как десятичная строка или Integer . |
с тех пор | Строка | Любой | Версия информационной модели, в которой был представлен этот элемент. Ряд MBeans, определенного приложением, все вместе вызывают информационной моделью. Приложение может также определить версии этой модели, и использовать "since" поле, чтобы записать версию, в которой сначала появился элемент. |
модули | Строка | MBeanAttributeInfo MBeanParameterInfo MBeanOperationInfo |
Модули, в которых атрибут, параметр, или возвращаемое значение работы измеряются, например "bytes" или "seconds" . |
Некоторые дополнительные поля определяются Моделью MBeans. См. информацию для ModelMBeanInfo
, ModelMBeanAttributeInfo
, ModelMBeanConstructorInfo
, ModelMBeanNotificationInfo
, и ModelMBeanOperationInfo
, так же как глава "Модель MBeans"
Ничто не предотвращает использование этих полей в MBeans, которые не являются Моделью MBeans. displayName, серьезность, и поля видимости имеют интерес вне Модели MBeans, например. Но только у Модели MBeans есть предопределенное поведение для этих полей.
Имя | Ввести | Используемый в | Значение |
---|---|---|---|
класс | Строка | ModelMBeanOperationInfo | Класс, где метод определяется (полностью определенный). |
currencyTimeLimit | Число | ModelMBeanInfo ModelMBeanAttributeInfo ModelMBeanOperationInfo |
Сколько времени кэшируемое значение допустимо: <0 никогда, =0 всегда,> 0 секунд. |
значение по умолчанию | Объект | ModelMBeanAttributeInfo | Значение по умолчанию для атрибута. |
descriptorType | Строка | Любой | Тип дескриптора, "mbean", "атрибута", "конструктора", "работы", или "уведомления". |
displayName | Строка | Любой | Удобочитаемое имя этого элемента. |
экспорт | Строка | ModelMBeanInfo | Имя, которое будет использоваться, чтобы экспортировать/представить этот MBean так, чтобы это был findable другими Агентами JMX. |
getMethod | Строка | ModelMBeanAttributeInfo | Имя дескриптора работы для получает метод. |
lastUpdatedTimeStamp | Число | ModelMBeanAttributeInfo ModelMBeanOperationInfo |
Когда значение было установлено. |
журнал | Строка | ModelMBeanInfo ModelMBeanNotificationInfo |
t или T: зарегистрируйте все уведомления, f или F: не зарегистрируйте уведомления. |
файл журнала | Строка | ModelMBeanInfo ModelMBeanNotificationInfo |
Полностью определенное имя файла, чтобы зарегистрировать события к. |
messageID | Строка | ModelMBeanNotificationInfo | Уникальный ключ для текста сообщения (чтобы позволить преобразование, анализ). |
messageText | Строка | ModelMBeanNotificationInfo | Текст уведомления. |
имя | Строка | Любой | Имя этого элемента. |
persistFile | Строка | ModelMBeanInfo | Имя файла, в которое должен быть сохранен MBean. |
persistLocation | Строка | ModelMBeanInfo | Полностью определенное имя каталога, где MBean должен быть сохранен (если соответствующий). |
persistPeriod | Число | ModelMBeanInfo ModelMBeanAttributeInfo |
В секундах частота сохраняет цикл. Используемый, когда persistPolicy является "OnTimer" или "NoMoreOftenThan". |
persistPolicy | Строка | ModelMBeanInfo ModelMBeanAttributeInfo |
Один из: OnUpdate|OnTimer|NoMoreOftenThan|OnUnregister|Always|Never. См. раздел "Поля Дескриптора MBean" в документе спецификации JMX. |
presentationString | Строка | Любой | XML отформатированная строка, чтобы позволить представление данных. |
protocolMap | Дескриптор | ModelMBeanAttributeInfo | См. раздел "Поддержка Карты Протокола" в документе спецификации JMX. Отображения должны быть подходящими для атрибута, и записи могут быть обновлены или увеличены во время выполнения. |
роль | Строка | ModelMBeanConstructorInfo ModelMBeanOperationInfo |
Один из "конструктора", "работы", "метода get", или "метода set". |
setMethod | Строка | ModelMBeanAttributeInfo | Имя дескриптора работы для метода набора. |
серьезность | Число | ModelMBeanNotificationInfo | 0-6, где 0: неизвестный; 1: невосстанавливаемый; 2: критический, отказ; 3: главный, серьезный; 4: незначительный, крайний, ошибка; 5: предупреждение; 6: нормальный, очищенный, информативный |
targetObject | Объект | ModelMBeanOperationInfo | Объект, на котором можно выполнить этот метод. |
targetType | Строка | ModelMBeanOperationInfo | тип ссылки на объект для targetObject. Может быть: ObjectReference | Дескриптор | EJBHandle | IOR | RMIReference. |
значение | Объект | ModelMBeanAttributeInfo ModelMBeanOperationInfo |
Ток (кэшируемое) значение для атрибута или работы. |
видимость | Число | Любой | 1-4, где 1: всегда видимый, 4: редко видимый. |
Модификатор и Тип | Метод и Описание |
---|---|
Объект |
clone()
Возвращает дескриптор, который равен этому дескриптору.
|
boolean |
equals(Object obj)
Сравнивает этот дескриптор с данным объектом.
|
Строка[] |
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)
Наборы все поля в именах полей выстраивают к новому значению с тем же самым индексом в массиве значений полей.
|
Object getFieldValue(String fieldName) throws RuntimeOperationsException
fieldName
- имя поля.RuntimeOperationsException
- если имя поля недопустимо.void setField(String fieldName, Object fieldValue) throws RuntimeOperationsException
Устанавливает значение для определенного имени поля. Это изменит существующее поле или добавит новое поле.
Значение поля будет проверено прежде, чем оно будет установлено. Если это не будет допустимо, то исключение будет выдано. Значение законности зависит от реализации дескриптора.
fieldName
- Имя поля, которое будет установлено. Не может быть нуль или пустой.fieldValue
- Значение поля, которое будет установлено для имени поля. Может быть нуль, если это - допустимое значение для поля.RuntimeOperationsException
- если имя поля или значение поля недопустимы (обернутое исключение IllegalArgumentException
); или если дескриптор является неизменным (обернутое исключение UnsupportedOperationException
).String[] getFields()
setFields(java.lang.String[], java.lang.Object[])
String[] getFieldNames()
Object[] getFieldValues(String... fieldNames)
fieldNames
Строковый параметр массива.fieldNames
- Строковый массив имен полей, для которых должны быть возвращены значения. Если массив будет пуст тогда будет возвращен, то пустой массив. Если массив будет нулем тогда, то все значения будут возвращены, как будто параметр был массивом, возвращенным getFieldNames()
. Если имя поля в массиве не существует, включая случай, где это - нуль или пустая строка, то нуль возвращается для соответствующего возвращаемого элемента массива.fieldNames
пусто, Вы получите пустой массив.void removeField(String fieldName)
fieldName
- Имя строки поля, которое будет удалено. Если имя поля недопустимо, или поле не находится, никакое исключение не выдается.RuntimeOperationsException
- если поле имени существует, и дескриптор является неизменным. Обернутое исключение будет UnsupportedOperationException
.void setFields(String[] fieldNames, Object[] fieldValues) throws RuntimeOperationsException
Наборы все поля в именах полей выстраивают к новому значению с тем же самым индексом в массиве значений полей. Размеры массива должны соответствовать.
Значение поля будет проверено прежде, чем оно будет установлено. Если это не будет допустимо, то исключение будет выдано. Если массивы будут пусты, то никакое изменение не вступит в силу.
fieldNames
- Строковый массив имен полей. Элементы массива и массива не могут быть нулем.fieldValues
- Объектный массив соответствующих значений полей. Массив не может быть нулем. Элементы массива могут быть нулем.RuntimeOperationsException
- если изменение перестало работать по какой-либо причине. Обернутое исключение IllegalArgumentException
если fieldNames
или fieldValues
нуль, или если массивы имеют различные длины, или если есть недопустимое значение в одном из них. Обернутое исключение UnsupportedOperationException
если бы дескриптор является неизменным, и вызов изменил бы свое содержание.getFields()
Object clone() throws RuntimeOperationsException
Возвращает дескриптор, который равен этому дескриптору. Изменения к возвращенному дескриптору не будут иметь никакого эффекта на этот дескриптор, и наоборот. Если этот дескриптор является неизменным, он может выполнить это условие, возвращая себя.
RuntimeOperationsException
- для недопустимого значения для имен полей или значений полей. Если сбои конструкции дескриптора по какой-либо причине, это исключение будет выдано.boolean isValid() throws RuntimeOperationsException
RuntimeOperationsException
- Если сбои проверки законности по какой-либо причине, это исключение будет выдано. Метод возвращает false, если дескриптор не допустим, но выдает это исключение, если попытка определить законность перестала работать.boolean equals(Object obj)
Сравнивает этот дескриптор с данным объектом. Объекты равны, если данным объектом является также Дескриптор, и если у этих двух Дескрипторов есть те же самые имена полей (возможно отличающийся в случае, если) и те же самые присваиваемые значения. Соответствующие значения для поля в этих двух Дескрипторах равны, если следующие условия содержат:
Arrays.deepEquals(Object[],Object[])
должен возвратить true.Object.equals(Object)
должен возвратить true.equals
в классе Object
obj
- объект сравниться с.true
если объекты являются тем же самым; false
иначе.Object.hashCode()
, HashMap
int hashCode()
Возвращает значение хэш-кода для этого дескриптора. Хэш-код вычисляется как сумма хэш-кодов для каждого поля в дескрипторе. Хэш-код поля с именем n
и значение v
n.toLowerCase().hashCode() ^ h
. Здесь h
хэш-код v
, вычисленный следующим образом:
v
нуль тогда h
0.v
примитивный массив тогда h
вычисляется, используя соответствующую перегрузку java.util.Arrays.hashCode
.v
объектный массив тогда h
вычисляется, используя Arrays.deepHashCode(Object[])
.h
v.hashCode()
.hashCode
в классе Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.