Package org.jfree.data.flow
Class DefaultFlowDataset<K extends Comparable<K>>
java.lang.Object
org.jfree.data.general.AbstractDataset
org.jfree.data.flow.DefaultFlowDataset<K>
- Type Parameters:
K- the type for the keys used to identify sources and destinations (instances should be immutable,Stringis a good default choice).
- All Implemented Interfaces:
ObjectInputValidation,Serializable,Cloneable,PublicCloneable,FlowDataset<K>,Dataset
public class DefaultFlowDataset<K extends Comparable<K>>
extends AbstractDataset
implements FlowDataset<K>, PublicCloneable, Serializable
A dataset representing flows between source and destination nodes.
- Since:
- 1.5.3
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionclone()Returns a clone of the dataset.booleanTests this dataset for equality with an arbitrary object.Returns a set of keys for all the flows in the dataset.Returns the set of keys for all the nodes in the dataset.getDestinations(int stage) Returns a list of the destination nodes for the specified stage.Returns the flow between a source node and a destination node at a specified stage.getFlowProperty(FlowKey<K> flowKey, String propertyKey) Returns the value of a property, if specified, for the specified flow.getInFlows(NodeKey nodeKey) Returns a list of flow keys for all the flows coming into this node.getNodeProperty(NodeKey<K> nodeKey, String propertyKey) Returns the value of a property, if specified, for the specified node.getOutFlows(NodeKey nodeKey) Returns a list of flow keys for all the flows going out of this node.getSources(int stage) Returns a list of the source nodes for the specified stage.intReturns the number of flow stages.inthashCode()voidSets the flow between a source node and a destination node at the specified stage.voidsetFlowProperty(FlowKey<K> flowKey, String propertyKey, Object value) Sets a property for the specified flow and notifies registered listeners that the dataset has changed.voidsetNodeProperty(NodeKey<K> nodeKey, String propertyKey, Object value) Sets a property for the specified node and notifies registered listeners that the dataset has changed.Methods inherited from class org.jfree.data.general.AbstractDataset
addChangeListener, canEqual, fireDatasetChanged, getGroup, getNotify, hasListener, notifyListeners, removeChangeListener, setGroup, setNotify, validateObjectMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.jfree.data.general.Dataset
addChangeListener, getGroup, removeChangeListener, setGroup
-
Constructor Details
-
DefaultFlowDataset
public DefaultFlowDataset()Creates a new dataset that is initially empty.
-
-
Method Details
-
getSources
Returns a list of the source nodes for the specified stage.- Specified by:
getSourcesin interfaceFlowDataset<K extends Comparable<K>>- Parameters:
stage- the stage (0 togetStageCount() - 1).- Returns:
- A list of source nodes (possibly empty but never
null).
-
getDestinations
Returns a list of the destination nodes for the specified stage.- Specified by:
getDestinationsin interfaceFlowDataset<K extends Comparable<K>>- Parameters:
stage- the stage (0 togetStageCount() - 1).- Returns:
- A list of destination nodes (possibly empty but never
null).
-
getAllNodes
Returns the set of keys for all the nodes in the dataset.- Specified by:
getAllNodesin interfaceFlowDataset<K extends Comparable<K>>- Returns:
- The set of keys for all the nodes in the dataset (possibly empty
but never
null).
-
getNodeProperty
Returns the value of a property, if specified, for the specified node.- Specified by:
getNodePropertyin interfaceFlowDataset<K extends Comparable<K>>- Parameters:
nodeKey- the node key (nullnot permitted).propertyKey- the node key (nullnot permitted).- Returns:
- The property value, or
null.
-
setNodeProperty
Sets a property for the specified node and notifies registered listeners that the dataset has changed.- Parameters:
nodeKey- the node key (nullnot permitted).propertyKey- the property key (nullnot permitted).value- the property value.
-
getFlow
Returns the flow between a source node and a destination node at a specified stage. This must be 0 or greater. The dataset can returnnullto represent an unknown value.- Specified by:
getFlowin interfaceFlowDataset<K extends Comparable<K>>- Parameters:
stage- the stage index (0 togetStageCount()- 1).source- the source (nullnot permitted).destination- the destination (nullnot permitted).- Returns:
- The flow (zero or greater, possibly
null).
-
setFlow
Sets the flow between a source node and a destination node at the specified stage. A new stage will be added ifstageis equal togetStageCount().- Parameters:
stage- the stage (0 togetStageCount().source- the source (nullnot permitted).destination- the destination (nullnot permitted).flow- the flow (0 or greater).
-
getFlowProperty
Returns the value of a property, if specified, for the specified flow.- Specified by:
getFlowPropertyin interfaceFlowDataset<K extends Comparable<K>>- Parameters:
flowKey- flowKey (nullnot permitted).propertyKey- the property key (nullnot permitted).- Returns:
- The property value, or
null.
-
setFlowProperty
Sets a property for the specified flow and notifies registered listeners that the dataset has changed.- Parameters:
flowKey- the node key (nullnot permitted).propertyKey- the property key (nullnot permitted).value- the property value.
-
getStageCount
Returns the number of flow stages. A flow dataset always has one or more stages, so this method will return1even for an empty dataset (one with no sources, destinations or flows defined).- Specified by:
getStageCountin interfaceFlowDataset<K extends Comparable<K>>- Returns:
- The number of flow stages.
-
getAllFlows
Returns a set of keys for all the flows in the dataset.- Specified by:
getAllFlowsin interfaceFlowDataset<K extends Comparable<K>>- Returns:
- A set.
-
getInFlows
Returns a list of flow keys for all the flows coming into this node.- Parameters:
nodeKey- the node key (nullnot permitted).- Returns:
- A list of flow keys (possibly empty but never
null).
-
getOutFlows
Returns a list of flow keys for all the flows going out of this node.- Parameters:
nodeKey- the node key (nullnot permitted).- Returns:
- A list of flow keys (possibly empty but never
null).
-
clone
Returns a clone of the dataset.- Specified by:
clonein interfacePublicCloneable- Overrides:
clonein classAbstractDataset- Returns:
- A clone of the dataset.
- Throws:
CloneNotSupportedException- if there is a problem with cloning.
-
equals
Tests this dataset for equality with an arbitrary object. This method will returntrueif the object implements theFlowDatasetand defines the exact same set of nodes and flows as this dataset.- Overrides:
equalsin classAbstractDataset- Parameters:
obj- the object to test equality against (nullpermitted).- Returns:
- A boolean.
-
hashCode
- Overrides:
hashCodein classAbstractDataset
-