Hello Commons-Lang,
I need to exclude a given field with
ToStringBuilder.reflectionToString(Object).
The Object I pass in is a javax.jms.Message which is a JMS abstract
interface which can be implemented with all sorts of fields. I know I just
do not want "messageText".
My current implementation is nasty and does not feel right since I have to
use a ToStringStyle:
private Object getMessageDescription(Message message) {
class TempToStringStyle extends ToStringStyle {
public void append(StringBuffer buffer, String
fieldName, Object value, Boolean fullDetail) {
if ("messageText".equals(fieldName) ==
false) {
super.append(buffer, fieldName, value, fullDetail);
}
}
}
return ToStringBuilder.reflectionToString(message, new
TempToStringStyle(), false);
}
I could imagine doing something like:
ToStringBuilder builder = new ToStringBuilder(message);
builder.remove(messageText);
return builder.toString();
Any thoughts?
Gary