クラス JmxUtils

java.lang.ObjectSE
org.springframework.jmx.support.JmxUtils

public abstract class JmxUtils extends ObjectSE
Spring JMX をサポートする汎用ユーティリティメソッドのコレクション。MBeanServer を見つけるための便利なメソッドが含まれています。
導入:
1.2
作成者:
Rob Harrop, Juergen Hoeller
関連事項:
  • フィールドの詳細

    • IDENTITY_OBJECT_NAME_KEY

      public static final StringSE IDENTITY_OBJECT_NAME_KEY
      既存の ObjectNameSE を対応する管理対象リソースの ID ハッシュコードで拡張するときに使用されるキー。
      関連事項:
  • コンストラクターの詳細

    • JmxUtils

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

    • locateMBeanServer

      public static MBeanServerSE locateMBeanServer() throws MBeanServerNotFoundException
      ローカルで実行中の MBeanServer を見つけようとします。MBeanServer が見つからない場合は失敗します。複数の MBeanServer が見つかった場合は警告をログに記録し、リストから最初の MBeanServer を返します。
      戻り値:
      MBeanServer が見つかった場合
      例外:
      MBeanServerNotFoundException - MBeanServer が見つからなかった場合
      関連事項:
    • locateMBeanServer

      public static MBeanServerSE locateMBeanServer(@Nullable StringSE agentId) throws MBeanServerNotFoundException
      ローカルで実行中の MBeanServer を見つけようとします。MBeanServer が見つからない場合は失敗します。複数の MBeanServer が見つかった場合は警告をログに記録し、リストから最初の MBeanServer を返します。
      パラメーター:
      agentId - 取得する MBeanServer のエージェント識別子。このパラメーターが null の場合、登録されているすべての MBeanServer が考慮されます。空の文字列が指定された場合、プラットフォーム MBeanServer が返されます。
      戻り値:
      MBeanServer が見つかった場合
      例外:
      MBeanServerNotFoundException - MBeanServer が見つからなかった場合
      関連事項:
    • parameterInfoToTypes

      @Nullable public static ClassSE<?>[] parameterInfoToTypes(@Nullable MBeanParameterInfoSE[] paramInfo) throws ClassNotFoundExceptionSE
      MBeanParameterInfo の配列を、パラメーターに対応する Class インスタンスの配列に変換します。
      パラメーター:
      paramInfo - JMX パラメーター情報
      戻り値:
      クラスとしてのパラメーターの型
      例外:
      ClassNotFoundExceptionSE - パラメーター型を解決できなかった場合
    • parameterInfoToTypes

      @Nullable public static ClassSE<?>[] parameterInfoToTypes(@Nullable MBeanParameterInfoSE[] paramInfo, @Nullable ClassLoaderSE classLoader) throws ClassNotFoundExceptionSE
      MBeanParameterInfo の配列を、パラメーターに対応する Class インスタンスの配列に変換します。
      パラメーター:
      paramInfo - JMX パラメーター情報
      classLoader - パラメーター型のロードに使用する ClassLoader
      戻り値:
      クラスとしてのパラメーターの型
      例外:
      ClassNotFoundExceptionSE - パラメーター型を解決できなかった場合
    • getMethodSignature

      public static StringSE[] getMethodSignature(MethodSE method)
      メソッドの引数シグネチャーを表す String[] を作成します。配列内の各要素は、メソッドのシグネチャー内の対応する引数の完全修飾クラス名です。
      パラメーター:
      method - 引数の署名を作成するメソッド
      戻り値:
      引数型の配列としての署名
    • getAttributeName

      public static StringSE getAttributeName(PropertyDescriptorSE property, boolean useStrictCasing)
      指定された JavaBeans プロパティに使用する JMX 属性名を返します。

      厳密な大文字小文字を使用する場合、getFoo() などの getter メソッドを使用した JavaBean プロパティは、Foo と呼ばれる属性に変換されます。厳密な大文字小文字の区別を無効にすると、getFoo() は foo だけに変換されます。

      パラメーター:
      property - JavaBeans プロパティ記述子
      useStrictCasing - 厳密なケーシングを使用するかどうか
      戻り値:
      使用する JMX 属性名
    • appendIdentityToObjectName

      public static ObjectNameSE appendIdentityToObjectName(ObjectNameSE objectName, ObjectSE managedResource) throws MalformedObjectNameExceptionSE
      追加のキー / 値ペアを既存の ObjectNameSE に追加します。キーは静的値 identity で、値は提供された ObjectNameSE で公開されている管理対象リソースの ID ハッシュコードです。これを使用して、特定の Bean またはクラスの個別のインスタンスごとに一意の ObjectNameSE を提供できます。ObjectNamingStrategy によって提供されるテンプレート値に基づいて、一連の管理対象リソースの実行時に ObjectNamesSE を生成するときに役立ちます。
      パラメーター:
      objectName - オリジナルの JMX ObjectName
      managedResource - MBean インスタンス
      戻り値:
      MBean ID が追加された ObjectName
      例外:
      MalformedObjectNameExceptionSE - オブジェクト名の指定が無効な場合
      関連事項:
    • getClassToExpose

      public static ClassSE<?> getClassToExpose(ObjectSE managedBean)
      指定された Bean に公開するクラスまたはインターフェースを返します。これは、属性と操作を検索するクラスです(たとえば、アノテーションをチェックします)。

      この実装は、CGLIB プロキシのスーパークラスと指定された Bean のクラスを返します(JDK プロキシまたはプレーン Bean クラスの場合)。

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

      public static ClassSE<?> getClassToExpose(ClassSE<?> clazz)
      指定された Bean クラスに公開するクラスまたはインターフェースを返します。これは、属性と操作を検索するクラスです(たとえば、アノテーションをチェックします)。

      この実装は、CGLIB プロキシのスーパークラスと指定された Bean のクラスを返します(JDK プロキシまたはプレーン Bean クラスの場合)。

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

      public static boolean isMBean(@Nullable ClassSE<?> clazz)
      指定された Bean クラスがそのまま MBean として適格かどうかを判断します。

      この実装は、DynamicMBeanSE クラスと、対応する "* MBean" インターフェース(標準 MBean)または対応する "* MXBean" インターフェース(Java MXBeans)を持つクラスをチェックします。

      パラメーター:
      clazz - 分析する Bean クラス
      戻り値:
      クラスが MBean として適格かどうか
      関連事項:
    • getMBeanInterface

      @Nullable public static ClassSE<?> getMBeanInterface(@Nullable ClassSE<?> clazz)
      指定されたクラスの標準 MBean インターフェースがあればそれを返します(つまり、名前が指定されたクラスのクラス名と一致するが、接尾辞が "MBean" のインターフェース)。
      パラメーター:
      clazz - チェックするクラス
      戻り値:
      指定されたクラスの標準 MBean インターフェース
    • getMXBeanInterface

      @Nullable public static ClassSE<?> getMXBeanInterface(@Nullable ClassSE<?> clazz)
      指定されたクラスの JavaMXBean インターフェース(つまり、名前が "MXBean" で終わるインターフェース、および / または適切な MXBean アノテーションを持つインターフェース)を返します。
      パラメーター:
      clazz - チェックするクラス
      戻り値:
      指定されたクラスに MXBean インターフェースがあるかどうか