jp.go.aist.dmrc.platform.beans.system.performance
クラス PFProfileAnalyzer

java.lang.Object
  上位を拡張 jp.go.aist.dmrc.platform.beans.system.performance.PFProfileAnalyzer
すべての実装されたインタフェース:
java.io.Serializable, PFComponent, PFDataCreateEventSource, PFEventSource

public class PFProfileAnalyzer
extends java.lang.Object
implements PFComponent, PFDataCreateEventSource

JDK付属のプロファイラによる出力結果を解析するためのコンポーネント。 出力結果のテキストファイルからラベル付きリストを作成する。

プロファイラを用いたアプリケーション実行には、VM起動時に以下のオプションを付ける。

-Xrunhprof:cpu=times,heap=sites

終了後にデフォルトではjava.hprof.txtという名前のテキストファイルが作成され、 このコンポーネントはこのファイルを対象として構造を解析し、ラベル付きリストを作成する。

作成されたラベル付きリストには3つの要素が含まれている。

このコンポーネントから以下のイベントが発生する。

関連項目:
直列化された形式

コンストラクタの概要
PFProfileAnalyzer()
          デフォルトコンストラクタ
 
メソッドの概要
 void addPFDataCreateListener(PFDataCreateListener lis)
          引数で与えられたイベントリスナを登録し、 データ生成イベント発生時に処理を行う対象とする。
 int getComponentID()
          コンポーネントIDを取得する。
 java.lang.String getComponentKey()
          コンポーネントキーを取得する。
 PFMultiLocaleString getComponentKeys()
          全ロケール分のコンポーネントキーを返す。
 java.lang.String getComponentName()
          コンポーネント名称を取得する。
 java.lang.String getComponentPublicName()
          コンポーネント公開名を取得する.
 java.lang.String getComponentString()
          コンポーネントの文字列表現を取得する。
 java.util.Iterator getPFDataCreateListenerList()
          データ生成イベントリスナ配列を取得する。
 boolean isAllowPullTransfer()
          他PFからのPull型コンポーネント転送要求に対する可否属性を取得する.
 boolean isAllowPushTransfer()
          他PFへのPush型コンポーネント転送要求に対する可否属性を取得する.
 boolean isAllowRemoteInvocation()
          他PFからのコンポーネント連携要求に対する可否属性を取得する.
 void localeUpdated()
          ロケール変更に対応する。
 void read(java.lang.String filename)
          プロファイラの出力結果をロードする。
 void removePFDataCreateListener(PFDataCreateListener lis)
          引数で与えられたイベントリスナを削除し、 データ生成イベント発生時に処理を行う対象から外す。
 void setAllowPullTransfer(boolean flag)
          他PFからのPull型コンポーネント転送要求に対する可否属性を設定する.
 void setAllowPushTransfer(boolean flag)
          他PFへのPush型コンポーネント転送要求に対する可否属性を設定する.
 void setAllowRemoteInvocation(boolean flag)
          他PFからのコンポーネント連携要求に対する可否属性を設定する.
 void setComponentID(int id)
          コンポーネントIDを設定する。
 void setComponentKey(java.lang.String key)
          コンポーネントのキー情報を設定する
 void setComponentKeys(PFMultiLocaleString keys)
          全ロケール分のコンポーネントキーを設定する。
 void setComponentPublicName(java.lang.String publicName)
          コンポーネント公開名を設定する.
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

PFProfileAnalyzer

public PFProfileAnalyzer()
デフォルトコンストラクタ

メソッドの詳細

getComponentName

public java.lang.String getComponentName()
コンポーネント名称を取得する。

定義:
インタフェース PFComponent 内の getComponentName
戻り値:
コンポーネント名
関連項目:
PFComponent.getComponentName()

getComponentKey

public java.lang.String getComponentKey()
コンポーネントキーを取得する。

定義:
インタフェース PFComponent 内の getComponentKey
戻り値:
コンポーネントキー文字列
関連項目:
PFComponent.getComponentKey()

setComponentKey

public void setComponentKey(java.lang.String key)
コンポーネントのキー情報を設定する

定義:
インタフェース PFComponent 内の setComponentKey
パラメータ:
key - 設定するコンポーネントのキー
関連項目:
PFComponent.setComponentKey(java.lang.String)

getComponentKeys

public PFMultiLocaleString getComponentKeys()
全ロケール分のコンポーネントキーを返す。

戻り値:
全ロケール分のコンポーネントキー

setComponentKeys

public void setComponentKeys(PFMultiLocaleString keys)
全ロケール分のコンポーネントキーを設定する。

パラメータ:
keys - 全ロケール分のコンポーネントキー

getComponentID

public int getComponentID()
コンポーネントIDを取得する。

定義:
インタフェース PFComponent 内の getComponentID
戻り値:
コンポーネントID
関連項目:
PFComponent.getComponentID()

setComponentID

public void setComponentID(int id)
コンポーネントIDを設定する。
コンポーネントIDはプラットフォームPFComponentBusから設定される。 各コンポーネント内では操作しないこと。

定義:
インタフェース PFComponent 内の setComponentID
パラメータ:
id - 設定するコンポーネントID
関連項目:
PFComponent.setComponentID(int)

getComponentString

public java.lang.String getComponentString()
コンポーネントの文字列表現を取得する。
形式:"Component Name" [ ID : "ID" ]

定義:
インタフェース PFComponent 内の getComponentString
戻り値:
コンポーネントの文字列表現を返す。
関連項目:
PFComponent.getComponentString()

getComponentPublicName

public java.lang.String getComponentPublicName()
コンポーネント公開名を取得する.

定義:
インタフェース PFComponent 内の getComponentPublicName
戻り値:
コンポーネント公開名

setComponentPublicName

public void setComponentPublicName(java.lang.String publicName)
                            throws PFComponentException
コンポーネント公開名を設定する.
空文字のみの公開名は、nullに置き換える。数字のみの公開名は許可しない。 また、既存コンポーネントとの重複も認めない.

定義:
インタフェース PFComponent 内の setComponentPublicName
パラメータ:
publicName - 設定するコンポーネント公開名
例外:
PFComponentException - 規約に反する名前が設定されようとした場合

isAllowRemoteInvocation

public boolean isAllowRemoteInvocation()
他PFからのコンポーネント連携要求に対する可否属性を取得する.

定義:
インタフェース PFComponent 内の isAllowRemoteInvocation
戻り値:
コンポーネント連携要求可否属性

setAllowRemoteInvocation

public void setAllowRemoteInvocation(boolean flag)
他PFからのコンポーネント連携要求に対する可否属性を設定する.

定義:
インタフェース PFComponent 内の setAllowRemoteInvocation
パラメータ:
flag - コンポーネント連携要求に対する可否

isAllowPullTransfer

public boolean isAllowPullTransfer()
他PFからのPull型コンポーネント転送要求に対する可否属性を取得する.

定義:
インタフェース PFComponent 内の isAllowPullTransfer
戻り値:
Pull型コンポーネント転送要求可否属性

setAllowPullTransfer

public void setAllowPullTransfer(boolean flag)
他PFからのPull型コンポーネント転送要求に対する可否属性を設定する.

定義:
インタフェース PFComponent 内の setAllowPullTransfer
パラメータ:
flag - Pull型コンポーネント転送要求に対する可否

isAllowPushTransfer

public boolean isAllowPushTransfer()
他PFへのPush型コンポーネント転送要求に対する可否属性を取得する.

定義:
インタフェース PFComponent 内の isAllowPushTransfer
戻り値:
Push型コンポーネント転送要求可否属性

setAllowPushTransfer

public void setAllowPushTransfer(boolean flag)
他PFへのPush型コンポーネント転送要求に対する可否属性を設定する.

定義:
インタフェース PFComponent 内の setAllowPushTransfer
パラメータ:
flag - Push型コンポーネント転送要求に対する可否

getPFDataCreateListenerList

public java.util.Iterator getPFDataCreateListenerList()
データ生成イベントリスナ配列を取得する。

定義:
インタフェース PFDataCreateEventSource 内の getPFDataCreateListenerList
戻り値:
イベントリスナイテレータ

addPFDataCreateListener

public void addPFDataCreateListener(PFDataCreateListener lis)
引数で与えられたイベントリスナを登録し、 データ生成イベント発生時に処理を行う対象とする。

定義:
インタフェース PFDataCreateEventSource 内の addPFDataCreateListener
パラメータ:
lis - 追加対象イベントリスナ

removePFDataCreateListener

public void removePFDataCreateListener(PFDataCreateListener lis)
引数で与えられたイベントリスナを削除し、 データ生成イベント発生時に処理を行う対象から外す。

定義:
インタフェース PFDataCreateEventSource 内の removePFDataCreateListener
パラメータ:
lis - 削除対象イベントリスナ

localeUpdated

public void localeUpdated()
ロケール変更に対応する。

定義:
インタフェース PFComponent 内の localeUpdated
関連項目:
PFComponent.localeUpdated()

read

public void read(java.lang.String filename)
          throws PFComponentException,
                 PFMethodException,
                 PFRuntimeException
プロファイラの出力結果をロードする。 ロードに成功するとラベル付きリストを作成してデータ生成イベントが発生する。

パラメータ:
filename - 出力結果のテキストファイル名
例外:
PFComponentException - ファイルロードの失敗
PFMethodException - イベント伝播先のメソッド起動時のエラー
PFRuntimeException - 予期しない実行時エラー