|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjp.terasoluna.fw.batch.monitor.MBeanRegister
public class MBeanRegister
ジョブをJMXで監視するための登録クラス。
jp.terasoluna.fw.batch.monitor.MonitorableJobStatusMBeanを実装した クラスが監視対象となる。
設定例
フィールドの概要 | |
---|---|
private static Log |
log
ログインスタンス。 |
private static int |
manageableJobSize
MBeanServerに登録するMBeanの上限値。 |
private static int |
mbeanCount
ジョブ登録数のカウント。 |
private static java.util.Queue<java.lang.String> |
registerChildObjectName
MBeanServerに登録された子ジョブのMBean名を保持するマップ。 |
private static java.util.Map<java.lang.String,JobStatus> |
registerMBeanJobStatusMap
MBeanServerに登録されたMBean名を保持するマップ。 |
private static java.util.Queue<java.lang.String> |
registerParentObjectName
MBeanServerに登録された親ジョブのMBean名を保持するマップ。 |
private javax.management.MBeanServer |
server
MBean を操作するためのインスタンス。 |
コンストラクタの概要 | |
---|---|
MBeanRegister()
コンストラクタ。 |
メソッドの概要 | |
---|---|
private boolean |
deleteMBean(java.lang.String registerName)
MBeanServerからMBeanを削除する。 |
private java.lang.String |
getRegistName(JobStatus jobStatus)
MBean登録名を生成し、返却する。 |
void |
registerMBean(JobStatus jobStatus)
MBeanServerにJobResult(mbean)を登録する。 |
void |
setManageableJobSize(int manageableJobSize)
MBeanServerへの登録上限値を設定する。 |
private void |
unregisterMBean()
MBeanの登録を解除する。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
private static final Log log
private static int manageableJobSize
private javax.management.MBeanServer server
private static java.util.Map<java.lang.String,JobStatus> registerMBeanJobStatusMap
private static int mbeanCount
private static java.util.Queue<java.lang.String> registerParentObjectName
private static java.util.Queue<java.lang.String> registerChildObjectName
コンストラクタの詳細 |
---|
public MBeanRegister()
メソッドの詳細 |
---|
public void registerMBean(JobStatus jobStatus)
jobStatus
- ジョブステータスprivate java.lang.String getRegistName(JobStatus jobStatus)
親ジョブの登録名は
「JOB:name=ジョブID」 または
「JOB:name=ジョブID_ジョブリクエストNo」(ジョブリクエストNoが空文字以外
の場合)であり、 子ジョブの登録名は
「親ジョブの登録名,name2=分割キー」 となる。
jobStatus
- ジョブステータス
private void unregisterMBean() throws javax.management.MalformedObjectNameException, java.lang.NullPointerException, javax.management.AttributeNotFoundException, javax.management.InstanceNotFoundException, javax.management.MBeanException, javax.management.ReflectionException
登録数がmanageableJobSize
を超える場合、
登録順が古くジョブ状態が終了のものから解除する。
終了状態のジョブが無い場合は、終了状態に関係なく
登録順が古い子ジョブから解除する。
java.lang.NullPointerException
- ObjectNameの引数がnullの場合
javax.management.MalformedObjectNameException
- ObjectNameの引数の文字列の形式が正しくない場合
javax.management.ReflectionException
- 設定メソッドの呼び出し時にスローされる
java.lang.Exception をラップする場合
javax.management.MBeanException
- MBeanの取得メソッドによってスローされる例外をラップする場合
javax.management.InstanceNotFoundException
- 指定されたMBeanがMBeanサーバに登録されていない場合
javax.management.AttributeNotFoundException
- MBean の指定された属性がアクセス不能である場合private boolean deleteMBean(java.lang.String registerName) throws javax.management.InstanceNotFoundException, javax.management.MBeanRegistrationException, javax.management.MalformedObjectNameException, java.lang.NullPointerException
registerName
- MBean登録名
javax.management.InstanceNotFoundException
- 指定されたMBeanが存在しない場合の例外
javax.management.MBeanRegistrationException
- MBeanRegistrationで発生した例外
javax.management.MalformedObjectNameException
- 文字列の形式が有効なObjectNameに対応していない場合の例外
java.lang.NullPointerException
- NullPointerExceptionpublic void setManageableJobSize(int manageableJobSize)
manageableJobSize
- 登録上限値
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |