org.graphstream.stream
Class AttributePipe

java.lang.Object
  extended by org.graphstream.stream.SourceBase
      extended by org.graphstream.stream.PipeBase
          extended by org.graphstream.stream.AttributePipe
All Implemented Interfaces:
AttributeSink, ElementSink, Pipe, Sink, Source

public class AttributePipe
extends PipeBase

Allows to filter the attribute event stream.

The filtering is based on attribute predicates. An attribute predicate is an object that you provide and that only defines one method AttributePredicate.matches(String, Object). If the "matches()" method return false, the attribute is discarded from the event stream, else it is passed to the listeners of this filter.

You can setup a predicate from all attributes (graph, node and edge attributes) and specific predicates for graph, node and edge attributes.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.graphstream.stream.SourceBase
SourceBase.ElementType
 
Constructor Summary
AttributePipe()
           
 
Method Summary
 void edgeAttributeAdded(String graphId, long timeId, String edgeId, String attribute, Object value)
          A edge attribute was added.
 void edgeAttributeChanged(String graphId, long timeId, String edgeId, String attribute, Object oldValue, Object newValue)
          A edge attribute was changed.
 void edgeAttributeRemoved(String graphId, long timeId, String edgeId, String attribute)
          A edge attribute was removed.
 AttributePredicate getEdgeAttributeFilter()
          The filter for all edge attributes.
 AttributePredicate getGlobalAttributeFilter()
          The filter for all graph, node and edge attributes.
 AttributePredicate getGraphAttributeFilter()
          The filter for all graph attributes.
 AttributePredicate getNodeAttributeFilter()
          The filter for all node attributes.
 void graphAttributeAdded(String graphId, long timeId, String attribute, Object value)
          A graph attribute was added.
 void graphAttributeChanged(String graphId, long timeId, String attribute, Object oldValue, Object newValue)
          A graph attribute was changed.
 void graphAttributeRemoved(String graphId, long timeId, String attribute)
          A graph attribute was removed.
 void nodeAttributeAdded(String graphId, long timeId, String nodeId, String attribute, Object value)
          A node attribute was added.
 void nodeAttributeChanged(String graphId, long timeId, String nodeId, String attribute, Object oldValue, Object newValue)
          A node attribute was changed.
 void nodeAttributeRemoved(String graphId, long timeId, String nodeId, String attribute)
          A node attribute was removed.
 void setEdgeAttributeFilter(AttributePredicate filter)
          Set an attribute filter for edge attributes only (graph an node attributes are not filtered by this filter).
 void setGlobalAttributeFilter(AttributePredicate filter)
          Set an attribute filter for graph, node and edge attributes.
 void setGraphAttributeFilter(AttributePredicate filter)
          Set an attribute filter for graph attributes only (node an edge attributes are not filtered by this filter).
 void setNodeAttributeFilter(AttributePredicate filter)
          Set an attribute filter for node attributes only (graph an edge attributes are not filtered by this filter).
 
Methods inherited from class org.graphstream.stream.PipeBase
edgeAdded, edgeRemoved, graphCleared, nodeAdded, nodeRemoved, stepBegins
 
Methods inherited from class org.graphstream.stream.SourceBase
addAttributeSink, addElementSink, addSink, attributeSinks, clearAttributeSinks, clearElementSinks, clearSinks, elementSinks, removeAttributeSink, removeElementSink, removeSink, sendAttributeChangedEvent, sendAttributeChangedEvent, sendEdgeAdded, sendEdgeAdded, sendEdgeAttributeAdded, sendEdgeAttributeAdded, sendEdgeAttributeChanged, sendEdgeAttributeChanged, sendEdgeAttributeRemoved, sendEdgeAttributeRemoved, sendEdgeRemoved, sendEdgeRemoved, sendGraphAttributeAdded, sendGraphAttributeAdded, sendGraphAttributeChanged, sendGraphAttributeChanged, sendGraphAttributeRemoved, sendGraphAttributeRemoved, sendGraphCleared, sendGraphCleared, sendNodeAdded, sendNodeAdded, sendNodeAttributeAdded, sendNodeAttributeAdded, sendNodeAttributeChanged, sendNodeAttributeChanged, sendNodeAttributeRemoved, sendNodeAttributeRemoved, sendNodeRemoved, sendNodeRemoved, sendStepBegins, sendStepBegins
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.graphstream.stream.Source
addAttributeSink, addElementSink, addSink, clearAttributeSinks, clearElementSinks, clearSinks, removeAttributeSink, removeElementSink, removeSink
 

Constructor Detail

AttributePipe

public AttributePipe()
Method Detail

setGlobalAttributeFilter

public void setGlobalAttributeFilter(AttributePredicate filter)
Set an attribute filter for graph, node and edge attributes. If the filter is null, attributes will not be filtered globally.

Parameters:
filter - The filter to use, it can be null to disable global attribute filtering.

setGraphAttributeFilter

public void setGraphAttributeFilter(AttributePredicate filter)
Set an attribute filter for graph attributes only (node an edge attributes are not filtered by this filter). If the filter is null, graph attributes will not be filtered.

Parameters:
filter - The filter to use, it can be null to disable graph attribute filtering.

setNodeAttributeFilter

public void setNodeAttributeFilter(AttributePredicate filter)
Set an attribute filter for node attributes only (graph an edge attributes are not filtered by this filter). If the filter is null, node attributes will not be filtered.

Parameters:
filter - The filter to use, it can be null to disable node attribute filtering.

setEdgeAttributeFilter

public void setEdgeAttributeFilter(AttributePredicate filter)
Set an attribute filter for edge attributes only (graph an node attributes are not filtered by this filter). If the filter is null, edge attributes will not be filtered.

Parameters:
filter - The filter to use, it can be null to disable edge attribute filtering.

getGlobalAttributeFilter

public AttributePredicate getGlobalAttributeFilter()
The filter for all graph, node and edge attributes. This filter can be null.

Returns:
The global attribute filter or null if there is no global filter.

getGraphAttributeFilter

public AttributePredicate getGraphAttributeFilter()
The filter for all graph attributes. This filter can be null.

Returns:
The graph attribute filter or null if there is no graph filter.

getNodeAttributeFilter

public AttributePredicate getNodeAttributeFilter()
The filter for all node attributes. This filter can be null.

Returns:
The node global attribute filter or null if there is no node filter.

getEdgeAttributeFilter

public AttributePredicate getEdgeAttributeFilter()
The filter for all edge attributes. This filter can be null.

Returns:
The edge attribute filter or null of there is no edge filter.

edgeAttributeAdded

public void edgeAttributeAdded(String graphId,
                               long timeId,
                               String edgeId,
                               String attribute,
                               Object value)
Description copied from interface: AttributeSink
A edge attribute was added.

Specified by:
edgeAttributeAdded in interface AttributeSink
Overrides:
edgeAttributeAdded in class PipeBase
Parameters:
graphId - 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 graphId,
                                 long timeId,
                                 String edgeId,
                                 String attribute,
                                 Object oldValue,
                                 Object newValue)
Description copied from interface: AttributeSink
A edge attribute was changed.

Specified by:
edgeAttributeChanged in interface AttributeSink
Overrides:
edgeAttributeChanged in class PipeBase
Parameters:
graphId - 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

public void edgeAttributeRemoved(String graphId,
                                 long timeId,
                                 String edgeId,
                                 String attribute)
Description copied from interface: AttributeSink
A edge attribute was removed.

Specified by:
edgeAttributeRemoved in interface AttributeSink
Overrides:
edgeAttributeRemoved in class PipeBase
Parameters:
graphId - Identifier of the graph where the attribute was removed.
edgeId - Identifier of the edge whose attribute was removed.
attribute - The removed attribute name.

graphAttributeAdded

public void graphAttributeAdded(String graphId,
                                long timeId,
                                String attribute,
                                Object value)
Description copied from interface: AttributeSink
A graph attribute was added.

Specified by:
graphAttributeAdded in interface AttributeSink
Overrides:
graphAttributeAdded in class PipeBase
Parameters:
graphId - Identifier of the graph where the attribute changed.
attribute - The attribute name.
value - The attribute new value.

graphAttributeChanged

public void graphAttributeChanged(String graphId,
                                  long timeId,
                                  String attribute,
                                  Object oldValue,
                                  Object newValue)
Description copied from interface: AttributeSink
A graph attribute was changed.

Specified by:
graphAttributeChanged in interface AttributeSink
Overrides:
graphAttributeChanged in class PipeBase
Parameters:
graphId - Identifier of the graph where the attribute changed.
attribute - The attribute name.
oldValue - The attribute old value.
newValue - The attribute new value.

graphAttributeRemoved

public void graphAttributeRemoved(String graphId,
                                  long timeId,
                                  String attribute)
Description copied from interface: AttributeSink
A graph attribute was removed.

Specified by:
graphAttributeRemoved in interface AttributeSink
Overrides:
graphAttributeRemoved in class PipeBase
Parameters:
graphId - Identifier of the graph where the attribute was removed.
attribute - The removed attribute name.

nodeAttributeAdded

public void nodeAttributeAdded(String graphId,
                               long timeId,
                               String nodeId,
                               String attribute,
                               Object value)
Description copied from interface: AttributeSink
A node attribute was added.

Specified by:
nodeAttributeAdded in interface AttributeSink
Overrides:
nodeAttributeAdded in class PipeBase
Parameters:
graphId - 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 graphId,
                                 long timeId,
                                 String nodeId,
                                 String attribute,
                                 Object oldValue,
                                 Object newValue)
Description copied from interface: AttributeSink
A node attribute was changed.

Specified by:
nodeAttributeChanged in interface AttributeSink
Overrides:
nodeAttributeChanged in class PipeBase
Parameters:
graphId - 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

public void nodeAttributeRemoved(String graphId,
                                 long timeId,
                                 String nodeId,
                                 String attribute)
Description copied from interface: AttributeSink
A node attribute was removed.

Specified by:
nodeAttributeRemoved in interface AttributeSink
Overrides:
nodeAttributeRemoved in class PipeBase
Parameters:
graphId - Identifier of the graph where the attribute was removed.
nodeId - Identifier of the node whose attribute was removed.
attribute - The removed attribute name.


Copyright © 2012. All Rights Reserved.