return result;
}
public JexlContext addFieldsToContext(final Object attributable, final JexlContext jexlContext) {
JexlContext context = jexlContext == null
? new MapContext()
: jexlContext;
final Field[] fields = attributable.getClass().getDeclaredFields();
for (int i = 0; i < fields.length; i++) {
try {
Field field = fields[i];
field.setAccessible(true);
final String fieldName = field.getName();
if ((!field.isSynthetic()) && (!fieldName.startsWith("pc"))
&& (!ArrayUtils.contains(IGNORE_FIELDS, fieldName))
&& (!Iterable.class.isAssignableFrom(field.getType()))
&& (!field.getType().isArray())) {
final Object fieldValue = field.get(attributable);
context.set(fieldName, fieldValue == null
? ""
: (field.getType().equals(Date.class)
? DataFormat.format((Date) fieldValue, false)
: fieldValue));