private final static Logger logger = LoggerFactory.getLogger(DebugValueProcess.class);
@Override
public Object process(Object value, ValueProcessInvocation invocation) throws BeanMappingException {
BeanMappingField currentField = invocation.getContext().getCurrentField();
if (currentField.isMapping() == false && invocation.getContext().getBeanObject().getBehavior().isDebug()
&& logger.isDebugEnabled()) {
StringBuilder builder = new StringBuilder();
builder.append("srcName[" + currentField.getSrcField().getName());
builder.append("],srcClass[" + ObjectUtils.toString(currentField.getSrcField().getClazz(), "null"));
builder.append("],targetName[" + currentField.getTargetField().getName());
builder.append("],targetClass[" + ObjectUtils.toString(currentField.getTargetField().getClazz(), "null"));
if (StringUtils.isNotEmpty(currentField.getDefaultValue())) {
builder.append("],[defaultValue=" + currentField.getDefaultValue());
}
if (StringUtils.isNotEmpty(currentField.getConvertor())) {
builder.append("],[convertor=" + currentField.getConvertor());
}
if (StringUtils.isNotEmpty(currentField.getScript())) {
builder.append("],[script=" + currentField.getScript());
}
builder.append("], Value = " + ObjectUtils.toString(value, "null"));
logger.debug(builder.toString());
}
return invocation.proceed(value); // 继续传递