クラス IterableDataModel<E>
- java.lang.ObjectSE
-
- jakarta.faces.model.DataModel<E>
-
- jakarta.faces.model.IterableDataModel<E>
- 実装されたすべてのインターフェース:
IterableSE<E>
public class IterableDataModel<E> extends DataModel<E>
IterableDataModel は、
Iterable
をラップするDataModel
の実装です。これは、
List
SE やSet
SE などのCollection
SE 派生型を含む、ほぼすべてのコレクション型をカプセル化するために使用できます。そのため、ListDataModel
やCollectionDataModel
などのより具体的な DataModels の代わりに、この特定の DataModel を使用できます。
コンストラクターのサマリー
コンストラクター コンストラクター 説明 IterableDataModel()
ラップされたデータを指定せずに新しいIterableDataModel
を構築します。IterableDataModel(IterableSE<E> iterable)
指定されたイテラブルをラップする新しいIterableDataModel
を作成します。
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 int
getRowCount()
このDataModel
で表されるデータオブジェクトの行数を返します。E
getRowData()
現在選択されている行インデックスのデータを表すオブジェクトを返します。int
getRowIndex()
現在選択されている行のゼロ相対インデックスを返します。ObjectSE
getWrappedData()
このDataModel
によってラップされたデータを表すオブジェクトがあれば、それを返します。boolean
isRowAvailable()
現在のrowIndex
で使用可能なrowData
があるかどうかを示すフラグを返します。void
setRowIndex(int rowIndex)
現在選択されている行のゼロ相対インデックスを設定するか、行に配置されていないことを示すには -1 を設定します。void
setWrappedData(ObjectSE data)
このDataModel
によってラップされたデータコレクションを表すオブジェクトを設定します。クラス jakarta.faces.model.DataModel から継承されたメソッド
addDataModelListener, getDataModelListeners, iterator, removeDataModelListener
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース java.lang.IterableSE から継承されたメソッド
forEachSE, spliterator
コンストラクターの詳細
IterableDataModel
public IterableDataModel()
ラップされたデータを指定せずに新しい
IterableDataModel
を構築します。
IterableDataModel
public IterableDataModel(IterableSE<E> iterable)
指定されたイテラブルをラップする新しい
IterableDataModel
を作成します。- パラメーター:
iterable
- ラップすることを繰り返すことができます。
メソッドの詳細
isRowAvailable
public boolean isRowAvailable()
現在の
rowIndex
で使用可能なrowData
があるかどうかを示すフラグを返します。wrappedData
が利用できない場合は、false
を返します。- 次で指定:
- クラス
DataModel<E>
のisRowAvailable
- 戻り値:
- 現在のインデックスで利用可能なデータがある場合にのみ true、それ以外の場合は false。
- 例外:
FacesException
- 行の可用性を取得するときにエラーが発生した場合
getRowCount
public int getRowCount()
この
DataModel
で表されるデータオブジェクトの行数を返します。行数が不明な場合、または使用可能なwrappedData
がない場合は、-1 を返します。- 次で指定:
- クラス
DataModel<E>
のgetRowCount
- 戻り値:
- この
DataModel
によって表されるデータの行数 - 例外:
FacesException
- 行数の取得中にエラーが発生した場合
getRowData
public E getRowData()
現在選択されている行インデックスのデータを表すオブジェクトを返します。利用可能な
wrappedData
がない場合は、null
を返します。- 次で指定:
- クラス
DataModel<E>
のgetRowData
- 戻り値:
- 現在選択されている行インデックスのデータを表すオブジェクト
- 例外:
FacesException
- 行データの取得中にエラーが発生した場合IllegalArgumentExceptionSE
- 現在指定されている行インデックスで行データが利用できる場合
getRowIndex
public int getRowIndex()
現在選択されている行のゼロ相対インデックスを返します。現在行に配置されていない場合、または使用可能な
wrappedData
がない場合は、-1 を返します。- 次で指定:
- クラス
DataModel<E>
のgetRowIndex
- 戻り値:
- 現在選択されている行のインデックス
- 例外:
FacesException
- 行インデックスの取得中にエラーが発生した場合
setRowIndex
public void setRowIndex(int rowIndex)
現在選択されている行のゼロ相対インデックスを設定するか、行に配置されていないことを示すには -1 を設定します。基になるデータコレクションに行データが含まれていない値に行インデックスを設定することができます。呼び出し元は
isRowAvailable()
メソッドを使用して、行データがgetRowData()
メソッドで使用できるかどうかを検出できます。このメソッドが呼び出されたときに使用可能な
wrappedData
がない場合、指定されたrowIndex
が格納されます(その後のgetRowData()
の呼び出しで取得できます)が、イベントは送信されません。それ以外の場合、現在選択されている行インデックスがこの呼び出しによって変更されると、DataModelEvent
がすべての登録済みDataModelListener
のrowSelected()
メソッドに送信されます。- 次で指定:
- クラス
DataModel<E>
のsetRowIndex
- パラメーター:
rowIndex
- 新しいゼロ相対インデックス (負でない必要があります)- 例外:
FacesException
- 行インデックスの設定中にエラーが発生した場合IllegalArgumentExceptionSE
-rowIndex
が -1 より小さい場合
getWrappedData
public ObjectSE getWrappedData()
この
DataModel
によってラップされたデータを表すオブジェクトがあれば、それを返します。- 次で指定:
- クラス
DataModel<E>
のgetWrappedData
- 戻り値:
- このモデルがラップする
Object
setWrappedData
public void setWrappedData(ObjectSE data)
この
DataModel
によってラップされたデータコレクションを表すオブジェクトを設定します。指定されたdata
がnull
である場合、代わりに以前にラップされたデータコレクションからこのDataModel
をデタッチします。data
がnull
以外の場合、現在選択されている行インデックスをゼロに設定し、DataModelEvent
をすべての登録済みDataModelListener
のrowSelected()
メソッドに送信して、この行が現在選択されていることを示す必要があります。- 次で指定:
- クラス
DataModel<E>
のsetWrappedData
- パラメーター:
data
- ラップするデータコレクション、またはnull
で以前のデータコレクションから切り離す- 例外:
ClassCastExceptionSE
-data
がこのDataModel
実装に適した型でない場合