public JsonSettings build() { return new JsonSettings(keyQuoted, ignoreNull, ignoreFalse, ignoreEmptyString, ignoreEmptyArray, nullToEmptyString, namingStyle, dateFormat, dateTimeFormatter, propertyFilter, beanFilter); }
@Override public NamingStyle getNamingStyle() { return settings.getNamingStyle(); }
@Override public boolean isIgnoreEmptyArray() { return settings.isIgnoreEmptyArray(); }
public JsonWriterImpl(JsonSettings settings, Appendable out, boolean detectCyclicReferences, boolean ignoreCyclicReferences, int maxDepth) { super(); this.settings = settings; this.out = out; this.detectCyclicReferences = detectCyclicReferences; this.ignoreCyclicReferences = ignoreCyclicReferences; this.maxDepth = depth <= 0 ? MAX_DEPTH : maxDepth; this.beanFilter = settings.getBeanFilter(); this.propertyFilter = settings.getPropertyFilter(); if (detectCyclicReferences) { references = new IdentityHashMap<>(); } }
public JsonWriter value(Date date) { try { if (null == date) { out.append(NULL_STRING); } else { if (date instanceof Time) { return value((Time) date); } if (date instanceof java.sql.Date) { return value((java.sql.Date) date); } if (null != settings.getDateTimeFormatter()) { Instant instant = Instant.ofEpochMilli(date.getTime()); out.append(DOUBLE_QUOTE).append(settings.getDateTimeFormatter().format(instant)).append(DOUBLE_QUOTE); } else if (null != settings.getDateFormat()) { out.append(DOUBLE_QUOTE).append(settings.getDateFormat().format(date)).append(DOUBLE_QUOTE); } else { out.append(String.valueOf(date.getTime())); } } } catch (IOException e) { wrapAndThrow(e); } return this; }
@Override public boolean isIgnoreEmptyString() { return settings.isIgnoreEmptyString(); }
@Override public boolean isIgnoreFalse() { return settings.isIgnoreFalse(); }
@Override public boolean isIgnoreNull() { return settings.isIgnoreNull(); }