public abstract class AbstractMBeanInfoAssembler extends java.lang.Object implements MBeanInfoAssembler
ModelMBeanInfo インスタンスの作成をカプセル化するが、メタデータの作成をサブクラスに委譲する MBeanInfoAssembler インターフェースの抽象実装。 このクラスは、マネージド Bean インスタンスからの 2 種類のクラス抽出を提供します。getTargetClass(java.lang.Object) は、あらゆる種類の AOP プロキシの背後にあるターゲットクラスを抽出し、getClassToExpose(java.lang.Object) は、アノテーションを検索して JMX ランタイムに公開されるクラスまたはインターフェースを返します。
| コンストラクターと説明 |
|---|
AbstractMBeanInfoAssembler() |
| 修飾子と型 | メソッドと説明 |
|---|---|
protected void | checkManagedBean(java.lang.Object managedBean) 指定された Bean インスタンスを確認し、このアセンブラで公開できない場合は IllegalArgumentException をスローします。 |
protected abstract javax.management.modelmbean.ModelMBeanAttributeInfo[] | getAttributeInfo(java.lang.Object managedBean, java.lang.String beanKey)MBean リソースの属性メタデータを取得します。 |
protected java.lang.String | getClassName(java.lang.Object managedBean, java.lang.String beanKey)MBean リソースのクラス名を取得します。 |
protected java.lang.Class<?> | getClassToExpose(java.lang.Class<?> beanClass) 指定された Bean クラスに公開するクラスまたはインターフェースを返します。 |
protected java.lang.Class<?> | getClassToExpose(java.lang.Object managedBean) 指定された Bean に公開するクラスまたはインターフェースを返します。 |
protected javax.management.modelmbean.ModelMBeanConstructorInfo[] | getConstructorInfo(java.lang.Object managedBean, java.lang.String beanKey)MBean リソースのコンストラクターメタデータを取得します。 |
protected java.lang.String | getDescription(java.lang.Object managedBean, java.lang.String beanKey)MBean リソースの説明を取得します。 |
javax.management.modelmbean.ModelMBeanInfo | getMBeanInfo(java.lang.Object managedBean, java.lang.String beanKey) すべての JMX 実装で提供される ModelMBeanInfoSupport クラスのインスタンスを作成し、サブクラスへの呼び出しを通じてメタデータを設定します。 |
protected javax.management.modelmbean.ModelMBeanNotificationInfo[] | getNotificationInfo(java.lang.Object managedBean, java.lang.String beanKey)MBean リソースの通知メタデータを取得します。 |
protected abstract javax.management.modelmbean.ModelMBeanOperationInfo[] | getOperationInfo(java.lang.Object managedBean, java.lang.String beanKey)MBean リソースの操作メタデータを取得します。 |
protected java.lang.Class<?> | getTargetClass(java.lang.Object managedBean) 指定された Bean インスタンスの実際の Bean クラスを返します。 |
protected void | populateMBeanDescriptor(javax.management.Descriptor descriptor, java.lang.Object managedBean, java.lang.String beanKey)ModelMBeanInfo インスタンスが構築された後、それが MBeanExporter に渡される前に呼び出されます。 |
public javax.management.modelmbean.ModelMBeanInfo getMBeanInfo(java.lang.Object managedBean,
java.lang.String beanKey)
throws javax.management.JMExceptionModelMBeanInfoSupport クラスのインスタンスを作成し、サブクラスへの呼び出しを通じてメタデータを設定します。MBeanInfoAssembler 内の getMBeanInfo managedBean - 公開される Bean (AOP プロキシである可能性があります)beanKey - 管理された Bean に関連付けられたキー javax.management.JMException - エラーの場合 getDescription(Object, String), getAttributeInfo(Object, String), getConstructorInfo(Object, String), getOperationInfo(Object, String), getNotificationInfo(Object, String), populateMBeanDescriptor(javax.management.Descriptor, Object, String)protected void checkManagedBean(java.lang.Object managedBean)
throws java.lang.IllegalArgumentExceptionデフォルトの実装は空で、すべての Bean インスタンスを受け入れます。
managedBean - 公開される Bean (AOP プロキシである可能性があります)java.lang.IllegalArgumentException - Bean は露出には無効です protected java.lang.Class<?> getTargetClass(java.lang.Object managedBean)
デフォルトの実装では、AOP プロキシのターゲットクラスを返し、その他のプレーンな Bean クラスを返します。
managedBean - Bean インスタンス (AOP プロキシである可能性があります)AopUtils.getTargetClass(Object)protected java.lang.Class<?> getClassToExpose(java.lang.Object managedBean)
managedBean - Bean インスタンス (AOP プロキシである可能性があります)JmxUtils.getClassToExpose(Object)protected java.lang.Class<?> getClassToExpose(java.lang.Class<?> beanClass)
beanClass - Bean クラス (AOP プロキシクラスの可能性があります)JmxUtils.getClassToExpose(Class)protected java.lang.String getClassName(java.lang.Object managedBean,
java.lang.String beanKey)
throws javax.management.JMExceptionデフォルトの実装は、クラス名に基づいて MBean の簡単な説明を返します。
managedBean - Bean インスタンス (AOP プロキシである可能性があります)beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー javax.management.JMException - エラーの場合 protected java.lang.String getDescription(java.lang.Object managedBean,
java.lang.String beanKey)
throws javax.management.JMExceptionデフォルトの実装は、クラス名に基づいて MBean の簡単な説明を返します。
managedBean - Bean インスタンス (AOP プロキシである可能性があります)beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー javax.management.JMException - エラーの場合 protected void populateMBeanDescriptor(javax.management.Descriptor descriptor,
java.lang.Object managedBean,
java.lang.String beanKey)
throws javax.management.JMExceptionModelMBeanInfo インスタンスが構築された後、それが MBeanExporter に渡される前に呼び出されます。サブクラスはこのメソッドを実装して、MBean メタデータに記述子を追加できます。デフォルトの実装は空です。
descriptor - MBean リソースの Descriptor。managedBean - Bean インスタンス (AOP プロキシである可能性があります)beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー javax.management.JMException - エラーの場合 protected javax.management.modelmbean.ModelMBeanConstructorInfo[] getConstructorInfo(java.lang.Object managedBean,
java.lang.String beanKey)
throws javax.management.JMException デフォルトの実装は、ModelMBeanConstructorInfo の空の配列を返します。
managedBean - Bean インスタンス (AOP プロキシである可能性があります)beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー javax.management.JMException - エラーの場合 protected javax.management.modelmbean.ModelMBeanNotificationInfo[] getNotificationInfo(java.lang.Object managedBean,
java.lang.String beanKey)
throws javax.management.JMException デフォルトの実装は、ModelMBeanNotificationInfo の空の配列を返します。
managedBean - Bean インスタンス (AOP プロキシである可能性があります)beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー javax.management.JMException - エラーの場合 protected abstract javax.management.modelmbean.ModelMBeanAttributeInfo[] getAttributeInfo(java.lang.Object managedBean,
java.lang.String beanKey)
throws javax.management.JMExceptionmanagedBean - Bean インスタンス (AOP プロキシである可能性があります)beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー javax.management.JMException - エラーの場合 protected abstract javax.management.modelmbean.ModelMBeanOperationInfo[] getOperationInfo(java.lang.Object managedBean,
java.lang.String beanKey)
throws javax.management.JMExceptionmanagedBean - Bean インスタンス (AOP プロキシである可能性があります)beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー javax.management.JMException - エラーの場合