public class PFObjectSwitch extends java.lang.Object implements PFComponent, jp.go.aist.dmrc.platform.base.PFAdditionalPropertyEditableComponent, PFProcessTerminateEventSource, PFXMLSerializable
条件はテーブル形式(PFObjectTable)で定義する。外部から条件テーブルを設定する 場合は、1列目がBigInteger型、2列目がObject型で任意行数という仕様を満たす必要がある。 メソッド呼び出しの組み合わせで条件テーブルを設定することも可能である。
このコンポーネントから以下のイベントが発生する。
トリガー | 結果データ | イベント番号 |
---|---|---|
evaluate*メソッド呼出 (条件テーブル内に該当なし) |
引数のオブジェクトデータ (Object) |
-1 |
evaluate*メソッド呼出 (条件テーブル内に該当あり) |
引数のオブジェクトデータ (Object) |
(条件テーブルで定義された番号) |
コンストラクタと説明 |
---|
PFObjectSwitch()
デフォルトコンストラクタ
|
修飾子とタイプ | メソッドと説明 |
---|---|
void |
addCase(int index,
int eventNo,
java.lang.Object obj)
条件分岐用テーブルに条件を追加する(指定位置).
|
void |
addCase(int eventNo,
java.lang.Object obj)
条件分岐用テーブルに条件を追加する(最後尾).
|
void |
addCaseList(int index,
PFObjectList eventNoList,
PFObjectList objList)
条件分岐用テーブルに条件リストを追加する(指定位置).
|
void |
addCaseList(PFObjectList eventNoList,
PFObjectList objList)
条件分岐用テーブルに条件リストを追加する(最後尾).
|
void |
addPFProcessTerminateListener(PFProcessTerminateListener lis)
引数で与えられたイベントリスナを登録し、
処理完了イベント発生時に処理を行う対象とする。
|
void |
clearCaseTable()
条件分岐用テーブルを初期化する.
|
void |
clearCaseTableAsBigDecimal()
条件分岐用テーブルを実数型で初期化する.
2列目のオブジェクト型を実数型(BigDecimal)で作成する.
|
void |
clearCaseTableAsBigInteger()
条件分岐用テーブルを整数型で初期化する.
2列目のオブジェクト型を整数型(BigInteger)で作成する.
|
void |
clearCaseTableAsDate()
条件分岐用テーブルを日付型で初期化する.
2列目のオブジェクト型を日付型(Date)で作成する.
|
void |
clearCaseTableAsString()
条件分岐用テーブルを文字列型で初期化する.
2列目のオブジェクト型を文字列型(String)で作成する.
|
void |
evaluate(java.lang.Object object)
判定を行う.与えられたオブジェクトに対しequalsメソッドを用いて
一致判定を行う.
|
java.util.Collection |
getAdditionalButtonList(java.awt.Component parent)
独自の属性編集ダイアログ表示用。
|
java.util.Collection |
getAdditionalPropertyList()
独自属性のSetter情報リストを取得する。
|
PFObjectTable |
getCaseTable()
条件分岐用テーブルを取得する.
|
PFObjectTable |
getCaseTableForReadOnly()
条件分岐用テーブルを表示用として取得する.
2列目のオブジェクト型を文字列型に変換したテーブルを返す.
|
int |
getComponentID()
コンポーネントIDを取得する。
|
java.lang.String |
getComponentKey()
コンポーネントキーを取得する。
|
PFMultiLocaleString |
getComponentKeys()
全ロケール分のコンポーネントキーを返す。
|
java.lang.String |
getComponentName()
コンポーネント名称を取得する。
|
java.lang.String |
getComponentPublicName()
コンポーネント公開名を取得する.
|
java.lang.String |
getComponentString()
コンポーネントの文字列表現を取得する。
|
java.util.Iterator |
getPFProcessTerminateListenerList()
処理完了イベントリスナ配列を取得する。
|
boolean |
isAllowPullTransfer()
他PFからのPull型コンポーネント転送要求に対する可否属性を取得する.
|
boolean |
isAllowPushTransfer()
他PFへのPush型コンポーネント転送要求に対する可否属性を取得する.
|
boolean |
isAllowRemoteInvocation()
他PFからのコンポーネント連携要求に対する可否属性を取得する.
|
void |
localeUpdated()
ロケール変更に対応する。
|
void |
moveCase(int beforeIndex,
int afterIndex)
条件分岐用テーブル内で指定位置の条件を移動する.
|
void |
readXML(PFXMLLoader in)
コンポーネントのXML入力.
|
void |
removeCase(int index)
条件分岐用テーブルから指定位置の条件を削除する.
|
void |
removePFProcessTerminateListener(PFProcessTerminateListener lis)
引数で与えられたイベントリスナを削除し、
処理完了イベント発生時に処理を行う対象から外す。
|
void |
setAllowPullTransfer(boolean flag)
他PFからのPull型コンポーネント転送要求に対する可否属性を設定する.
|
void |
setAllowPushTransfer(boolean flag)
他PFへのPush型コンポーネント転送要求に対する可否属性を設定する.
|
void |
setAllowRemoteInvocation(boolean flag)
他PFからのコンポーネント連携要求に対する可否属性を設定する.
|
void |
setCaseTable(PFObjectTable aTable)
条件分岐用テーブルを設定する.
|
void |
setComponentID(int id)
コンポーネントIDを設定する。
|
void |
setComponentKey(java.lang.String key)
コンポーネントのキー情報を設定する
|
void |
setComponentKeys(PFMultiLocaleString keys)
全ロケール分のコンポーネントキーを設定する。
|
void |
setComponentPublicName(java.lang.String publicName)
コンポーネント公開名を設定する.
|
void |
writeXML(PFXMLGenerator out)
コンポーネントのXML出力.
|
public java.lang.String getComponentName()
getComponentName
インタフェース内 PFComponent
PFComponent.getComponentName()
public java.lang.String getComponentKey()
getComponentKey
インタフェース内 PFComponent
PFComponent.getComponentKey()
public void setComponentKey(java.lang.String key)
setComponentKey
インタフェース内 PFComponent
key
- 設定するコンポーネントのキーPFComponent.setComponentKey(java.lang.String)
public PFMultiLocaleString getComponentKeys()
public void setComponentKeys(PFMultiLocaleString keys)
keys
- 全ロケール分のコンポーネントキーpublic int getComponentID()
getComponentID
インタフェース内 PFComponent
PFComponent.getComponentID()
public void setComponentID(int id)
PFComponentBus
から設定される。
各コンポーネント内では操作しないこと。setComponentID
インタフェース内 PFComponent
id
- 設定するコンポーネントIDPFComponent.setComponentID(int)
public java.lang.String getComponentString()
getComponentString
インタフェース内 PFComponent
PFComponent.getComponentString()
public java.lang.String getComponentPublicName()
getComponentPublicName
インタフェース内 PFComponent
public void setComponentPublicName(java.lang.String publicName) throws PFComponentException
setComponentPublicName
インタフェース内 PFComponent
publicName
- 設定するコンポーネント公開名PFComponentException
- 規約に反する名前が設定されようとした場合public boolean isAllowRemoteInvocation()
isAllowRemoteInvocation
インタフェース内 PFComponent
public void setAllowRemoteInvocation(boolean flag)
setAllowRemoteInvocation
インタフェース内 PFComponent
flag
- コンポーネント連携要求に対する可否public boolean isAllowPullTransfer()
isAllowPullTransfer
インタフェース内 PFComponent
public void setAllowPullTransfer(boolean flag)
setAllowPullTransfer
インタフェース内 PFComponent
flag
- Pull型コンポーネント転送要求に対する可否public boolean isAllowPushTransfer()
isAllowPushTransfer
インタフェース内 PFComponent
public void setAllowPushTransfer(boolean flag)
setAllowPushTransfer
インタフェース内 PFComponent
flag
- Push型コンポーネント転送要求に対する可否public java.util.Iterator getPFProcessTerminateListenerList()
getPFProcessTerminateListenerList
インタフェース内 PFProcessTerminateEventSource
public void addPFProcessTerminateListener(PFProcessTerminateListener lis)
addPFProcessTerminateListener
インタフェース内 PFProcessTerminateEventSource
lis
- 追加対象イベントリスナpublic void removePFProcessTerminateListener(PFProcessTerminateListener lis)
removePFProcessTerminateListener
インタフェース内 PFProcessTerminateEventSource
lis
- 削除対象イベントリスナpublic void readXML(PFXMLLoader in)
readXML
インタフェース内 PFXMLSerializable
in
- XML入力ユーティリティpublic void writeXML(PFXMLGenerator out) throws java.io.IOException
writeXML
インタフェース内 PFXMLSerializable
out
- XML出力ユーティリティjava.io.IOException
public void localeUpdated()
localeUpdated
インタフェース内 PFComponent
PFComponent.localeUpdated()
public java.util.Collection getAdditionalButtonList(java.awt.Component parent)
getAdditionalButtonList
インタフェース内 jp.go.aist.dmrc.platform.base.PFAdditionalPropertyEditableComponent
parent
- 編集ダイアログの親コンポーネントpublic java.util.Collection getAdditionalPropertyList()
getAdditionalPropertyList
インタフェース内 jp.go.aist.dmrc.platform.base.PFAdditionalPropertyEditableComponent
public void setCaseTable(PFObjectTable aTable) throws PFComponentException
aTable
- 条件分岐用テーブルPFComponentException
- 条件分岐用テーブルが仕様に準拠していない場合public PFObjectTable getCaseTable()
public PFObjectTable getCaseTableForReadOnly()
public void clearCaseTable()
public void clearCaseTableAsString()
public void clearCaseTableAsBigInteger()
public void clearCaseTableAsBigDecimal()
public void clearCaseTableAsDate()
public void addCase(int eventNo, java.lang.Object obj) throws PFComponentException
eventNo
- 一致したときのイベント番号obj
- 一致判定用オブジェクトPFComponentException
- 条件テーブルに対する操作の失敗public void addCase(int index, int eventNo, java.lang.Object obj) throws PFComponentException
index
- 追加する位置eventNo
- 一致したときのイベント番号obj
- 一致判定用オブジェクトPFComponentException
- 条件テーブルに対する操作の失敗public void addCaseList(PFObjectList eventNoList, PFObjectList objList) throws PFComponentException
eventNoList
- 一致したときのイベント番号リストobjList
- 一致判定用オブジェクトリストPFComponentException
- 条件テーブルに対する操作の失敗public void addCaseList(int index, PFObjectList eventNoList, PFObjectList objList) throws PFComponentException
index
- 追加する位置eventNoList
- 一致したときのイベント番号リストobjList
- 一致判定用オブジェクトリストPFComponentException
- 条件テーブルに対する操作の失敗public void removeCase(int index) throws PFComponentException
index
- 指定位置PFComponentException
- 条件テーブルに対する操作の失敗public void moveCase(int beforeIndex, int afterIndex) throws PFComponentException
beforeIndex
- 移動前の位置afterIndex
- 移動後の位置PFComponentException
- 条件テーブルに対する操作の失敗public void evaluate(java.lang.Object object) throws PFException
object
- 判定するオブジェクトPFException
- イベント処理エラー