public abstract class ComponentBase extends Object implements IComponent
データ読込用のローダー機能を提供します。
コンポーネントの構成メンバであるサブコンポーネントおよびプロパティについて、
ストリームの読込処理中に該当のコンポーネントもしくはプロパティであるかどうかを判定し、
インスタンスを生成して各モデルのデータの読込処理を呼び出します。
各フィールドへの設定にはローダーの初期化処理にて実装を行います。
initLoader()
メソッド内にて、各フィールドごとに
ComponentLoader
もしくは
PropertyLoader
のインスタンスを設定します。
複数回使用可能なコンポーネントおよびプロパティについては、
ローダーのコンストラクタで Loader#isMultiple()
に false
を指定します。(既定値:true
)
当該コンポーネントの読込開始(コンポーネント開始)時にローダーの初期化が行われます。
従って、読取処理が呼ばれるまでローダーのインスタンスは生成されません。
読取処理中はローダー一覧のシャローコピーを使用し、複数回使用できないコンポーネントおよびプロパティについてはローダーを削除することで効率的に処理を行います。
コンストラクタと説明 |
---|
ComponentBase() |
修飾子とタイプ | メソッドと説明 |
---|---|
protected void |
addLoader(ILoader loader)
ローダーを追加します。
|
protected abstract void |
initLoader()
ローダー一覧の初期化を行います。
|
String |
name()
コンポーネント名を取得します。
|
boolean |
read(IacICalendarReader reader)
コンポーネント情報を読み取ります。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getTag, write
hasValue
public String name()
IComponent
name
インタフェース内 IComponent
public boolean read(IacICalendarReader reader) throws IacICalendarIOException
read
インタフェース内 IComponent
reader
- リーダーtrue
:読取処理完了/false
:読取処理なし)IacICalendarIOException
- 読取処理に失敗した場合protected void addLoader(ILoader loader)
以下の場合は追加処理が行われません。
null
の場合null
の場合loader
- ローダーprotected abstract void initLoader()
Copyright © 2012-2015 NTT DATA INTRAMART CORPORATION