public class XmlLogger extends java.lang.Object implements Listener<NegotiationEvent>, java.io.Closeable
NegotiationEvent
s to a XML file. Logs
the SessionEndedNormallyEvent
.Modifier and Type | Field and Description |
---|---|
protected java.util.Map<java.lang.String,java.util.Map<java.lang.Object,java.lang.Object>> |
agentLogs
map
|
Constructor and Description |
---|
XmlLogger(java.io.OutputStream out,
java.lang.String topLabel) |
Modifier and Type | Method and Description |
---|---|
void |
close() |
void |
notifyChange(NegotiationEvent e)
a notification call that occurs when something changed.
|
protected java.util.Map<java.lang.String,java.util.Map<java.lang.Object,java.lang.Object>> agentLogs
AgentLogEvent
.public XmlLogger(java.io.OutputStream out, java.lang.String topLabel) throws java.io.FileNotFoundException, javax.xml.stream.XMLStreamException
out
- OutputStream
to write the log to. If this is a file,
we recommend to use the extension ".xml". This logger becomes
owner of this outputstream and will close it eventually.topLabel
- the top level label to use in the output filejava.io.FileNotFoundException
javax.xml.stream.XMLStreamException
public void close() throws java.io.IOException
close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
java.io.IOException
public void notifyChange(NegotiationEvent e)
Listener
SwingUtilities.invokeLater(Runnable)
. We recommend to avoid
synchronize as this will can block indefinitely (see notice 1) which
might lead to deadlocks.notifyChange
in interface Listener<NegotiationEvent>
e
- additional data, typically the new value associated with the
event