org.seasar.doma.jdbc.entity
クラス BasicPropertyType<PE,E extends PE,V,D>

java.lang.Object
  上位を拡張 org.seasar.doma.jdbc.entity.BasicPropertyType<PE,E,V,D>
すべての実装されたインタフェース:
org.seasar.doma.internal.jdbc.criteria.ColumnCriterion<V>, org.seasar.doma.internal.jdbc.criteria.Criterion<V>, org.seasar.doma.internal.jdbc.criteria.OrderItemCriterion<V>, EntityPropertyType<E,V>
直系の既知のサブクラス:
AssignedIdPropertyType, GeneratedIdPropertyType, VersionPropertyType

public class BasicPropertyType<PE,E extends PE,V,D>
extends Object
implements EntityPropertyType<E,V>

基本のプロパティ型です。

作成者:
taedium

入れ子のクラスの概要
protected static interface BasicPropertyType.AccessorFactory<E,V>
          ラッパーのアクセサのファクトリです。
protected static class BasicPropertyType.DomainAccessorFactory<E,V,D>
          ドメインのアクセサのファクトリです。
protected static class BasicPropertyType.DomainMapAccessorFactory<V,D>
          ドメインのMap用アクセサのファクトリです。
protected static class BasicPropertyType.EnumWrapperFactory<V>
          列挙型のラッパーのファクトリです。
protected static interface BasicPropertyType.MapAccessorFactory<V>
           
protected static class BasicPropertyType.ParentValueAccessorFactory<PE,E extends PE,V>
          親の値のアクセサのファクトリです。
protected static class BasicPropertyType.ParentValueMapAccessorFactory<PE,E extends PE,V>
          親の値のMap用アクセサのファクトリです。
protected static class BasicPropertyType.SimpleWrapperFactory<V>
          単純なラッパーのファクトリです。
protected static class BasicPropertyType.ValueAccessorFactory<E,V>
          値のアクセサのファクトリです。
protected static class BasicPropertyType.ValueMapAccessorFactory<V>
          値のMap用アクセサのファクトリです。
protected static interface BasicPropertyType.WrapperFactory<V>
          ラッパーのファクトリです。
 
フィールドの概要
protected  BasicPropertyType.AccessorFactory<E,V> accessorFactory
          ラッパーのアクセサのファクトリ
protected  String columnName
          カラム名
protected  DomainType<V,D> domainType
          ドメインのメタタイプ
protected  Class<E> entityClass
          エンティティのクラス
protected  Class<V> entityPropertyClass
          プロパティのクラス
protected  Field field
          プロパティのフィールド
protected  boolean insertable
          挿入可能かどうか
protected  BasicPropertyType.MapAccessorFactory<V> mapAccessorFactory
          ラッパーのMapアクセサのファクトリ
protected  String name
          プロパティの名前
protected  EntityPropertyType<PE,V> parentEntityPropertyType
          親のエンティティのプロパティ型
protected  boolean updatable
          更新可能かどうか
protected  Class<?> wrapperClass
          ラッパーのクラス
protected  BasicPropertyType.WrapperFactory<V> wrapperFactory
          ラッパーのファクトリ
 
コンストラクタの概要
BasicPropertyType(Class<E> entityClass, Class<V> entityPropertyClass, Class<?> wrapperClass, EntityPropertyType<PE,V> parentEntityPropertyType, DomainType<V,D> domainType, String name, String columnName, boolean insertable, boolean updatable)
          インスタンスを構築します。
 
メソッドの概要
<R,P,TH extends Throwable>
R
accept(org.seasar.doma.internal.jdbc.criteria.CriterionVisitor<R,P,TH> visitor, P p)
           
 String getColumnName()
          カラム名を返します。
 Object getCopy(E entity)
          エンティティからこのプロパティ型に対応する値をコピーして返します。
 String getName()
          プロパティの名前を返します。
 Class<V> getType()
           
 Wrapper<V> getWrapper(E entity)
          値のラッパーを返します。
 Wrapper<V> getWrapper(Map<String,Object> properties)
          値のラッパーを返します。
 boolean isId()
          識別子かどうかを返します。
 boolean isInsertable()
          挿入可能かどうかを返します。
 boolean isUpdatable()
          更新可能かどうかを返します。
 boolean isVersion()
          バージョンかどうかを返します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

entityClass

protected final Class<E extends PE> entityClass
エンティティのクラス


entityPropertyClass

protected final Class<V> entityPropertyClass
プロパティのクラス


wrapperClass

protected final Class<?> wrapperClass
ラッパーのクラス


parentEntityPropertyType

protected final EntityPropertyType<PE,V> parentEntityPropertyType
親のエンティティのプロパティ型


domainType

protected final DomainType<V,D> domainType
ドメインのメタタイプ


name

protected final String name
プロパティの名前


columnName

protected final String columnName
カラム名


insertable

protected final boolean insertable
挿入可能かどうか


updatable

protected final boolean updatable
更新可能かどうか


field

protected final Field field
プロパティのフィールド


wrapperFactory

protected final BasicPropertyType.WrapperFactory<V> wrapperFactory
ラッパーのファクトリ


accessorFactory

protected final BasicPropertyType.AccessorFactory<E extends PE,V> accessorFactory
ラッパーのアクセサのファクトリ


mapAccessorFactory

protected final BasicPropertyType.MapAccessorFactory<V> mapAccessorFactory
ラッパーのMapアクセサのファクトリ

コンストラクタの詳細

BasicPropertyType

public BasicPropertyType(Class<E> entityClass,
                         Class<V> entityPropertyClass,
                         Class<?> wrapperClass,
                         EntityPropertyType<PE,V> parentEntityPropertyType,
                         DomainType<V,D> domainType,
                         String name,
                         String columnName,
                         boolean insertable,
                         boolean updatable)
インスタンスを構築します。

パラメータ:
entityClass - エンティティのクラス
entityPropertyClass - プロパティのクラス
wrapperClass - ラッパーのクラス
parentEntityPropertyType - 親のエンティティのプロパティ型、親のエンティティを持たない場合 null
domainType - ドメインのメタタイプ、ドメインでない場合 null
name - プロパティの名前
columnName - カラム名
insertable - 挿入可能かどうか
updatable - 更新可能かどうか
メソッドの詳細

getCopy

public Object getCopy(E entity)
インタフェース EntityPropertyType の記述:
エンティティからこのプロパティ型に対応する値をコピーして返します。

定義:
インタフェース EntityPropertyType<E extends PE,V> 内の getCopy
パラメータ:
entity - エンティティ
戻り値:
プロパティの値

getWrapper

public Wrapper<V> getWrapper(E entity)
値のラッパーを返します。

定義:
インタフェース EntityPropertyType<E extends PE,V> 内の getWrapper
パラメータ:
entity - エンティティ
戻り値:
値のラッパー

getWrapper

public Wrapper<V> getWrapper(Map<String,Object> properties)
インタフェース EntityPropertyType の記述:
値のラッパーを返します。

定義:
インタフェース EntityPropertyType<E extends PE,V> 内の getWrapper
パラメータ:
properties - エンティティプロパティのマップ
戻り値:
値のラッパー

getName

public String getName()
インタフェース EntityPropertyType の記述:
プロパティの名前を返します。

定義:
インタフェース EntityPropertyType<E extends PE,V> 内の getName
戻り値:
名前

getColumnName

public String getColumnName()
インタフェース EntityPropertyType の記述:
カラム名を返します。

定義:
インタフェース EntityPropertyType<E extends PE,V> 内の getColumnName
戻り値:
カラム名

isId

public boolean isId()
インタフェース EntityPropertyType の記述:
識別子かどうかを返します。

定義:
インタフェース EntityPropertyType<E extends PE,V> 内の isId
戻り値:
識別子の場合 true

isVersion

public boolean isVersion()
インタフェース EntityPropertyType の記述:
バージョンかどうかを返します。

定義:
インタフェース EntityPropertyType<E extends PE,V> 内の isVersion
戻り値:
バージョンの場合 true

isInsertable

public boolean isInsertable()
インタフェース EntityPropertyType の記述:
挿入可能かどうかを返します。

定義:
インタフェース EntityPropertyType<E extends PE,V> 内の isInsertable
戻り値:
挿入可能の場合 true

isUpdatable

public boolean isUpdatable()
インタフェース EntityPropertyType の記述:
更新可能かどうかを返します。

定義:
インタフェース EntityPropertyType<E extends PE,V> 内の isUpdatable
戻り値:
更新可能の場合 true

getType

public Class<V> getType()
定義:
インタフェース org.seasar.doma.internal.jdbc.criteria.ColumnCriterion<V> 内の getType

accept

public <R,P,TH extends Throwable> R accept(org.seasar.doma.internal.jdbc.criteria.CriterionVisitor<R,P,TH> visitor,
                                           P p)
         throws TH extends Throwable
定義:
インタフェース org.seasar.doma.internal.jdbc.criteria.Criterion<V> 内の accept
例外:
TH extends Throwable


Copyright © 2009-2014 The Seasar Foundation. All Rights Reserved.