<style type="text/css">div#xqgh table {font-family:Verdana, Geneva, Arial, Helvetica, sans-serif; font-size:11px; empty-cells:show; color:#000; border-collapse:collapse;}div#xqgh td {border:1px solid #000; vertical-align:top; padding:2px; empty-cells:show;}div#xqgh td span {font-weight:bold;}div#xqgh td.n0 {color:#333399;border-color:#333399;background-color:#ccf;}div#xqgh td.h0 {color:#333399;border-color:#333399;background-color:#99f;}div#xqgh td.n1 {color:#990000;border-color:#990000;background-color:#fc9;}div#xqgh td.h1 {color:#990000;border-color:#990000;background-color:#f60;}div#xqgh td.n2 {color:#002340;border-color:#002340;background-color:#dee3e9;}div#xqgh td.h2 {color:#002340;border-color:#002340;background-color:#6289a3;}</style>
function doOutput( attrib, meta, context, caller ) {
var dumpID = createId();
var hasReference = structKeyExists( arguments.meta,'hasReference' ) && arguments.meta.hasReference;var result = this[ arguments.attrib.format ]( arguments.meta, arguments.context, arguments.attrib.expand, arguments.attrib.output, hasReference, 0, dumpID );// sleep( 5000 ); // simulate long process to test async=true
if (arguments.attrib.output EQ "browser") {echo(variables.NEWLINE & '<!-- ==start== dump #now()# format: #arguments.attrib.format# -->' & variables.NEWLINE);echo('<div id="#dumpID#" class="-lucee-dump">#result#</div>' & variables.NEWLINE);echo('<!-- ==stop== dump -->' & variables.NEWLINE);}else if (arguments.attrib.output EQ "console") {systemOutput(result,true);
}else {
file action="write" addnewline="yes" file="#arguments.attrib.output#" output="#result#";}}