
com.arellomobile.anlib.inject.injectors.ArgumentFieldsChecker Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of anlib Show documentation
Show all versions of anlib Show documentation
Arello-Mobile library for Android
The newest version!
package com.arellomobile.anlib.inject.injectors;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import com.arellomobile.anlib.inject.InjectException;
import com.arellomobile.anlib.inject.injectors.InjectArgument.InjectArgumentHolder;
/**
* Jan 27, 2015
*
* @author denis.mirochnik
*/
public class ArgumentFieldsChecker extends AbsFieldsChecker
{
public static final ArgumentFieldsChecker INSTANCE = new ArgumentFieldsChecker();
@Override
public InjectArgumentHolder checkField(Field field)
{
InjectArgument anno = field.getAnnotation(InjectArgument.class);
if (anno != null)
{
final int modifiers = field.getModifiers();
if (Modifier.isStatic(modifiers))
{
throw new InjectException("Field cannot be static");
}
if (Modifier.isFinal(modifiers))
{
throw new InjectException("Field cannot be final");
}
return InjectArgumentHolder.of(anno);
}
return null;
}
private ArgumentFieldsChecker()
{
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy