クラス PropertyMeta


  • public class PropertyMeta
    extends PropertyBase
    プロパティのメタ情報です。
    バージョン:
    0.3
    作成者:
    T.TSUCHIE
    • コンストラクタの詳細

      • PropertyMeta

        public PropertyMeta​(String name,
                            Class<?> propertyType)
        プロパティのインスタンス情報を作成します。
        パラメータ:
        name - プロパティ名
        propertyType - プロパティのクラスタイプ
    • メソッドの詳細

      • isColumn

        public boolean isColumn()
        カラム用のプロパティかどうか判定する。
        戻り値:
        カラム情報を持つときtrueを返す。
      • addEmbeddedablePropertyMeta

        public void addEmbeddedablePropertyMeta​(@NonNull
                                                @NonNull PropertyMeta embeddedablePropertyMeta)
        埋め込みプロパティ情報を追加する
        パラメータ:
        embeddedablePropertyMeta - 埋め込みプロパティ
      • hasParent

        public boolean hasParent()
        埋め込み用のクラスのプロパティかどか判定する。
        戻り値:
        埋め込み用のクラスのプロパティの場合trueを変す。
      • getParent

        public PropertyMeta getParent()
        埋め込み用のクラスのプロパティの親情報を取得する。
        戻り値:
        親情のプロパティ情報
        例外:
        NoSuchElementException - 親が存在しないときにスローされます。
      • getEmbeddedablePopertyMetaList

        public Collection<PropertyMeta> getEmbeddedablePopertyMetaList()
        埋め込みプロパティの一覧を取得する。
        戻り値:
      • isId

        public boolean isId()
        主キーかどうか判定する。

        アノテーション Idを付与されているかどうかで判定する。

        また、親がEmbeddedId を付与された埋め込みIDの場合は、子も主キーとなるためtrueを返す。

        戻り値:
        主キーの場合は true を返す。
      • isEmbedded

        public boolean isEmbedded()
        埋め込み用のプロパティかどうか判定する。

        埋め込みプロパティの子の場合は、falseを返す。

        戻り値:
        埋め込みの場合trueを返す。
      • setIdGeneratonType

        public void setIdGeneratonType​(GeneratedValue.GenerationType generationType)
        識別子の生成タイプを設定する。
        パラメータ:
        generationType - IDの生成タイプ
      • setIdGenerator

        public void setIdGenerator​(IdGenerator idGenerator)
        識別子の生成処理を設定する。
        パラメータ:
        idGenerator - 識別子の生成処理。
      • setIdGenerationContext

        public void setIdGenerationContext​(IdGenerationContext idGenerationContext)
        生成対象の識別子の情報を設定する。
        パラメータ:
        idGenerationContext - 生成対象の識別子の情報
      • isTransient

        public boolean isTransient()
        永続化対象外かどうか判定する。

        永続化対象外とは、アノテーション Transientが付与されているか、 または、フィールドに修飾子 transient が付与されているかどうかで判定します。

        戻り値:
        永続化対象外のとき true を返す。
      • isVersion

        public boolean isVersion()
        バージョンキーかどうか判定する。
        戻り値:
        バージョンキーのとき true を返す。
      • isLob

        public boolean isLob()
        SQLのカラムがLOB(CLOB/BLOC)かどうか判定する。

        アノテーション Lob が付与されているかで判定する。

        戻り値:
        LOBの場合はtrueを返す。
      • isCreatedAt

        public boolean isCreatedAt()
        作成日時用のプロパティがかどうか判定する。
        戻り値:
        作成日時用のプロパティのとき true を返す。
      • isCreatedBy

        public boolean isCreatedBy()
        作成者用のプロパティがかどうか判定する。
        戻り値:
        作成者用のプロパティのとき true を返す。
      • isUpdatedAt

        public boolean isUpdatedAt()
        修正日時用のプロパティがかどうか判定する。
        戻り値:
        修正日時用のプロパティのとき true を返す。
      • isUpdatedBy

        public boolean isUpdatedBy()
        修正者用のプロパティがかどうか判定する。
        戻り値:
        修正者用のプロパティのとき true を返す。
      • setEmbeddedableId

        public void setEmbeddedableId​(boolean embeddedableId)
        埋め込み型の主キーの子プロパティかどうか。
      • getColumnMeta

        public ColumnMeta getColumnMeta()
        カラムのメタ情報
      • setColumnMeta

        public void setColumnMeta​(ColumnMeta columnMeta)
        カラムのメタ情報
      • getValueType

        public ValueType<?> getValueType()
        値の変換処理
      • setValueType

        public void setValueType​(ValueType<?> valueType)
        値の変換処理
      • getIdGenerationContext

        public Optional<IdGenerationContext> getIdGenerationContext()
        生成対象の識別子の情報。

        ID生成時に渡す際の情報として使用するので、効率化のためにここで事前に作成して保持しておく。