use of lucee.runtime.dump.DumpProperties in project Lucee by lucee.
the class DumpStruct method call.
public static Struct call(PageContext pc, Object object, double maxLevel, String show, String hide, double keys, boolean metainfo, boolean showUDFs, String label) {
if (show != null && "all".equalsIgnoreCase(show.trim()))
show = null;
if (hide != null && "all".equalsIgnoreCase(hide.trim()))
hide = null;
Set<String> setShow = (show != null) ? ListUtil.listToSet(show.toLowerCase(), ",", true) : null;
Set<String> setHide = (hide != null) ? ListUtil.listToSet(hide.toLowerCase(), ",", true) : null;
DumpProperties properties = new DumpProperties((int) maxLevel, setShow, setHide, (int) keys, metainfo, showUDFs);
DumpData dd = DumpUtil.toDumpData(object, pc, (int) maxLevel, properties);
if (!StringUtil.isEmpty(label)) {
DumpTable table = new DumpTable("#ffffff", "#cccccc", "#000000");
table.appendRow(1, new SimpleDumpData(label));
table.appendRow(0, dd);
dd = table;
}
RefBoolean hasReference = new RefBooleanImpl(false);
Struct sct = toStruct(dd, object, hasReference);
sct.setEL("hasReference", hasReference.toBoolean());
addMetaData(sct, object);
return sct;
}
use of lucee.runtime.dump.DumpProperties in project Lucee by lucee.
the class Dump method call.
public static String call(PageContext pc, Object object, String label, boolean expand, double maxLevel, String show, String hide, String output, String format, double keys, boolean metainfo, boolean showUDFs) throws PageException {
if (show != null && "all".equalsIgnoreCase(show.trim()))
show = null;
if (hide != null && "all".equalsIgnoreCase(hide.trim()))
hide = null;
// PageContext pcc = pc;
try {
// output
int defType = DumpWriter.DEFAULT_RICH;
int outputType = OUTPUT_TYPE_NONE;
Resource outputRes = null;
if (!StringUtil.isEmpty(output, true)) {
output = output.trim();
if ("browser".equalsIgnoreCase(output)) {
outputType = OUTPUT_TYPE_BROWSER;
defType = DumpWriter.DEFAULT_RICH;
} else if ("console".equalsIgnoreCase(output)) {
outputType = OUTPUT_TYPE_CONSOLE;
defType = DumpWriter.DEFAULT_PLAIN;
} else {
outputType = OUTPUT_TYPE_RESOURCE;
defType = DumpWriter.DEFAULT_RICH;
outputRes = ResourceUtil.toResourceNotExisting(pc, output);
}
}
// format
DumpWriter writer = pc.getConfig().getDumpWriter(format, defType);
Set<String> setShow = (show != null) ? ListUtil.listToSet(show.toLowerCase(), ",", true) : null;
Set<String> setHide = (hide != null) ? ListUtil.listToSet(hide.toLowerCase(), ",", true) : null;
DumpProperties properties = new DumpProperties((int) maxLevel, setShow, setHide, (int) keys, metainfo, showUDFs);
DumpData dd = DumpUtil.toDumpData(object, pc, (int) maxLevel, properties);
if (!StringUtil.isEmpty(label)) {
DumpTable table = new DumpTable("#ffffff", "#cccccc", "#000000");
table.appendRow(1, new SimpleDumpData(label));
// table.appendRow(1,new SimpleDumpData(getContext()));
table.appendRow(0, dd);
dd = table;
}
// formatType==FORMAT_TYPE_TEXT
boolean isText = "text".equalsIgnoreCase(format);
if (OUTPUT_TYPE_BROWSER == outputType || outputType == OUTPUT_TYPE_NONE) {
if (isText)
pc.forceWrite("<pre>");
pc.forceWrite(writer.toString(pc, dd, expand));
if (isText)
pc.forceWrite("</pre>");
} else if (OUTPUT_TYPE_CONSOLE == outputType)
System.out.println(writer.toString(pc, dd, expand));
else if (OUTPUT_TYPE_RESOURCE == outputType)
IOUtil.write(outputRes, writer.toString(pc, dd, expand) + "\n************************************************************************************\n", ((PageContextImpl) pc).getResourceCharset(), true);
} catch (IOException e) {
throw Caster.toPageException(e);
}
return "";
}
Aggregations