![JAR search and dependency download from the Maven repository](/logo.png)
org.sklsft.commons.mapper.beans.MappableBean Maven / Gradle / Ivy
package org.sklsft.commons.mapper.beans;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.List;
import java.util.Map;
public class MappableBean {
public Class beanClass;
public List accessibleFields;
public Map accessibleFieldsMap;
public Object getValue(String fieldName, T object) {
AccessibleField accessibleField = accessibleFieldsMap.get(fieldName);
if (accessibleField == null) {
throw new IllegalArgumentException("No accessible field " + fieldName + " for class " + beanClass.getName());
}
Method getter = accessibleField.getter;
try {
return getter.invoke(object);
} catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {
throw new IllegalArgumentException(e);
}
}
public void setValue(String fieldName, Object fieldValue, T object) {
AccessibleField accessibleField = accessibleFieldsMap.get(fieldName);
if (accessibleField == null) {
throw new IllegalArgumentException("No accessible field " + fieldName + " for class " + beanClass.getName());
}
Method setter = accessibleField.setter;
try {
setter.invoke(object, fieldValue);
} catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {
throw new IllegalArgumentException(e);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy