クラス AbstractMBeanInfoAssembler

java.lang.ObjectSE
org.springframework.jmx.export.assembler.AbstractMBeanInfoAssembler
実装されたすべてのインターフェース:
MBeanInfoAssembler
既知の直属サブクラス
AbstractReflectiveMBeanInfoAssembler

public abstract class AbstractMBeanInfoAssembler extends ObjectSE implements MBeanInfoAssembler
ModelMBeanInfo インスタンスの作成をカプセル化するが、メタデータの作成をサブクラスに委譲する MBeanInfoAssembler インターフェースの抽象実装。

このクラスは、マネージド Bean インスタンスからの 2 種類のクラス抽出を提供します。getTargetClass(java.lang.Object) は、あらゆる種類の AOP プロキシの背後にあるターゲットクラスを抽出し、getClassToExpose(java.lang.Object) は、アノテーションを検索して JMX ランタイムに公開されるクラスまたはインターフェースを返します。

導入:
1.2
作成者:
Rob Harrop, Juergen Hoeller
  • コンストラクターの詳細

    • AbstractMBeanInfoAssembler

      public AbstractMBeanInfoAssembler()
  • メソッドの詳細

    • getMBeanInfo

      public ModelMBeanInfoSE getMBeanInfo(ObjectSE managedBean, StringSE beanKey) throws JMExceptionSE
      すべての JMX 実装で提供される ModelMBeanInfoSupport クラスのインスタンスを作成し、サブクラスへの呼び出しを通じてメタデータを設定します。
      次で指定:
      インターフェース MBeanInfoAssemblergetMBeanInfo 
      パラメーター:
      managedBean - 公開される Bean (AOP プロキシである可能性があります)
      beanKey - 管理された Bean に関連付けられたキー
      戻り値:
      移入された ModelMBeanInfo インスタンス
      例外:
      JMExceptionSE - エラーの場合
      関連事項:
    • checkManagedBean

      protected void checkManagedBean(ObjectSE managedBean) throws IllegalArgumentExceptionSE
      指定された Bean インスタンスを確認し、このアセンブラで公開できない場合は IllegalArgumentException をスローします。

      デフォルトの実装は空で、すべての Bean インスタンスを受け入れます。

      パラメーター:
      managedBean - 公開される Bean (AOP プロキシである可能性があります)
      例外:
      IllegalArgumentExceptionSE - Bean は露出には無効です
    • getTargetClass

      protected ClassSE<?> getTargetClass(ObjectSE managedBean)
      指定された Bean インスタンスの実際の Bean クラスを返します。これは、説明スタイルの JMX プロパティに公開されるクラスです。

      デフォルトの実装では、AOP プロキシのターゲットクラスを返し、その他のプレーンな Bean クラスを返します。

      パラメーター:
      managedBean - Bean インスタンス (AOP プロキシである可能性があります)
      戻り値:
      公開する Bean クラス
      関連事項:
    • getClassToExpose

      protected ClassSE<?> getClassToExpose(ObjectSE managedBean)
      指定された Bean に公開するクラスまたはインターフェースを返します。これは、属性と操作を検索するクラスです(たとえば、アノテーションをチェックします)。
      パラメーター:
      managedBean - Bean インスタンス (AOP プロキシである可能性があります)
      戻り値:
      公開する Bean クラス
      関連事項:
    • getClassToExpose

      protected ClassSE<?> getClassToExpose(ClassSE<?> beanClass)
      指定された Bean クラスに公開するクラスまたはインターフェースを返します。これは、属性と操作を検索するクラスです
      パラメーター:
      beanClass - Bean クラス (AOP プロキシクラスの可能性があります)
      戻り値:
      公開する Bean クラス
      関連事項:
    • getClassName

      protected StringSE getClassName(ObjectSE managedBean, StringSE beanKey) throws JMExceptionSE
      MBean リソースのクラス名を取得します。

      デフォルトの実装は、クラス名に基づいて MBean の簡単な説明を返します。

      パラメーター:
      managedBean - Bean インスタンス (AOP プロキシである可能性があります)
      beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー
      戻り値:
      MBean の説明
      例外:
      JMExceptionSE - エラーの場合
    • getDescription

      protected StringSE getDescription(ObjectSE managedBean, StringSE beanKey) throws JMExceptionSE
      MBean リソースの説明を取得します。

      デフォルトの実装は、クラス名に基づいて MBean の簡単な説明を返します。

      パラメーター:
      managedBean - Bean インスタンス (AOP プロキシである可能性があります)
      beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー
      例外:
      JMExceptionSE - エラーの場合
    • populateMBeanDescriptor

      protected void populateMBeanDescriptor(DescriptorSE descriptor, ObjectSE managedBean, StringSE beanKey) throws JMExceptionSE
      ModelMBeanInfo インスタンスが構築された後、それが MBeanExporter に渡される前に呼び出されます。

      サブクラスはこのメソッドを実装して、MBean メタデータに記述子を追加できます。デフォルトの実装は空です。

      パラメーター:
      descriptor - MBean リソースの Descriptor
      managedBean - Bean インスタンス (AOP プロキシである可能性があります)
      beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー
      例外:
      JMExceptionSE - エラーの場合
    • getConstructorInfo

      protected ModelMBeanConstructorInfoSE[] getConstructorInfo(ObjectSE managedBean, StringSE beanKey) throws JMExceptionSE
      MBean リソースのコンストラクターメタデータを取得します。サブクラスは、このメソッドを実装して、管理対象リソースの管理インターフェースで公開する必要があるすべてのコンストラクターに適切なメタデータを返す必要があります。

      デフォルトの実装は、ModelMBeanConstructorInfo の空の配列を返します。

      パラメーター:
      managedBean - Bean インスタンス (AOP プロキシである可能性があります)
      beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー
      戻り値:
      コンストラクターのメタデータ
      例外:
      JMExceptionSE - エラーの場合
    • getNotificationInfo

      protected ModelMBeanNotificationInfoSE[] getNotificationInfo(ObjectSE managedBean, StringSE beanKey) throws JMExceptionSE
      MBean リソースの通知メタデータを取得します。サブクラスはこのメソッドを実装して、管理対象リソースの管理インターフェースで公開する必要があるすべての通知に適切なメタデータを返す必要があります。

      デフォルトの実装は、ModelMBeanNotificationInfo の空の配列を返します。

      パラメーター:
      managedBean - Bean インスタンス (AOP プロキシである可能性があります)
      beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー
      戻り値:
      通知メタデータ
      例外:
      JMExceptionSE - エラーの場合
    • getAttributeInfo

      protected abstract ModelMBeanAttributeInfoSE[] getAttributeInfo(ObjectSE managedBean, StringSE beanKey) throws JMExceptionSE
      MBean リソースの属性メタデータを取得します。サブクラスは、このメソッドを実装して、管理対象リソースの管理インターフェースで公開する必要があるすべての属性の適切なメタデータを返す必要があります。
      パラメーター:
      managedBean - Bean インスタンス (AOP プロキシである可能性があります)
      beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー
      戻り値:
      属性メタデータ
      例外:
      JMExceptionSE - エラーの場合
    • getOperationInfo

      protected abstract ModelMBeanOperationInfoSE[] getOperationInfo(ObjectSE managedBean, StringSE beanKey) throws JMExceptionSE
      MBean リソースの操作メタデータを取得します。サブクラスは、このメソッドを実装して、管理対象リソースの管理インターフェースで公開する必要があるすべての操作に適切なメタデータを返す必要があります。
      パラメーター:
      managedBean - Bean インスタンス (AOP プロキシである可能性があります)
      beanKey - MBeanExporter の Bean マップで MBean に関連付けられているキー
      戻り値:
      操作メタデータ
      例外:
      JMExceptionSE - エラーの場合