public class FieldAccessor extends Object
コンストラクタと説明 |
---|
FieldAccessor(Field field,
Comparator<Annotation> comparator)
フィールド情報を指定するコンストラクタ。
|
修飾子とタイプ | メソッドと説明 |
---|---|
<A extends Annotation> |
getAnnotation(Class<A> annoClass)
アノテーションのタイプを指定してアノテーションを取得します。
|
<A extends Annotation> |
getAnnotations(Class<A> annoClass)
アノテーションのタイプを指定してアノテーション一覧を取得します。
|
List<Annotation> |
getAnnotationsByGroup(Class<?>... groups)
付与されているアノテーションの一覧を取得する。
|
<A extends Annotation> |
getAnnotationsByGroup(Class<A> annoClass,
Class<?>... groups)
アノテーションのタイプとグループを指定してアノテーションを取得します。
|
Class<?> |
getDeclaredClass()
フィールドが定義されているクラス情報を取得する。
|
String |
getName()
フィールドの名称を取得する。
|
String |
getNameWithClass()
クラス名付きのフィールド名称を取得する。
|
Class<?> |
getType()
フィールドのタイプを取得する。
|
String |
getTypeName()
フィールドのタイプのクラス名称を取得する。
|
Object |
getValue(Object record)
フィールドの値を取得する。
|
<A extends Annotation> |
hasAnnotation(Class<A> annoClass)
指定したアノテーションと持つかどうか。
|
<A extends Annotation> |
hasAnnotationByGroup(Class<A> annoClass,
Class<?>... groups)
グループを指定して指定したアノテーションを持つかどうか判定します。
|
boolean |
isTypeOf(Class<?> clazz)
フィールドのタイプが指定してたタイプかどうか。
|
public FieldAccessor(Field field, Comparator<Annotation> comparator)
field
- フィールド情報comparator
- アノテーションの順序を比較するためのコンパレータ。NullPointerException
- field or comparator == null.public <A extends Annotation> Optional<A> getAnnotation(Class<A> annoClass)
繰り返しのアノテーションの場合、初めに見つかったものを返します。
A
- 取得対象のアノテーションのタイプannoClass
- 取得対象のアノテーションのタイプ。NullPointerException
- annoClass is null.public <A extends Annotation> List<A> getAnnotations(Class<A> annoClass)
繰り返しのアノテーションの場合、初めに見つかったものを返します。
A
- 取得対象のアノテーションのタイプannoClass
- 取得対象のアノテーションのタイプ。NullPointerException
- annoClass is null.public <A extends Annotation> boolean hasAnnotation(Class<A> annoClass)
繰り返し可能なアノテーションの場合、初めに見つかったものを返します。
A
- 取得対象のアノテーションのタイプannoClass
- 取得対象のアノテーションのタイプ。NullPointerException
- annoClass is null.public <A extends Annotation> List<A> getAnnotationsByGroup(Class<A> annoClass, Class<?>... groups)
A
- 取得対象のアノテーションのタイプannoClass
- 取得対象のアノテーションのタイプ。groups
- グループ(クラスタイプ)による絞り込み。属性groupsが存在する場合に、絞り込みます。NullPointerException
- annoClass is null.public <A extends Annotation> boolean hasAnnotationByGroup(Class<A> annoClass, Class<?>... groups)
A
- 取得対象のアノテーションのタイプannoClass
- 判定対象のアノテーションのグループgroups
- グループ(クラスタイプ)による絞り込み。属性groupsが存在する場合に、絞り込みます。public List<Annotation> getAnnotationsByGroup(Class<?>... groups)
groups
- グループ(クラスタイプ)による絞り込み。属性groupsが存在する場合に、絞り込みます。public String getName()
public String getNameWithClass()
public Class<?> getType()
public String getTypeName()
public Class<?> getDeclaredClass()
Field.getDeclaringClass()
public boolean isTypeOf(Class<?> clazz)
Class.isAssignableFrom(Class)
により比較を行う。
clazz
- 比較対象のクラスタイプ。public Object getValue(Object record)
record
- レコードオブジェクト。IllegalArgumentException
- レコードのインスタンスがフィールドが定義されているクラスと異なる場合。SuperCsvReflectionException
- フィールドの値の取得に失敗した場合。Copyright © 2022 mygreen. All rights reserved.