Gadgetbridge/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/GBToStringBuilder.java

51 lines
1.5 KiB
Java
Raw Normal View History

package nodomain.freeyourgadget.gadgetbridge.util;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
public class GBToStringBuilder extends ToStringBuilder {
public static final GBToStringStyle STYLE = new GBToStringStyle();
private static final SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS", Locale.US);
public GBToStringBuilder(final Object object) {
super(object, STYLE);
}
public static class GBToStringStyle extends ToStringStyle {
public GBToStringStyle() {
super();
this.setUseShortClassName(true);
this.setUseIdentityHashCode(false);
this.setContentStart("{");
this.setContentEnd("}");
this.setArrayStart("[");
this.setArrayEnd("]");
this.setFieldSeparator(", ");
this.setFieldNameValueSeparator("=");
this.setNullText("null");
}
@Override
public void append(final StringBuffer buffer, final String fieldName, final Object value, final Boolean fullDetail) {
// omit nulls
if (value != null) {
if (value instanceof Date) {
super.append(buffer, fieldName, SDF.format(value), fullDetail);
} else {
super.append(buffer, fieldName, value, fullDetail);
}
}
}
}
}