Module platform

Class AbstractDataset

java.lang.Object
org.jfree.data.general.AbstractDataset
All Implemented Interfaces:
ObjectInputValidation, Serializable, Cloneable, Dataset
Direct Known Subclasses:
AbstractSeriesDataset, CategoryToPieDataset, DefaultBoxAndWhiskerCategoryDataset, DefaultCategoryDataset, DefaultFlowDataset, DefaultHeatMapDataset, DefaultKeyedValueDataset, DefaultMultiValueCategoryDataset, DefaultPieDataset, DefaultStatisticalCategoryDataset, DefaultValueDataset, SlidingCategoryDataset, SlidingGanttCategoryDataset, WaferMapDataset

public abstract class AbstractDataset extends Object implements Dataset, Cloneable, Serializable, ObjectInputValidation
An abstract implementation of the Dataset interface, containing a mechanism for registering change listeners.
See Also:
  • Constructor Details

    • AbstractDataset

      protected AbstractDataset()
      Constructs a dataset. By default, the dataset is assigned to its own group.
  • Method Details

    • getGroup

      public DatasetGroup getGroup()
      Returns the dataset group for the dataset.
      Specified by:
      getGroup in interface Dataset
      Returns:
      The group (never null).
      See Also:
    • setGroup

      public void setGroup(DatasetGroup group)
      Sets the dataset group for the dataset.
      Specified by:
      setGroup in interface Dataset
      Parameters:
      group - the group (null not permitted).
      See Also:
    • getNotify

      public boolean getNotify()
      Returns the value of the notify flag. The default value is true. If this is false, calls to the fireDatasetChanged() method will NOT trigger a dataset change event.
      Returns:
      A boolean.
    • setNotify

      public void setNotify(boolean notify)
      Sets the notify flag, which controls whether or not the fireDatasetChanged() method notifies listeners. Setting this flag to true will trigger a DatasetChangeEvent because there may be queued up changes.
      Parameters:
      notify - the new flag value.
    • addChangeListener

      public void addChangeListener(DatasetChangeListener listener)
      Registers an object to receive notification of changes to the dataset.
      Specified by:
      addChangeListener in interface Dataset
      Parameters:
      listener - the object to register.
      See Also:
    • removeChangeListener

      public void removeChangeListener(DatasetChangeListener listener)
      Deregisters an object so that it no longer receives notification of changes to the dataset.
      Specified by:
      removeChangeListener in interface Dataset
      Parameters:
      listener - the object to deregister.
      See Also:
    • hasListener

      public boolean hasListener(EventListener listener)
      Returns true if the specified object is registered with the dataset as a listener. Most applications won't need to call this method, it exists mainly for use by unit testing code.
      Parameters:
      listener - the listener.
      Returns:
      A boolean.
      See Also:
    • fireDatasetChanged

      protected void fireDatasetChanged()
      Notifies all registered listeners that the dataset has changed, provided that the notify flag has not been set to false.
      See Also:
    • notifyListeners

      protected void notifyListeners(DatasetChangeEvent event)
      Notifies all registered listeners that the dataset has changed.
      Parameters:
      event - contains information about the event that triggered the notification.
      See Also:
    • clone

      public Object clone() throws CloneNotSupportedException
      Returns a clone of the dataset. The cloned dataset will NOT include the DatasetChangeListener references that have been registered with this dataset.
      Overrides:
      clone in class Object
      Returns:
      A clone.
      Throws:
      CloneNotSupportedException - if the dataset does not support cloning.
    • validateObject

      public void validateObject() throws InvalidObjectException
      Validates the object. We use this opportunity to call listeners who have registered during the deserialization process, as listeners are not serialized. This method is called by the serialization system after the entire graph is read. This object has registered itself to the system with a priority of 10. Other callbacks may register with a higher priority number to be called before this object, or with a lower priority number to be called after the listeners were notified. All listeners are supposed to have register by now, either in their readObject or validateObject methods. Notify them that this dataset has changed.
      Specified by:
      validateObject in interface ObjectInputValidation
      Throws:
      InvalidObjectException - If the object cannot validate itself.