package org.jboss.seam.wicket.ioc;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import org.jboss.seam.util.Reflections;
public class InjectedField<T extends Annotation> implements InjectedAttribute<T>
{
protected Field field;
protected T annotation;
public InjectedField(Field field, T annotation)
{
this.field = field;
this.annotation = annotation;
}
public Field getMember()
{
return field;
}
public T getAnnotation()
{
return annotation;
}
public Class getType()
{
return field.getType();
}
public void set(Object bean, Object value)
{
field.setAccessible(true);
Reflections.setAndWrap(field, bean, value);
}
@Override
public String toString()
{
return "InjectedField(" + Reflections.toString(field) + ')';
}
}