public abstract class AbstractTraceListener extends Object implements TraceListener
Constructor and Description |
---|
AbstractTraceListener() |
Modifier and Type | Method and Description |
---|---|
void |
close()
Called at end
|
void |
endCurrentItem(Item item)
Called after a node of the source tree got processed
|
void |
enter(InstructionInfo info,
XPathContext context)
Called when an instruction in the stylesheet gets processed
|
String |
escape(String in)
Escape a string for XML output (in an attribute delimited by double quotes).
|
CodeInjector |
getCodeInjector()
Get the associated CodeInjector to be used at compile time to generate the tracing calls
|
protected abstract String |
getOpeningAttributes() |
PrintStream |
getOutputDestination()
Get the output destination
|
void |
leave(InstructionInfo info)
Called after an instruction of the stylesheet got processed
|
void |
open(Controller controller)
Called at start
|
void |
setOutputDestination(PrintStream stream)
Set the output destination (default is System.err)
|
void |
startCurrentItem(Item item)
Called when an item becomes the context item
|
protected abstract String |
tag(int construct) |
public CodeInjector getCodeInjector()
public void open(Controller controller)
open
in interface TraceListener
controller
- identifies the transformation controller, and provides the listener with
access to context and configuration informationprotected abstract String getOpeningAttributes()
public void close()
close
in interface TraceListener
public void enter(InstructionInfo info, XPathContext context)
enter
in interface TraceListener
info
- gives information about the instruction being
executed, and about the context in which it is executed. This object is mutable,
so if information from the InstructionInfo is to be retained, it must be copied.public String escape(String in)
public void leave(InstructionInfo info)
leave
in interface TraceListener
info
- gives the same information that was supplied to the
enter method, though it is not necessarily the same object. Note that the
line number of the instruction is that of the start tag in the source stylesheet,
not the line number of the end tag.protected abstract String tag(int construct)
public void startCurrentItem(Item item)
startCurrentItem
in interface TraceListener
item
- the new current item. Item objects are not mutable; it is safe to retain
a reference to the Item for later use.public void endCurrentItem(Item item)
endCurrentItem
in interface TraceListener
item
- the item that was current, whose processing is now complete. This will represent
the same underlying item as the corresponding startCurrentItem() call, though it will
not necessarily be the same actual object.public void setOutputDestination(PrintStream stream)
setOutputDestination
in interface TraceListener
stream
- the output destination for tracing outputpublic PrintStream getOutputDestination()
Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.