インターフェース AggregatePath
- すべてのスーパーインターフェース:
IterableSE<AggregatePath>
集約ルートから始まる集約内のパスを表します。パスはリーフからルートまで反復できます。
- 導入:
- 3.2
- 作成者:
- Jens Schauder, Mark Paluch
ネストされたクラスのサマリー
修飾子と型インターフェース説明static final record
static final record
メソッドのサマリー
修飾子と型メソッド説明append
(RelationalPersistentProperty property) 引数として渡されたプロパティによって現在のパスを継承することにより、新しいパスを作成します。default AggregatePath
filter
(PredicateSE<? super AggregatePath> predicate) AggregatePath をフィルター処理して、指定されたPredicate
SE に一致する最初の項目を返します。default AggregatePath.ColumnInfo
Id
プロパティを持つ最長の祖先パスを返します。このパスの葉に関連付けられたRelationalPersistentEntity
。default int
集約パスのパス長を返します。開始点は同じですが、このパスよりも 1 セグメント短いパスを返します。default RelationalPersistentProperty
default RelationalPersistentEntity<?>
このパスのリーフに関連付けられたRelationalPersistentEntity
か、リーフが解決できない場合はIllegalStateException
SE をスローします。default RelationalPersistentProperty
default AggregatePath.TableInfo
boolean
boolean
boolean
パスが空ではなく、リーフプロパティが埋め込まれたプロパティである場合に、正確に true を返します。boolean
isEntity()
boolean
isMap()
boolean
このパスに複数の値がある場合、つまりパスにコレクション、配列、マップの要素が少なくとも 1 つ含まれる場合、true を返します。// TODO: 親エンティティがコレクションの場合に true が返されるのはなぜですか ?boolean
boolean
boolean
isRoot()
boolean
default StreamSE<AggregatePath>
stream()
基になるIterable
SE の非平行Stream
SE を作成します。PersistentProperty.getName()
を使用してドットベースのパス表記を返します。インターフェース java.lang.IterableSE から継承されたメソッド
forEachSE, iterator, spliterator
メソッドの詳細
getParentPath
AggregatePath getParentPath()開始点は同じですが、このパスよりも 1 セグメント短いパスを返します。- 戻り値:
- 親パス。null でないことが保証されています。
- 例外:
IllegalStateExceptionSE
- 空のパスで呼び出されたとき。
append
引数として渡されたプロパティによって現在のパスを継承することにより、新しいパスを作成します。- パラメーター:
property
- null であってはなりません。- 戻り値:
- null でないことが保証されています。
isRoot
boolean isRoot()- 戻り値:
- これが基になる型のルートパスの場合は true。
getLength
default int getLength()集約パスのパス長を返します。- 戻り値:
- 集約パスのパス長
isWritable
boolean isWritable()isEntity
boolean isEntity()- 戻り値:
- これが空のパスであるか、パスがエンティティを参照する場合は true。
isEmbedded
boolean isEmbedded()パスが空ではなく、リーフプロパティが埋め込まれたプロパティである場合に、正確に true を返します。- 戻り値:
- リーフプロパティが埋め込まれている場合。
isMultiValued
boolean isMultiValued()このパスに複数の値がある場合、つまりパスにコレクション、配列、マップの要素が少なくとも 1 つ含まれる場合、true を返します。// TODO: 親エンティティがコレクションの場合に true が返されるのはなぜですか ? これは、別の場所に属するいくつかの概念が混在しているように見えます。// TODO: 複数の列を持つ埋め込み可能オブジェクトについては、複数の値を理解できます。(つまり、複合主キー)- 戻り値:
- パスに複数値の要素が含まれる場合は true。
isQualified
boolean isQualified()isMap
boolean isMap()- 戻り値:
- このパスの葉のプロパティが
Map
SE である場合は true - 関連事項:
isCollectionLike
boolean isCollectionLike()- 戻り値:
- これが
Collection
SE または配列を参照している場合は true。
isOrdered
boolean isOrdered()- 戻り値:
- パスのリーフエンドが順序付けられているかどうか、つまり、取り込むデータを順序付けする必要があるかどうか。
- 関連事項:
hasIdProperty
boolean hasIdProperty()- 戻り値:
- このパスが識別子属性を持つエンティティを表す場合は true。
getRequiredIdProperty
RelationalPersistentProperty getRequiredIdProperty()getRequiredPersistentPropertyPath
PersistentPropertyPath<RelationalPersistentProperty> getRequiredPersistentPropertyPath()- 戻り値:
- パスが
root
パスでない場合は、永続プロパティパス。 - 例外:
IllegalStateExceptionSE
- 現在のパスがroot
パスの場合。- 関連事項:
getRequiredBaseProperty
- 戻り値:
- 基本プロパティ。
- 例外:
IllegalStateExceptionSE
- 現在のパスがroot
パスの場合。- 関連事項:
getRequiredLeafProperty
- 戻り値:
- 葉のプロパティ。
- 例外:
IllegalStateExceptionSE
- 現在のパスがroot
パスの場合。- 関連事項:
getLeafEntity
このパスの葉に関連付けられたRelationalPersistentEntity
。- 戻り値:
- エンティティを表していないパスで呼び出されると、null を返す場合があります。
getRequiredLeafEntity
このパスのリーフに関連付けられたRelationalPersistentEntity
か、リーフが解決できない場合はIllegalStateException
SE をスローします。- 戻り値:
- このパスのリーフに関連付けられている必要な
RelationalPersistentEntity
。 - 例外:
IllegalStateExceptionSE
- 永続エンティティを解決できない場合。
toDotPath
StringSE toDotPath()PersistentProperty.getName()
を使用してドットベースのパス表記を返します。- 戻り値:
- null になることはありません。
getTableInfo
getColumnInfo
filter
AggregatePath をフィルター処理して、指定されたPredicate
SE に一致する最初の項目を返します。- パラメーター:
predicate
- null であってはなりません。- 戻り値:
- 最初に一致した要素または null。
stream
基になるIterable
SE の非平行Stream
SE を作成します。- 戻り値:
- null になることはありません。
getIdDefiningParentPath
AggregatePath getIdDefiningParentPath()Id
プロパティを持つ最長の祖先パスを返します。- 戻り値:
- このパスと同じように始まりますが、より短いパス。null ではないことが保証されます。TODO: NoSuchElementException がスローされます: 空のパスには値が存在しません