クラス PropertyBase
- java.lang.Object
-
- com.github.mygreen.sqlmapper.core.meta.PropertyBase
-
- 直系の既知のサブクラス:
PropertyMeta,StoredPropertyMeta
public abstract class PropertyBase extends Object
JavaBeanのプロパティの基本的な機能を提供します。- 導入されたバージョン:
- 0.3
- 作成者:
- T.TSUCHIE
-
-
フィールドの概要
フィールド 修飾子とタイプ フィールド 説明 protected Map<Class<? extends Annotation>,Annotation>annotationMapアノテーションの情報protected Optional<Field>fieldフィールド情報protected Stringnameプロパティ名protected Class<?>propertyTypeプロパティタイプprotected Optional<Method>readMethodgetterメソッドprotected Optional<Method>writeMethodsetterメソッド
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 PropertyBase(String name, Class<?> propertyType)
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 voidaddAnnotation(@NonNull Class<? extends Annotation> annoClass, @NonNull Annotation anno)アノテーションを追加します。<A extends Annotation>
Optional<A>getAnnotation(Class<A> annoClass)タイプを指定して、アノテーションを取得する。Class<?>getDeclaringClass()プロパティが定義されているクラス情報を取得します。Optional<Field>getField()プロパティに対するフィールドを情報を取得します。StringgetName()プロパティ名Class<?>getPropertyType()プロパティタイプOptional<Method>getReadMethod()プロパティに対するgetterメソッドを取得します。Optional<Method>getWriteMethod()プロパティに対するsetterメソッドを取得します。<A extends Annotation>
booleanhasAnnotation(@NonNull Class<A> annoClass)指定したアノテーションを持つか判定します。booleanisReadable()読み込み可能なプロパティか判定する。booleanisWritable()書込み可能なプロパティか判定する。voidsetField(Field field)プロパティに対するフィールドを設定します。voidsetReadMethod(Method method)プロパティに対するgetterメソッドを設定します。voidsetWriteMethod(Method method)プロパティに対するsetterメソッドを設定します。
-
-
-
フィールドの詳細
-
name
protected final String name
プロパティ名
-
propertyType
protected final Class<?> propertyType
プロパティタイプ
-
annotationMap
protected Map<Class<? extends Annotation>,Annotation> annotationMap
アノテーションの情報
-
-
メソッドの詳細
-
getDeclaringClass
public Class<?> getDeclaringClass()
プロパティが定義されているクラス情報を取得します。- 戻り値:
- プロパティが定義されているクラス情報
- 例外:
IllegalStateException- クラス情報を取得するための情報が不足している場合。
-
isReadable
public boolean isReadable()
読み込み可能なプロパティか判定する。getterメソッドまたはpublicなフィールドが存在する場合
- 戻り値:
- trueのとき読み込み可能。
-
isWritable
public boolean isWritable()
書込み可能なプロパティか判定する。setterメソッドまたはpublicなフィールドが存在する場合
- 戻り値:
- trueのと書き込み可能。
-
setField
public void setField(Field field)
プロパティに対するフィールドを設定します。- パラメータ:
field- フィールド(nullを許容します)
-
setWriteMethod
public void setWriteMethod(Method method)
プロパティに対するsetterメソッドを設定します。- パラメータ:
method- setterメソッド(nullを許容します)
-
getWriteMethod
public Optional<Method> getWriteMethod()
プロパティに対するsetterメソッドを取得します。- 戻り値:
- プロパティに対するsetterメソッド。
-
setReadMethod
public void setReadMethod(Method method)
プロパティに対するgetterメソッドを設定します。- パラメータ:
method- getterメソッド(nullを許容します)
-
getReadMethod
public Optional<Method> getReadMethod()
プロパティに対するgetterメソッドを取得します。- 戻り値:
- プロパティに対するgetterメソッド
-
addAnnotation
public void addAnnotation(@NonNull @NonNull Class<? extends Annotation> annoClass, @NonNull @NonNull Annotation anno)アノテーションを追加します。- パラメータ:
annoClass- アノテーションのタイプanno- 追加するアノテーション
-
hasAnnotation
public <A extends Annotation> boolean hasAnnotation(@NonNull @NonNull Class<A> annoClass)
指定したアノテーションを持つか判定します。- 型パラメータ:
A- アノテーションのタイプ。- パラメータ:
annoClass- アノテーションのクラスタイプ。- 戻り値:
- trueの場合、アノテーションを持ちます。
-
getAnnotation
public <A extends Annotation> Optional<A> getAnnotation(Class<A> annoClass)
タイプを指定して、アノテーションを取得する。- 型パラメータ:
A- アノテーションのタイプ。- パラメータ:
annoClass- アノテーションのクラスタイプ。- 戻り値:
- 存在しない場合、空を返します。
-
getName
public String getName()
プロパティ名
-
getPropertyType
public Class<?> getPropertyType()
プロパティタイプ
-
-