public abstract class JmxUtils
extends java.lang.Object
locateMBeanServer()
修飾子と型 | フィールドと説明 |
---|---|
static java.lang.String | IDENTITY_OBJECT_NAME_KEY 対応する管理対象リソースの ID ハッシュコードを使用して既存の ObjectName を継承するときに使用されるキー。 |
コンストラクターと説明 |
---|
JmxUtils() |
修飾子と型 | メソッドと説明 |
---|---|
static javax.management.ObjectName | appendIdentityToObjectName(javax.management.ObjectName objectName, java.lang.Object managedResource) 追加のキー / 値のペアを既存の ObjectName に追加します。キーは、静的値 identity であり、値は、提供された ObjectName で公開されている管理対象リソースの ID ハッシュコードです。 |
static java.lang.String | getAttributeName(java.beans.PropertyDescriptor property, boolean useStrictCasing) 指定された JavaBeans プロパティに使用する JMX 属性名を返します。 |
static java.lang.Class<?> | getClassToExpose(java.lang.Class<?> clazz) 指定された Bean クラスに公開するクラスまたはインターフェースを返します。 |
static java.lang.Class<?> | getClassToExpose(java.lang.Object managedBean) 指定された Bean に公開するクラスまたはインターフェースを返します。 |
static java.lang.Class<?> | getMBeanInterface(java.lang.Class<?> clazz) 指定されたクラスの標準 MBean インターフェースがあればそれを返します(つまり、名前が指定されたクラスのクラス名と一致するが、接尾辞が "MBean" のインターフェース)。 |
static java.lang.String[] | getMethodSignature(java.lang.reflect.Method method) メソッドの引数シグニチャーを表す String[] を作成します。 |
static java.lang.Class<?> | getMXBeanInterface(java.lang.Class<?> clazz) 指定されたクラスに Java 6 MXBean インターフェースが存在する場合は、それが存在する場合(つまり、名前が "MXBean" で終わるか、適切な MXBean アノテーションを持っているインターフェース)を返します。 |
static boolean | isMBean(java.lang.Class<?> clazz) 指定された Bean クラスがそのまま MBean として適格かどうかを判断します。 |
static javax.management.MBeanServer | locateMBeanServer() ローカルで実行中の MBeanServer を見つけようとします。 |
static javax.management.MBeanServer | locateMBeanServer(java.lang.String agentId) ローカルで実行中の MBeanServer を見つけようとします。 |
static java.lang.Class<?>[] | parameterInfoToTypes(javax.management.MBeanParameterInfo[] paramInfo) MBeanParameterInfo の配列を、パラメーターに対応する Class インスタンスの配列に変換します。 |
static java.lang.Class<?>[] | parameterInfoToTypes(javax.management.MBeanParameterInfo[] paramInfo, java.lang.ClassLoader classLoader) MBeanParameterInfo の配列を、パラメーターに対応する Class インスタンスの配列に変換します。 |
public static final java.lang.String IDENTITY_OBJECT_NAME_KEY
ObjectName
を継承するときに使用されるキー。public static javax.management.MBeanServer locateMBeanServer() throws MBeanServerNotFoundException
MBeanServer
を見つけようとします。MBeanServer
が見つからない場合は失敗します。複数の MBeanServer
が見つかった場合は警告をログに記録し、リストから最初の MBeanServer
を返します。MBeanServer
が見つかった場合 MBeanServerNotFoundException
- MBeanServer
が見つからなかった場合 MBeanServerFactory.findMBeanServer(java.lang.String)
public static javax.management.MBeanServer locateMBeanServer(@Nullable java.lang.String agentId) throws MBeanServerNotFoundException
MBeanServer
を見つけようとします。MBeanServer
が見つからない場合は失敗します。複数の MBeanServer
が見つかった場合は警告をログに記録し、リストから最初の MBeanServer
を返します。agentId
- 取得する MBeanServer のエージェント識別子。このパラメーターが null
の場合、登録されているすべての MBeanServer が考慮されます。空の文字列が指定された場合、プラットフォーム MBeanServer が返されます。MBeanServer
が見つかった場合 MBeanServerNotFoundException
- MBeanServer
が見つからなかった場合 MBeanServerFactory.findMBeanServer(String)
@Nullable public static java.lang.Class<?>[] parameterInfoToTypes(@Nullable javax.management.MBeanParameterInfo[] paramInfo) throws java.lang.ClassNotFoundException
MBeanParameterInfo
の配列を、パラメーターに対応する Class
インスタンスの配列に変換します。paramInfo
- JMX パラメーター情報 java.lang.ClassNotFoundException
- パラメーター型を解決できなかった場合 @Nullable public static java.lang.Class<?>[] parameterInfoToTypes(@Nullable javax.management.MBeanParameterInfo[] paramInfo, @Nullable java.lang.ClassLoader classLoader) throws java.lang.ClassNotFoundException
MBeanParameterInfo
の配列を、パラメーターに対応する Class
インスタンスの配列に変換します。paramInfo
- JMX パラメーター情報 classLoader
- パラメーター型のロードに使用する ClassLoaderjava.lang.ClassNotFoundException
- パラメーター型を解決できなかった場合 public static java.lang.String[] getMethodSignature(java.lang.reflect.Method method)
String[]
を作成します。配列の各要素は、メソッドシグネチャーの対応する引数の完全修飾クラス名です。method
- 引数の署名を作成するメソッド public static java.lang.String getAttributeName(java.beans.PropertyDescriptor property, boolean useStrictCasing)
厳密な大文字小文字を使用する場合、getFoo()
などの getter メソッドを使用した JavaBean プロパティは、Foo
と呼ばれる属性に変換されます。厳密な大文字小文字の区別を無効にすると、getFoo()
は foo
だけに変換されます。
property
- JavaBeans プロパティ記述子 useStrictCasing
- 厳密なケーシングを使用するかどうか public static javax.management.ObjectName appendIdentityToObjectName(javax.management.ObjectName objectName, java.lang.Object managedResource) throws javax.management.MalformedObjectNameException
ObjectName
に追加します。キーは、静的値 identity
であり、値は、提供された ObjectName
で公開されている管理対象リソースの ID ハッシュコードです。これを使用して、特定の Bean またはクラスの個別のインスタンスごとに一意の ObjectName
を提供できます。ObjectNamingStrategy
によって提供されるテンプレート値に基づいて、管理対象リソースのセットに対して実行時に ObjectNames
を生成する場合に役立ちます。objectName
- オリジナルの JMX ObjectNamemanagedResource
- MBean インスタンス javax.management.MalformedObjectNameException
- オブジェクト名の指定が無効な場合 ObjectUtils.getIdentityHexString(Object)
public static java.lang.Class<?> getClassToExpose(java.lang.Object managedBean)
この実装は、CGLIB プロキシのスーパークラスと指定された Bean のクラスを返します(JDK プロキシまたはプレーン Bean クラスの場合)。
managedBean
- Bean インスタンス (AOP プロキシである可能性があります)ClassUtils.getUserClass(Object)
public static java.lang.Class<?> getClassToExpose(java.lang.Class<?> clazz)
この実装は、CGLIB プロキシのスーパークラスと指定された Bean のクラスを返します(JDK プロキシまたはプレーン Bean クラスの場合)。
clazz
- Bean クラス (AOP プロキシクラスの可能性があります)ClassUtils.getUserClass(Class)
public static boolean isMBean(@Nullable java.lang.Class<?> clazz)
この実装は、DynamicMBean
クラスと、対応する "* MBean" インターフェース(標準 MBean)または対応する "* MXBean" インターフェース(Java 6 MXBeans)を持つクラスをチェックします。
clazz
- 分析する Bean クラス MBeanExporter.isMBean(Class)
@Nullable public static java.lang.Class<?> getMBeanInterface(@Nullable java.lang.Class<?> clazz)
clazz
- チェックするクラス