Package org.graphstream.util
Class VerboseSink
java.lang.Object
org.graphstream.util.VerboseSink
- All Implemented Interfaces:
AttributeSink
,ElementSink
,Sink
public class VerboseSink extends Object implements Sink
A sink that can be used to display event in a PrintStream like System.out.
Format of messages can be customized, inserting keywords quoted with '%' in
the format.
'%sourceId%' and '%timeId%' keywords are defined for each event. Following
defines keywords available for each event types:
- ADD_NODE
-
- %nodeId%
- ADD_NODE_ATTRIBUTE
-
- %nodeId%
- %attributeId%
- %value%
- SET_NODE_ATTRIBUTE
-
- %nodeId%
- %attributeId%
- %value%
- DEL_NODE_ATTRIBUTE
-
- %nodeId%
- %attributeId%
- DEL_NODE
-
- %nodeId%
- ADD_EDGE
-
- %edgeId%
- %source%
- %target%
- %directed%
- ADD_EDGE_ATTRIBUTE
-
- %edgeId%
- %attributeId%
- %value%
- SET_EDGE_ATTRIBUTE
-
- %edgeId%
- %attributeId%
- %value%
- DEL_EDGE_ATTRIBUTE
-
- %edgeId%
- %attributeId%
- DEL_EDGE
-
- %edgeId%
- ADD_GRAPH_ATTRIBUTE
-
- %attributeId%
- %value%
- SET_GRAPH_ATTRIBUTE
-
- %attributeId%
- %value%
- DEL_GRAPH_ATTRIBUTE
-
- %attributeId%
- CLEAR
- STEP_BEGINS
-
- %step%
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VerboseSink.EventType
Enumeration defining type of events. -
Field Summary
Fields Modifier and Type Field Description static String
DEFAULT_AE_FORMAT
static String
DEFAULT_AN_FORMAT
static String
DEFAULT_CEA_FORMAT
static String
DEFAULT_CEC_FORMAT
static String
DEFAULT_CER_FORMAT
static String
DEFAULT_CGA_FORMAT
static String
DEFAULT_CGC_FORMAT
static String
DEFAULT_CGR_FORMAT
static String
DEFAULT_CL_FORMAT
static String
DEFAULT_CNA_FORMAT
static String
DEFAULT_CNC_FORMAT
static String
DEFAULT_CNR_FORMAT
static String
DEFAULT_DE_FORMAT
static String
DEFAULT_DN_FORMAT
static String
DEFAULT_ST_FORMAT
-
Constructor Summary
Constructors Constructor Description VerboseSink()
Create a new verbose sink using System.out.VerboseSink(PrintStream out)
Create a new verbose sink. -
Method Summary
Modifier and Type Method Description void
edgeAdded(String sourceId, long timeId, String edgeId, String fromNodeId, String toNodeId, boolean directed)
An edge was inserted in graph.void
edgeAttributeAdded(String sourceId, long timeId, String edgeId, String attribute, Object value)
A edge attribute was added.void
edgeAttributeChanged(String sourceId, long timeId, String edgeId, String attribute, Object oldValue, Object newValue)
A edge attribute was changed.void
edgeAttributeRemoved(String sourceId, long timeId, String edgeId, String attribute)
A edge attribute was removed.void
edgeRemoved(String sourceId, long timeId, String edgeId)
An edge of graph was removed.The nodes the edge connects may already have been removed from the graph.void
graphAttributeAdded(String sourceId, long timeId, String attribute, Object value)
A graph attribute was added.void
graphAttributeChanged(String sourceId, long timeId, String attribute, Object oldValue, Object newValue)
A graph attribute was changed.void
graphAttributeRemoved(String sourceId, long timeId, String attribute)
A graph attribute was removed.void
graphCleared(String sourceId, long timeId)
The whole graph was cleared.void
nodeAdded(String sourceId, long timeId, String nodeId)
A node was inserted in the given graph.void
nodeAttributeAdded(String sourceId, long timeId, String nodeId, String attribute, Object value)
A node attribute was added.void
nodeAttributeChanged(String sourceId, long timeId, String nodeId, String attribute, Object oldValue, Object newValue)
A node attribute was changed.void
nodeAttributeRemoved(String sourceId, long timeId, String nodeId, String attribute)
A node attribute was removed.void
nodeRemoved(String sourceId, long timeId, String nodeId)
A node was removed from the graph.void
setAttributeEventEnabled(boolean on)
Enable or disable all messages associated with element events.void
setAutoFlush(boolean on)
Enable or disable autoflush.void
setElementEventEnabled(boolean on)
Enable or disable all messages associated with attribute events.void
setEventEnabled(VerboseSink.EventType type, boolean on)
Enable or disable an event.void
setEventFormat(VerboseSink.EventType type, String format)
Redefines message format of an event.void
setPrefix(String prefix)
Set prefix used in messages.void
setSuffix(String suffix)
Set suffix used in messages.void
stepBegins(String sourceId, long timeId, double step)
Since dynamic graphs are based on discrete event modifications, the notion of step is defined to simulate elapsed time between events.
-
Field Details
-
DEFAULT_AN_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CNA_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CNC_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CNR_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_DN_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_AE_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CEA_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CEC_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CER_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_DE_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CGA_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CGC_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CGR_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_CL_FORMAT
- See Also:
- Constant Field Values
-
DEFAULT_ST_FORMAT
- See Also:
- Constant Field Values
-
-
Constructor Details
-
VerboseSink
public VerboseSink()Create a new verbose sink using System.out. -
VerboseSink
Create a new verbose sink.- Parameters:
out
- stream used to output message
-
-
Method Details
-
setAutoFlush
public void setAutoFlush(boolean on)Enable or disable autoflush.- Parameters:
on
- true to enable autoflush
-
setEventFormat
Redefines message format of an event.- Parameters:
type
- type of the eventformat
- new format of the message attached with the event
-
setEventEnabled
Enable or disable an event.- Parameters:
type
- type of the eventon
- true to enable message for this event
-
setElementEventEnabled
public void setElementEventEnabled(boolean on)Enable or disable all messages associated with attribute events.- Parameters:
on
- true to enable events
-
setAttributeEventEnabled
public void setAttributeEventEnabled(boolean on)Enable or disable all messages associated with element events.- Parameters:
on
- true to enable events
-
setPrefix
Set prefix used in messages.- Parameters:
prefix
- new prefix
-
setSuffix
Set suffix used in messages.- Parameters:
suffix
- new suffix
-
edgeAttributeAdded
public void edgeAttributeAdded(String sourceId, long timeId, String edgeId, String attribute, Object value)Description copied from interface:AttributeSink
A edge attribute was added.- Specified by:
edgeAttributeAdded
in interfaceAttributeSink
- Parameters:
sourceId
- Identifier of the graph where the change occurred.edgeId
- Identifier of the edge whose attribute changed.attribute
- The attribute name.value
- The attribute new value.
-
edgeAttributeChanged
public void edgeAttributeChanged(String sourceId, long timeId, String edgeId, String attribute, Object oldValue, Object newValue)Description copied from interface:AttributeSink
A edge attribute was changed.- Specified by:
edgeAttributeChanged
in interfaceAttributeSink
- Parameters:
sourceId
- Identifier of the graph where the change occurred.edgeId
- Identifier of the edge whose attribute changed.attribute
- The attribute name.oldValue
- The attribute old value.newValue
- The attribute new value.
-
edgeAttributeRemoved
Description copied from interface:AttributeSink
A edge attribute was removed.- Specified by:
edgeAttributeRemoved
in interfaceAttributeSink
- Parameters:
sourceId
- Identifier of the graph where the attribute was removed.edgeId
- Identifier of the edge whose attribute was removed.attribute
- The removed attribute name.
-
graphAttributeAdded
Description copied from interface:AttributeSink
A graph attribute was added.- Specified by:
graphAttributeAdded
in interfaceAttributeSink
- Parameters:
sourceId
- Identifier of the graph where the attribute changed.attribute
- The attribute name.value
- The attribute new value.
-
graphAttributeChanged
public void graphAttributeChanged(String sourceId, long timeId, String attribute, Object oldValue, Object newValue)Description copied from interface:AttributeSink
A graph attribute was changed.- Specified by:
graphAttributeChanged
in interfaceAttributeSink
- Parameters:
sourceId
- Identifier of the graph where the attribute changed.attribute
- The attribute name.oldValue
- The attribute old value.newValue
- The attribute new value.
-
graphAttributeRemoved
Description copied from interface:AttributeSink
A graph attribute was removed.- Specified by:
graphAttributeRemoved
in interfaceAttributeSink
- Parameters:
sourceId
- Identifier of the graph where the attribute was removed.attribute
- The removed attribute name.
-
nodeAttributeAdded
public void nodeAttributeAdded(String sourceId, long timeId, String nodeId, String attribute, Object value)Description copied from interface:AttributeSink
A node attribute was added.- Specified by:
nodeAttributeAdded
in interfaceAttributeSink
- Parameters:
sourceId
- Identifier of the graph where the change occurred.nodeId
- Identifier of the node whose attribute changed.attribute
- The attribute name.value
- The attribute new value.
-
nodeAttributeChanged
public void nodeAttributeChanged(String sourceId, long timeId, String nodeId, String attribute, Object oldValue, Object newValue)Description copied from interface:AttributeSink
A node attribute was changed.- Specified by:
nodeAttributeChanged
in interfaceAttributeSink
- Parameters:
sourceId
- Identifier of the graph where the change occurred.nodeId
- Identifier of the node whose attribute changed.attribute
- The attribute name.oldValue
- The attribute old value.newValue
- The attribute new value.
-
nodeAttributeRemoved
Description copied from interface:AttributeSink
A node attribute was removed.- Specified by:
nodeAttributeRemoved
in interfaceAttributeSink
- Parameters:
sourceId
- Identifier of the graph where the attribute was removed.nodeId
- Identifier of the node whose attribute was removed.attribute
- The removed attribute name.
-
edgeAdded
public void edgeAdded(String sourceId, long timeId, String edgeId, String fromNodeId, String toNodeId, boolean directed)Description copied from interface:ElementSink
An edge was inserted in graph.- Specified by:
edgeAdded
in interfaceElementSink
- Parameters:
sourceId
- Identifier of the graph where the edge was added.edgeId
- Identifier of the added edge.fromNodeId
- Identifier of the first node of the edge.toNodeId
- Identifier of the second node of the edge.directed
- If true, the edge is directed.
-
edgeRemoved
Description copied from interface:ElementSink
An edge of graph was removed.The nodes the edge connects may already have been removed from the graph.- Specified by:
edgeRemoved
in interfaceElementSink
- Parameters:
sourceId
- The graph where the edge will be removed.edgeId
- The edge that will be removed.
-
graphCleared
Description copied from interface:ElementSink
The whole graph was cleared. All the nodes, edges and attributes of the graph are removed.- Specified by:
graphCleared
in interfaceElementSink
- Parameters:
sourceId
- The graph cleared.
-
nodeAdded
Description copied from interface:ElementSink
A node was inserted in the given graph.- Specified by:
nodeAdded
in interfaceElementSink
- Parameters:
sourceId
- Identifier of the graph where the node was added.nodeId
- Identifier of the added node.
-
nodeRemoved
Description copied from interface:ElementSink
A node was removed from the graph.- Specified by:
nodeRemoved
in interfaceElementSink
- Parameters:
sourceId
- Identifier of the graph where the node will be removed.nodeId
- Identifier of the removed node.
-
stepBegins
Description copied from interface:ElementSink
Since dynamic graphs are based on discrete event modifications, the notion of step is defined to simulate elapsed time between events. So a step is a event that occurs in the graph, it does not modify it but it gives a kind of timestamp that allow the tracking of the progress of the graph over the time.
This kind of event is useful for dynamic algorithms that listen to the dynamic graph and need to measure the time in the graph's evolution.
- Specified by:
stepBegins
in interfaceElementSink
- Parameters:
sourceId
- Identifier of the graph where the step starts.timeId
- A numerical value that may give a timestamp to track the evolution of the graph over the time.
-