PrismPrettyPrinter.java 文件源码

java
阅读 30 收藏 0 点赞 0 评论 0

项目:midpoint 作者:
public static void debugDumpValue(StringBuilder sb, int expectedIndent, Object value, PrismContext prismContext, QName elementName, String defaultLanguage) {
    if (value instanceof DebugDumpable) {
        sb.append(((DebugDumpable)value).debugDump(expectedIndent));
        return;
    }
    String formatted;
    String language = DebugUtil.getPrettyPrintBeansAs() != null ? DebugUtil.getPrettyPrintBeansAs() : defaultLanguage;
    if (elementName == null) {
        elementName = new QName("value");
    }
    if (language != null && value != null && !(value instanceof Enum) && prismContext != null
            && value.getClass().getAnnotation(XmlType.class) != null) {
        try {
            formatted = prismContext.serializerFor(language).serializeRealValue(value, elementName);
        } catch (SchemaException e) {
            formatted = PrettyPrinter.prettyPrint(value);
        }
    } else {
        formatted = PrettyPrinter.prettyPrint(value);
    }
    sb.append(DebugUtil.fixIndentInMultiline(expectedIndent, DebugDumpable.INDENT_STRING, formatted));
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号