* <code>String</code> objects (never <code>null</code>).
*/
protected Object[] createItemArray(XYDataset dataset, int series,
int item) {
IntervalXYDataset intervalDataset = null;
if (dataset instanceof IntervalXYDataset) {
intervalDataset = (IntervalXYDataset) dataset;
}
Object[] result = new Object[7];
result[0] = dataset.getSeriesKey(series).toString();
double x = dataset.getXValue(series, item);
double xs = x;
double xe = x;
double y = dataset.getYValue(series, item);
double ys = y;
double ye = y;
if (intervalDataset != null) {
xs = intervalDataset.getStartXValue(series, item);
xe = intervalDataset.getEndXValue(series, item);
ys = intervalDataset.getStartYValue(series, item);
ye = intervalDataset.getEndYValue(series, item);
}
DateFormat xdf = getXDateFormat();
if (xdf != null) {
result[1] = xdf.format(new Date((long) x));
result[2] = xdf.format(new Date((long) xs));
result[3] = xdf.format(new Date((long) xe));
}
else {
NumberFormat xnf = getXFormat();
result[1] = xnf.format(x);
result[2] = xnf.format(xs);
result[3] = xnf.format(xe);
}
NumberFormat ynf = getYFormat();
DateFormat ydf = getYDateFormat();
if (Double.isNaN(y) && dataset.getY(series, item) == null) {
result[4] = getNullYString();
}
else {
if (ydf != null) {
result[4] = ydf.format(new Date((long) y));
}
else {
result[4] = ynf.format(y);
}
}
if (Double.isNaN(ys)
&& intervalDataset.getStartY(series, item) == null) {
result[5] = getNullYString();
}
else {
if (ydf != null) {
result[5] = ydf.format(new Date((long) ys));
}
else {
result[5] = ynf.format(ys);
}
}
if (Double.isNaN(ye)
&& intervalDataset.getEndY(series, item) == null) {
result[6] = getNullYString();
}
else {
if (ydf != null) {
result[6] = ydf.format(new Date((long) ye));