インターフェース ProviderUtil
public interface ProviderUtil
永続性プロバイダーによって実装されたユーティリティインターフェース。このインターフェースは、PersistenceUtil
実装によって呼び出され、エンティティまたはエンティティ属性のロード状況を判別します。- 導入:
- 2.0
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 LoadState
isLoaded(ObjectSE entity)
プロバイダーが、エンティティがそれ自体で提供され、FetchType.EAGER
が指定されているすべての属性の状態がロードされていると判断した場合、このメソッドはLoadState.LOADED
を返します。LoadState
isLoadedWithoutReference(ObjectSE entity, StringSE attributeName)
プロバイダーが、エンティティがそれ自体で提供され、指定された属性の状態がロードされたと判断した場合、このメソッドはLoadState.LOADED
を返します。LoadState
isLoadedWithReference(ObjectSE entity, StringSE attributeName)
プロバイダーが、エンティティがそれ自体で提供され、指定された属性の状態がロードされたと判断した場合、このメソッドはLoadState.LOADED
を返します。
メソッドの詳細
isLoadedWithoutReference
LoadState isLoadedWithoutReference(ObjectSE entity, StringSE attributeName)
プロバイダーが、エンティティがそれ自体で提供され、指定された属性の状態がロードされたと判断した場合、このメソッドはLoadState.LOADED
を返します。プロバイダーが、エンティティがそれ自体で提供され、
FetchType.EAGER
のエンティティ属性がロードされていない、または指定された属性の状態がロードされていないと判断した場合、このメソッドはLoadState.NOT_LOADED
を返します。プロバイダーがロード状態を判別できない場合、このメソッドは
LoadState.UNKNOWN
を返します。エンティティが別のプロバイダーによって提供された場合、エンティティ状態のロードをトリガーする可能性があるため、このメソッドのプロバイダーの実装は、属性値への参照を取得してはなりません。
- パラメーター:
entity
- エンティティインスタンスattributeName
- ロードステータスを決定する属性の名前- 戻り値:
- 属性のロードステータス
isLoadedWithReference
LoadState isLoadedWithReference(ObjectSE entity, StringSE attributeName)
プロバイダーが、エンティティがそれ自体で提供され、指定された属性の状態がロードされたと判断した場合、このメソッドはLoadState.LOADED
を返します。プロバイダーが、エンティティがそれ自体で提供され、
FetchType.EAGER
のエンティティ属性がロードされていないか、指定された属性の状態がロードされていないと判断した場合、このメソッドはLoadState.NOT_LOADED
を返します。プロバイダーがロード状態を判別できない場合、このメソッドは
LoadState.UNKNOWN
を返します。このメソッドのプロバイダーの実装は、属性値への参照を取得することを許可されています。(属性状態のロードをトリガーする可能性のあるプロバイダーは、
isLoadedWithoutReference
によってすでに決定されているため、このアクセスは安全です。)- パラメーター:
entity
- エンティティインスタンスattributeName
- ロードステータスを決定する属性の名前- 戻り値:
- 属性のロードステータス
isLoaded
LoadState isLoaded(ObjectSE entity)
プロバイダーが、エンティティがそれ自体で提供され、FetchType.EAGER
が指定されているすべての属性の状態がロードされていると判断した場合、このメソッドはLoadState.LOADED
を返します。プロバイダーが、エンティティがそれ自体で提供されており、
FetchType.EAGER
のすべての属性がロードされているわけではないと判断した場合、このメソッドはLoadState.NOT_LOADED
を返します。プロバイダーがエンティティがそれ自体で提供されているかどうかを判別できない場合、このメソッドは
LoadState.UNKNOWN
を返します。エンティティが別のプロバイダーによって提供された場合、エンティティ状態のロードをトリガーする可能性があるため、このメソッドのプロバイダーの実装は、属性値への参照を取得してはなりません。
- パラメーター:
entity
- ロードされたステータスが決定されます- 戻り値:
- エンティティのロードステータス