インターフェース PersistentProperty<P extends PersistentProperty<P>>

すべての既知の実装クラス:
AbstractPersistentPropertyAnnotationBasedPersistentProperty

public interface PersistentProperty<P extends PersistentProperty<P>>
作成者:
Graeme Rocher, Jon Brisbin, Oliver Gierke, Mark Paluch, Jens Schauder, Christoph Strobl, Johannes Englmeier
  • メソッドの詳細

    • getOwner

      PersistentEntity<?,P> getOwner()
      現在の PersistentProperty を所有する PersistentEntity を返します。
      戻り値:
      非 null。
    • getName

      StringSE getName()
      プロパティの名前
      戻り値:
      プロパティ名
    • getType

      ClassSE<?> getType()
      プロパティの型
      戻り値:
      プロパティ型
    • getTypeInformation

      TypeInformation<?> getTypeInformation()
      プロパティの TypeInformation を返します。
      戻り値:
    • getPersistentEntityTypeInformation

      IterableSE<? extends TypeInformation<?>> getPersistentEntityTypeInformation()
      プロパティが PersistentEntity を参照している場合、検出された TypeInformations を返します。単純な型を参照している場合、空の IterableSE を返します。CollectionSE のコンポーネント型または MapSE の値型を透過的に返します。
      戻り値:
      非 null。
      導入:
      2.6
    • getGetter

      @Nullable MethodSE getGetter()
      可能な場合は、プロパティ値にアクセスするための getter メソッドを返します。実際のプロパティの型に割り当て可能な戻り値の型を持つ getter メソッドがない場合、null を返す可能性があります。
      戻り値:
      利用可能な場合はプロパティ値にアクセスする getter メソッド、それ以外の場合は null。
    • getRequiredGetter

      default MethodSE getRequiredGetter()
    • getSetter

      @Nullable MethodSE getSetter()
      プロパティ値を設定するための setter メソッドを返します。利用可能な setter がない場合、null を返す可能性があります。
      戻り値:
      利用可能な場合はプロパティ値を設定する setter メソッド、それ以外の場合は null。
    • getRequiredSetter

      default MethodSE getRequiredSetter()
    • getWither

      @Nullable MethodSE getWither()
      with MethodSE を返し、新しいオブジェクトインスタンスにプロパティ値を設定します。利用可能なものがない場合、null を返す可能性があります。

      methodsSE には、新しいオブジェクトインスタンスを作成するプロパティ型の単一の引数を受け入れるプロパティバインドインスタンス methodsSE があります。

       class Person {
              final String id;
              final String name;
      
              // …
      
              Person withName(String name) {
                      return new Person(this.id, name);
              }
       }
       
      戻り値:
      MethodSE を使用して、使用可能な場合は新しいオブジェクトインスタンスにプロパティ値を設定し、それ以外の場合は null を設定します。
      導入:
      2.1
    • getRequiredWither

      default MethodSE getRequiredWither()
    • getField

      @Nullable FieldSE getField()
    • getRequiredField

      default FieldSE getRequiredField()
    • getSpelExpression

      @Nullable StringSE getSpelExpression()
      戻り値:
      式が定義されていない場合は null。
    • getAssociation

      @Nullable Association<P> getAssociation()
      戻り値:
      プロパティが Association の一部でない場合は null。
    • getRequiredAssociation

      default Association<P> getRequiredAssociation()
      このプロパティの Association を取得します。
      戻り値:
      非 null。
      例外:
      IllegalStateExceptionSE - Association に関与していない場合。
    • isEntity

      boolean isEntity()
      PersistentProperty の型が実際に PersistentEntity と見なされるかどうかを返します。
      戻り値:
      真の PersistentEntity
    • isIdProperty

      boolean isIdProperty()
      プロパティが所有する PersistentEntity潜在的な識別子プロパティであるかどうかを返します。このメソッドは、主に PersistentEntity 実装で使用され、PersistentEntity 作成時に id プロパティ候補を検出します。むしろ、PersistentEntity.isIdProperty(PersistentProperty) を呼び出して、現在のプロパティが検討中の PersistentEntity の id プロパティであるかどうかを判断する必要があります。
      戻り値:
      id プロパティの場合は true。
    • isVersionProperty

      boolean isVersionProperty()
      現在のプロパティが、所有している PersistentEntity潜在的なバージョンプロパティであるかどうかを返します。このメソッドは、主に PersistentEntity 実装で使用され、PersistentEntity 作成時にバージョンプロパティ候補を検出します。むしろ、PersistentEntity.isVersionProperty(PersistentProperty) を呼び出して、現在のプロパティが検討中の PersistentEntity のバージョンプロパティであるかどうかを判断する必要があります。
      戻り値:
    • isCollectionLike

      boolean isCollectionLike()
      プロパティが CollectionSEIterableSE、配列のいずれであるかを返します。
      戻り値:
    • isMap

      boolean isMap()
      プロパティが MapSE かどうかを返します。
      戻り値:
    • isArray

      boolean isArray()
      プロパティが配列かどうかを返します。
      戻り値:
    • isTransient

      boolean isTransient()
      プロパティが一時的であるかどうかを返します。
      戻り値:
    • isWritable

      boolean isWritable()
      現在のプロパティが書き込み可能かどうか、つまり、保持されている値をデータストアに書き込むかどうかを返します。
      戻り値:
      導入:
      1.9
    • isReadable

      boolean isReadable()
      現在のプロパティが PersistentPropertyAccessor を通じて読み取り可能かどうか、つまり isTransient() ではない場合、値を現在のインスタンスに設定できるか、getWither() または Kotlin Copy メソッド経由で新しいインスタンスを作成するために読み取ることができるかどうかを返します。
      戻り値:
      導入:
      3.2
    • isImmutable

      boolean isImmutable()
      現在のプロパティが不変かどうかを返します。つまり、setter がないか、バッキング FieldSE が final であるかを返します。
      戻り値:
      導入:
      2.1
      関連事項:
    • isAssociation

      boolean isAssociation()
      プロパティが Association かどうかを返します。
      戻り値:
    • getComponentType

      @Nullable ClassSE<?> getComponentType()
      CollectionSE の場合、その型のコンポーネント型を返します。プロパティが MapSE の場合、キーの型を返します。
      戻り値:
      コンポーネント型、マップのキー型、CollectionSE でも MapSE でもない場合は null。
    • getRawType

      ClassSE<?> getRawType()
      反映されたプロパティから取得された生の型を返します。
      戻り値:
      プロパティの生の型。
    • getMapValueType

      @Nullable ClassSE<?> getMapValueType()
      プロパティが MapSE の場合、値の型を返します。
      戻り値:
      マップの値型、または MapSE がない場合は null
    • getActualType

      ClassSE<?> getActualType()
      プロパティの実際の型を返します。ジェネリクスが使用されていない場合、これは元のプロパティ型、コレクションのような型と配列のコンポーネント型、マッププロパティの値型になります。
      戻り値:
    • findAnnotation

      @Nullable <A extends AnnotationSE> A findAnnotation(ClassSE<A> annotationType)
      PersistentProperty で指定された型のアノテーションを検索します。アクセサーと潜在的にバッキングフィールドをインスペクションし、アクセサーメソッドを潜在的に利用可能なスーパー型にトラバースします。
      パラメーター:
      annotationType - 検索するアノテーションは null であってはなりません。
      戻り値:
      指定された型のアノテーション。null にすることができます。
      関連事項:
    • getRequiredAnnotation

      default <A extends AnnotationSE> A getRequiredAnnotation(ClassSE<A> annotationType) throws IllegalStateExceptionSE
      PersistentProperty で指定された型のアノテーションを検索します。アクセサーと潜在的にバッキングフィールドをインスペクションし、アクセサーメソッドを潜在的に利用可能なスーパー型にトラバースします。
      パラメーター:
      annotationType - 検索するアノテーションは null であってはなりません。
      戻り値:
      指定された型のアノテーション。
      例外:
      IllegalStateExceptionSE - 必要な annotationType が見つからない場合。
      導入:
      2.0
    • findPropertyOrOwnerAnnotation

      @Nullable <A extends AnnotationSE> A findPropertyOrOwnerAnnotation(ClassSE<A> annotationType)
      プロパティで指定された型のアノテーションを検索し、アノテーションが見つからない場合は所有型を検索します。型で構成できるが、個々のプロパティでオーバーライドできるアノテーションを検索するのに便利です。
      パラメーター:
      annotationType - null であってはなりません。
      戻り値:
      指定された型のアノテーション。null にすることができます。
    • isAnnotationPresent

      boolean isAnnotationPresent(ClassSE<? extends AnnotationSE> annotationType)
      PersistentProperty に指定された型のアノテーションがあるかどうかを返します。
      パラメーター:
      annotationType - ルックアップするアノテーションは null であってはなりません。
      戻り値:
      PersistentProperty に特定の型のアノテーションがあるかどうか。
    • usePropertyAccess

      boolean usePropertyAccess()
      プロパティ値の読み取りにプロパティアクセスを使用するかどうかを返します。これは、フィールドアクセスの代わりに getter を使用することを意味します。
      戻り値:
    • hasActualTypeAnnotation

      default boolean hasActualTypeAnnotation(ClassSE<? extends AnnotationSE> annotationType)
      プロパティの実際の型が指定されたアノテーションを持っているかどうかを返します。
      パラメーター:
      annotationType - null であってはなりません。
      戻り値:
      導入:
      2.1
      関連事項:
    • getAssociationTargetType

      @Nullable ClassSE<?> getAssociationTargetType()
      関連付けの場合、プロパティが参照する型を返します。つまり、isAssociation() は true を返します。つまり、その場合、実装はこのメソッドから null 以外の値を返す必要があります。また、このメソッドと isAssociation() の間の対称性を確立するために、関連付けがない場合はすぐに null を返すことをお勧めします。
      戻り値:
      プロパティが関連付けである場合、つまり isAssociation() が true を返す場合にプロパティが参照する型。
      導入:
      2.1
    • getAssociationTargetTypeInformation

      @Nullable TypeInformation<?> getAssociationTargetTypeInformation()
      関連付けの場合、プロパティが参照する型を返します。つまり、isAssociation() は true を返します。つまり、その場合、実装はこのメソッドから null 以外の値を返す必要があります。また、このメソッドと isAssociation() の間の対称性を確立するために、関連付けがない場合はすぐに null を返すことをお勧めします。
      戻り値:
      プロパティが関連付けである場合、つまり isAssociation() が true を返す場合にプロパティが参照する型。
      導入:
      2.6
    • getAccessorForOwner

      default <T> PersistentPropertyAccessor<T> getAccessorForOwner(T owner)
      現在のプロパティの所有値の PersistentPropertyAccessor を返します。
      パラメーター:
      owner - null であってはなりません。
      戻り値:
      null になることはありません。
      導入:
      2.3