36 import java.lang.management.MemoryUsage; |
36 import java.lang.management.MemoryUsage; |
37 import java.util.Arrays; |
37 import java.util.Arrays; |
38 import java.util.Locale; |
38 import java.util.Locale; |
39 import java.util.ResourceBundle; |
39 import java.util.ResourceBundle; |
40 import javax.management.openmbean.CompositeData; |
40 import javax.management.openmbean.CompositeData; |
41 import javax.management.openmbean.MXBeanMappingFactory; |
|
42 import javax.management.openmbean.OpenMBeanAttributeInfoSupport; |
41 import javax.management.openmbean.OpenMBeanAttributeInfoSupport; |
43 import javax.management.openmbean.OpenMBeanOperationInfoSupport; |
42 import javax.management.openmbean.OpenMBeanOperationInfoSupport; |
44 import javax.management.openmbean.OpenMBeanParameterInfoSupport; |
43 import javax.management.openmbean.OpenMBeanParameterInfoSupport; |
45 import javax.management.openmbean.OpenType; |
44 import javax.management.openmbean.OpenType; |
46 |
45 |
116 * that is the version of the model in which the element was first |
115 * that is the version of the model in which the element was first |
117 * deprecated, followed by a space, followed by an explanation of the |
116 * deprecated, followed by a space, followed by an explanation of the |
118 * deprecation, for example {@code "1.3 Replaced by the Capacity |
117 * deprecation, for example {@code "1.3 Replaced by the Capacity |
119 * attribute"}.</td> |
118 * attribute"}.</td> |
120 * |
119 * |
121 * <tr><td id="descriptionResourceBundleBaseName"><i>descriptionResource<br> |
120 * <tr><td id="descriptionResourceBundleBaseName">descriptionResource<br> |
122 * BundleBaseName</i></td><td>String</td><td>Any</td> |
121 * BundleBaseName</td><td>String</td><td>Any</td> |
123 * |
122 * |
124 * <td>The base name for the {@link ResourceBundle} in which the key given in |
123 * <td>The base name for the {@link ResourceBundle} in which the key given in |
125 * the {@code descriptionResourceKey} field can be found, for example |
124 * the {@code descriptionResourceKey} field can be found, for example |
126 * {@code "com.example.myapp.MBeanResources"}. See |
125 * {@code "com.example.myapp.MBeanResources"}. The meaning of this |
127 * {@link MBeanInfo#localizeDescriptions MBeanInfo.localizeDescriptions}.</td> |
126 * field is defined by this specification but the field is not set or |
128 * |
127 * used by the JMX API itself.</td> |
129 * <tr><td id="descriptionResourceKey"><i>descriptionResourceKey</i></td> |
128 * |
|
129 * <tr><td id="descriptionResourceKey">descriptionResourceKey</td> |
130 * <td>String</td><td>Any</td> |
130 * <td>String</td><td>Any</td> |
131 * |
131 * |
132 * <td>A resource key for the description of this element. In |
132 * <td>A resource key for the description of this element. In |
133 * conjunction with the {@code descriptionResourceBundleBaseName}, |
133 * conjunction with the {@code descriptionResourceBundleBaseName}, |
134 * this can be used to find a localized version of the description. |
134 * this can be used to find a localized version of the description. |
135 * See {@link MBeanInfo#localizeDescriptions MBeanInfo.localizeDescriptions}. |
135 * The meaning of this field is defined by this specification but the |
136 * </td> |
136 * field is not set or used by the JMX API itself.</td> |
137 * |
137 * |
138 * <tr><td>enabled</td><td>String</td> |
138 * <tr><td>enabled</td><td>String</td> |
139 * <td>MBeanAttributeInfo<br>MBeanNotificationInfo<br>MBeanOperationInfo</td> |
139 * <td>MBeanAttributeInfo<br>MBeanNotificationInfo<br>MBeanOperationInfo</td> |
140 * |
140 * |
141 * <td>The string {@code "true"} or {@code "false"} according as this |
141 * <td>The string {@code "true"} or {@code "false"} according as this |
145 * only be meaningful after the {@code start()} method of an MBean has |
145 * only be meaningful after the {@code start()} method of an MBean has |
146 * been called, and is otherwise disabled. Likewise, a notification |
146 * been called, and is otherwise disabled. Likewise, a notification |
147 * might be disabled if it cannot currently be emitted but could be in |
147 * might be disabled if it cannot currently be emitted but could be in |
148 * other circumstances.</td> |
148 * other circumstances.</td> |
149 * |
149 * |
150 * <tr id="exceptions"><td><i>exceptions</i><td>String[]</td> |
150 * <tr id="exceptions"><td>exceptions<td>String[]</td> |
151 * <td>MBeanAttributeInfo, MBeanConstructorInfo, MBeanOperationInfo</td> |
151 * <td>MBeanAttributeInfo, MBeanConstructorInfo, MBeanOperationInfo</td> |
152 * |
152 * |
153 * <td>The class names of the exceptions that can be thrown when invoking a |
153 * <td>The class names of the exceptions that can be thrown when invoking a |
154 * constructor or operation, or getting an attribute. Exceptions thrown when |
154 * constructor or operation, or getting an attribute. The meaning of this field |
|
155 * is defined by this specification but the field is not set or used by the |
|
156 * JMX API itself. Exceptions thrown when |
155 * setting an attribute are specified by the field |
157 * setting an attribute are specified by the field |
156 * <a href="#setExceptions">{@code setExceptions}</a>. |
158 * <a href="#setExceptions">{@code setExceptions}</a>. |
157 * |
|
158 * <tr id="exceptionErrorCodes"><td>exceptionErrorCodes</td><td>String[]</td> |
|
159 * <td>MBeanAttributeInfo<br>MBeanConstructorInfo<br>MBeanOperationInfo</td> |
|
160 * |
|
161 * <td>The {@linkplain GenericMBeanException#getErrorCode() error codes} |
|
162 * that can appear in a {@link GenericMBeanException} thrown when getting |
|
163 * this attribute or invoking this operation or constructor. See also |
|
164 * <a href="#setExceptionErrorCodes">{@code setExceptionErrorCodes}</a>. |
|
165 * |
|
166 * <tr id="exceptionUserDataTypes"><td>exceptionUserDataTypes</td> |
|
167 * <td>{@link javax.management.openmbean.CompositeType}[]</td> |
|
168 * <td>MBeanAttributeInfo<br>MBeanConstructorInfo<br>MBeanOperationInfo</td> |
|
169 * |
|
170 * <td>The types of {@linkplain GenericMBeanException#getUserData() userData} |
|
171 * that can appear in a {@link GenericMBeanException} thrown when getting |
|
172 * this attribute or invoking this operation or constructor. See also |
|
173 * <a href="#setExceptionUserDataTypes">{@code setExceptionUserDataTypes}</a>. |
|
174 * |
159 * |
175 * <tr id="immutableInfo"><td><i>immutableInfo</i><td>String</td> |
160 * <tr id="immutableInfo"><td><i>immutableInfo</i><td>String</td> |
176 * <td>MBeanInfo</td> |
161 * <td>MBeanInfo</td> |
177 * |
162 * |
178 * <td>The string {@code "true"} or {@code "false"} according as this |
163 * <td>The string {@code "true"} or {@code "false"} according as this |
211 * <td>{@literal Set<?>}</td><td>MBeanAttributeInfo<br>MBeanParameterInfo</td> |
196 * <td>{@literal Set<?>}</td><td>MBeanAttributeInfo<br>MBeanParameterInfo</td> |
212 * |
197 * |
213 * <td>Legal values for an attribute or parameter. See |
198 * <td>Legal values for an attribute or parameter. See |
214 * {@link javax.management.openmbean}.</td> |
199 * {@link javax.management.openmbean}.</td> |
215 * |
200 * |
216 * <tr id="locale"><td><i>locale</i></td> |
201 * <tr id="locale"><td>locale</td> |
217 * <td>String</td><td>Any</td> |
202 * <td>String</td><td>Any</td> |
218 * |
203 * |
219 * <td>The {@linkplain Locale locale} of the description in this |
204 * <td>The {@linkplain Locale locale} of the description in this |
220 * {@code MBeanInfo}, {@code MBeanAttributeInfo}, etc, as returned |
205 * {@code MBeanInfo}, {@code MBeanAttributeInfo}, etc, as returned |
221 * by {@link Locale#toString()}.</td> |
206 * by {@link Locale#toString()}.</td> |
252 * MBean is an {@link MXBean}. A Standard MBean or MXBean registered |
237 * MBean is an {@link MXBean}. A Standard MBean or MXBean registered |
253 * directly with the MBean Server or created using the {@link |
238 * directly with the MBean Server or created using the {@link |
254 * StandardMBean} class will have this field in its MBeanInfo |
239 * StandardMBean} class will have this field in its MBeanInfo |
255 * Descriptor.</td> |
240 * Descriptor.</td> |
256 * |
241 * |
257 * <tr><td id="mxbeanMappingFactoryClass"><i>mxbeanMappingFactoryClass</i> |
|
258 * </td><td>String</td> |
|
259 * <td>MBeanInfo</td> |
|
260 * |
|
261 * <td>The name of the {@link MXBeanMappingFactory} class that was used for this |
|
262 * MXBean, if it was not the {@linkplain MXBeanMappingFactory#DEFAULT default} |
|
263 * one.</td> |
|
264 * |
|
265 * <tr><td id="objectNameTemplate"><i>objectNameTemplate</i> |
|
266 * </td><td>String</td> |
|
267 * <td>MBeanInfo</td> |
|
268 * |
|
269 * <td>The template to use to name this MBean. Its value must be compliant with |
|
270 * the specification of the {@link ObjectNameTemplate} annotation.</td> |
|
271 * |
|
272 * <tr id="openType"><td><i>openType</i><td>{@link OpenType}</td> |
242 * <tr id="openType"><td><i>openType</i><td>{@link OpenType}</td> |
273 * <td>MBeanAttributeInfo<br>MBeanOperationInfo<br>MBeanParameterInfo</td> |
243 * <td>MBeanAttributeInfo<br>MBeanOperationInfo<br>MBeanParameterInfo</td> |
274 * |
244 * |
275 * <td><p>The Open Type of this element. In the case of {@code |
245 * <td><p>The Open Type of this element. In the case of {@code |
276 * MBeanAttributeInfo} and {@code MBeanParameterInfo}, this is the |
246 * MBeanAttributeInfo} and {@code MBeanParameterInfo}, this is the |
304 * |
274 * |
305 * <tr id="setExceptions"><td><i>setExceptions</i><td>String[]</td> |
275 * <tr id="setExceptions"><td><i>setExceptions</i><td>String[]</td> |
306 * <td>MBeanAttributeInfo</td> |
276 * <td>MBeanAttributeInfo</td> |
307 * |
277 * |
308 * <td>The class names of the exceptions that can be thrown when setting |
278 * <td>The class names of the exceptions that can be thrown when setting |
309 * an attribute. Exceptions thrown when getting an attribute are specified |
279 * an attribute. The meaning of this field |
|
280 * is defined by this specification but the field is not set or used by the |
|
281 * JMX API itself. Exceptions thrown when getting an attribute are specified |
310 * by the field <a href="#exceptions">{@code exceptions}</a>. |
282 * by the field <a href="#exceptions">{@code exceptions}</a>. |
311 * |
|
312 * <tr id="setExceptionErrorCodes"><td>setExceptionErrorCodes</td> |
|
313 * <td>String[]</td><td>MBeanAttributeInfo</td> |
|
314 * |
|
315 * <td>The {@linkplain GenericMBeanException#getErrorCode() error codes} |
|
316 * that can appear in a {@link GenericMBeanException} thrown when setting |
|
317 * this attribute. See also |
|
318 * <a href="#exceptionErrorCodes">{@code exceptionErrorCodes}</a>. |
|
319 * |
|
320 * <tr id="setExceptionUserDataTypes"><td>setExceptionUserDataTypes</td> |
|
321 * <td>{@link javax.management.openmbean.CompositeType}[]</td> |
|
322 * <td>MBeanAttributeInfo</td> |
|
323 * |
|
324 * <td>The types of {@linkplain GenericMBeanException#getUserData() userData} |
|
325 * that can appear in a {@link GenericMBeanException} thrown when setting |
|
326 * this attribute. See also |
|
327 * <a href="#exceptionUserDataTypes">{@code exceptionUserDataTypes}</a>. |
|
328 * |
283 * |
329 * <tr><td>severity</td><td>String<br>Integer</td> |
284 * <tr><td>severity</td><td>String<br>Integer</td> |
330 * <td>MBeanNotificationInfo</td> |
285 * <td>MBeanNotificationInfo</td> |
331 * |
286 * |
332 * <td>The severity of this notification. It can be 0 to mean |
287 * <td>The severity of this notification. It can be 0 to mean |