## org.jfree.data.gantt
Class XYTaskDataset

    java.lang.Object
      org.jfree.data.general.AbstractDataset
          org.jfree.data.general.AbstractSeriesDataset
              org.jfree.data.xy.AbstractXYDataset
                  org.jfree.data.gantt.XYTaskDataset

All Implemented Interfaces:
  java.io.ObjectInputValidation, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, Dataset, DatasetChangeListener, SeriesChangeListener, SeriesDataset, IntervalXYDataset, XYDataset

    public class XYTaskDataset

extends AbstractXYDataset
implements IntervalXYDataset, DatasetChangeListener

A dataset implementation that wraps a `TaskSeriesCollection` and presents it as an `IntervalXYDataset`, allowing a set of tasks to be displayed using an `XYBarRenderer` (and usually a `SymbolAxis`). This is a very specialised dataset implementation ---before using it, you should take some time to understand the use-cases that it is designed for.

Since:
  1.0.11
See Also:
  Serialized Form

Constructor Summary
`XYTaskDataset(TaskSeriesCollection tasks)` Creates a new dataset based on the supplied collection of tasks.

Method Summary
`java.lang.Object` `clone()` Returns a clone of this dataset.
`void` `datasetChanged(DatasetChangeEvent event)` Receives a change event from the underlying dataset and responds by firing a change event for this dataset.
`boolean` `equals(java.lang.Object obj)` Tests this dataset for equality with an arbitrary object.
`java.lang.Number` `getEndX(int series, int item)` Returns the ending date/time for the specified item (task) in the given series, measured in milliseconds since 1-Jan-1970 (as in java.util.Date).
`double` `getEndXValue(int series, int item)` Returns the ending date/time for the specified item (task) in the given series, measured in milliseconds since 1-Jan-1970 (as in java.util.Date).
`java.lang.Number` `getEndY(int series, int item)` Returns the ending value of the y-interval for an item in the given series.
`double` `getEndYValue(int series, int item)` Returns the ending value of the y-interval for an item in the given series.
`int` `getItemCount(int series)` Returns the number of items (tasks) in the specified series.
`int` `getSeriesCount()` Returns the number of series in the dataset.
`java.lang.Comparable` `getSeriesKey(int series)` Returns the name of a series.
`double` `getSeriesWidth()` Returns the width of the interval for each series this dataset.
`java.lang.Number` `getStartX(int series, int item)` Returns the starting date/time for the specified item (task) in the given series, measured in milliseconds since 1-Jan-1970 (as in java.util.Date).
`double` `getStartXValue(int series, int item)` Returns the starting date/time for the specified item (task) in the given series, measured in milliseconds since 1-Jan-1970 (as in java.util.Date).
`java.lang.Number` `getStartY(int series, int item)` Returns the starting value of the y-interval for an item in the given series.
`double` `getStartYValue(int series, int item)` Returns the starting value of the y-interval for an item in the given series.
`TaskSeriesCollection` `getTasks()` Returns the underlying task series collection that was supplied to the constructor.
`java.lang.Number` `getX(int series, int item)` Returns the x-value for the specified series.
`double` `getXValue(int series, int item)` Returns the x-value (as a double primitive) for an item within a series.
`java.lang.Number` `getY(int series, int item)` Returns the y-value for the specified series/item.
`double` `getYValue(int series, int item)` Returns the y-value (as a double primitive) for an item within a series.
`boolean` `isTransposed()` Returns a flag that indicates whether or not the dataset is transposed.
`void` `setSeriesWidth(double w)` Sets the series interval width and sends a `DatasetChangeEvent` to all registered listeners.
`void` `setTransposed(boolean transposed)` Sets the flag that controls whether or not the dataset is transposed and sends a `DatasetChangeEvent` to all registered listeners.

Methods inherited from class org.jfree.data.xy.AbstractXYDataset
`getDomainOrder`

Methods inherited from class org.jfree.data.general.AbstractSeriesDataset
`indexOf, seriesChanged`

Methods inherited from class org.jfree.data.general.AbstractDataset
`addChangeListener, fireDatasetChanged, getGroup, hasListener, notifyListeners, removeChangeListener, setGroup, validateObject`

Methods inherited from class java.lang.Object
`finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.jfree.data.xy.XYDataset
`getDomainOrder`

Methods inherited from interface org.jfree.data.general.SeriesDataset
`indexOf`

Methods inherited from interface org.jfree.data.general.Dataset
`addChangeListener, getGroup, removeChangeListener, setGroup`

Constructor Detail

### XYTaskDataset

    public XYTaskDataset(TaskSeriesCollection tasks)

  Creates a new dataset based on the supplied collection of tasks.

  Parameters:
    `tasks` - the underlying dataset (`null` not permitted).

Method Detail

### getTasks

    public TaskSeriesCollection getTasks()

  Returns the underlying task series collection that was supplied to the constructor.

  Returns:
    The underlying collection (never `null`).

### getSeriesWidth

    public double getSeriesWidth()

  Returns the width of the interval for each series this dataset.

  Returns:
    The width of the series interval.
  See Also:
    `setSeriesWidth(double)`

### setSeriesWidth

    public void setSeriesWidth(double w)

  Sets the series interval width and sends a `DatasetChangeEvent` to all registered listeners.

  Parameters:
    `w` - the width.
  See Also:
    `getSeriesWidth()`

### isTransposed

    public boolean isTransposed()

  Returns a flag that indicates whether or not the dataset is transposed. The default is `false` which means the x-values are integers corresponding to the series indices, and the y-values are millisecond values corresponding to the task date/time intervals. If the flag is set to `true`, the x and y-values are reversed.

  Returns:
    The flag.
  See Also:
    `setTransposed(boolean)`

### setTransposed

    public void setTransposed(boolean transposed)

  Sets the flag that controls whether or not the dataset is transposed and sends a `DatasetChangeEvent` to all registered listeners.

  Parameters:
    `transposed` - the new flag value.
  See Also:
    `isTransposed()`

### getSeriesCount

    public int getSeriesCount()

  Returns the number of series in the dataset.

  Specified by:
    `getSeriesCount` in interface `SeriesDataset`
  Specified by:
    `getSeriesCount` in class `AbstractSeriesDataset`
  Returns:
    The series count.

### getSeriesKey

    public java.lang.Comparable getSeriesKey(int series)

  Returns the name of a series.

  Specified by:
    `getSeriesKey` in interface `SeriesDataset`
  Specified by:
    `getSeriesKey` in class `AbstractSeriesDataset`
  Parameters:
    `series` - the series index (zero-based).
  Returns:
    The name of a series.

### getItemCount

    public int getItemCount(int series)

  Returns the number of items (tasks) in the specified series.

  Specified by:
    `getItemCount` in interface `XYDataset`
  Parameters:
    `series` - the series index (zero-based).
  Returns:
    The item count.

### getXValue

    public double getXValue(int series,
                            int item)

  Returns the x-value (as a double primitive) for an item within a series.

  Specified by:
    `getXValue` in interface `XYDataset`
  Overrides:
    `getXValue` in class `AbstractXYDataset`
  Parameters:
    `series` - the series index (zero-based).
    `item` - the item index (zero-based).
  Returns:
    The value.

### getStartXValue

    public double getStartXValue(int series,
                                 int item)

  Returns the starting date/time for the specified item (task) in the given series, measured in milliseconds since 1-Jan-1970 (as in java.util.Date).

  Specified by:
    `getStartXValue` in interface `IntervalXYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item (or task) index.
  Returns:
    The start date/time.
  See Also:
    `IntervalXYDataset.getStartX(int, int)`

### getEndXValue

    public double getEndXValue(int series,
                               int item)

  Returns the ending date/time for the specified item (task) in the given series, measured in milliseconds since 1-Jan-1970 (as in java.util.Date).

  Specified by:
    `getEndXValue` in interface `IntervalXYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item (or task) index.
  Returns:
    The end date/time.
  See Also:
    `IntervalXYDataset.getEndX(int, int)`

### getX

    public java.lang.Number getX(int series,
                                 int item)

  Returns the x-value for the specified series.

  Specified by:
    `getX` in interface `XYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item index.
  Returns:
    The x-value (in milliseconds).

### getStartX

    public java.lang.Number getStartX(int series,
                                      int item)

  Returns the starting date/time for the specified item (task) in the given series, measured in milliseconds since 1-Jan-1970 (as in java.util.Date).

  Specified by:
    `getStartX` in interface `IntervalXYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item (or task) index.
  Returns:
    The start date/time.

### getEndX

    public java.lang.Number getEndX(int series,
                                    int item)

  Returns the ending date/time for the specified item (task) in the given series, measured in milliseconds since 1-Jan-1970 (as in java.util.Date).

  Specified by:
    `getEndX` in interface `IntervalXYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item (or task) index.
  Returns:
    The end date/time.

### getYValue

    public double getYValue(int series,
                            int item)

  Returns the y-value (as a double primitive) for an item within a series.

  Specified by:
    `getYValue` in interface `XYDataset`
  Overrides:
    `getYValue` in class `AbstractXYDataset`
  Parameters:
    `series` - the series index (zero-based).
    `item` - the item index (zero-based).
  Returns:
    The value.

### getStartYValue

    public double getStartYValue(int series,
                                 int item)

  Returns the starting value of the y-interval for an item in the given series.

  Specified by:
    `getStartYValue` in interface `IntervalXYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item (or task) index.
  Returns:
    The y-interval start.
  See Also:
    `IntervalXYDataset.getStartY(int, int)`

### getEndYValue

    public double getEndYValue(int series,
                               int item)

  Returns the ending value of the y-interval for an item in the given series.

  Specified by:
    `getEndYValue` in interface `IntervalXYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item (or task) index.
  Returns:
    The y-interval end.
  See Also:
    `IntervalXYDataset.getEndY(int, int)`

### getY

    public java.lang.Number getY(int series,
                                 int item)

  Returns the y-value for the specified series/item. In this implementation, we return the series index as the y-value (this means that every item in the series has a constant integer value).

  Specified by:
    `getY` in interface `XYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item index.
  Returns:
    The y-value.

### getStartY

    public java.lang.Number getStartY(int series,
                                      int item)

  Returns the starting value of the y-interval for an item in the given series.

  Specified by:
    `getStartY` in interface `IntervalXYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item (or task) index.
  Returns:
    The y-interval start.

### getEndY

    public java.lang.Number getEndY(int series,
                                    int item)

  Returns the ending value of the y-interval for an item in the given series.

  Specified by:
    `getEndY` in interface `IntervalXYDataset`
  Parameters:
    `series` - the series index.
    `item` - the item (or task) index.
  Returns:
    The y-interval end.

### datasetChanged

    public void datasetChanged(DatasetChangeEvent event)

  Receives a change event from the underlying dataset and responds by firing a change event for this dataset.

  Specified by:
    `datasetChanged` in interface `DatasetChangeListener`
  Parameters:
    `event` - the event.

### equals

    public boolean equals(java.lang.Object obj)

  Tests this dataset for equality with an arbitrary object.

  Overrides:
    `equals` in class `java.lang.Object`
  Parameters:
    `obj` - the object (`null` permitted).
  Returns:
    A boolean.

### clone

    public java.lang.Object clone()
                           throws java.lang.CloneNotSupportedException

  Returns a clone of this dataset.

  Overrides:
    `clone` in class `AbstractDataset`
  Returns:
    A clone of this dataset.
  Throws:
    `java.lang.CloneNotSupportedException` - if there is a problem cloning.