kg.apc.charting.rows.GraphRowSimple Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jmeter-plugins-cmn-jmeter Show documentation
Show all versions of jmeter-plugins-cmn-jmeter Show documentation
Various utility classes to ease development of plugins
package kg.apc.charting.rows;
import kg.apc.charting.AbstractGraphRow;
import kg.apc.charting.elements.GraphPanelChartSimpleElement;
import kg.apc.charting.AbstractGraphPanelChartElement;
import java.io.Serializable;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.concurrent.ConcurrentSkipListMap;
public class GraphRowSimple
extends AbstractGraphRow
implements Serializable
{
private ConcurrentSkipListMap values;
/**
*
*/
public GraphRowSimple()
{
super();
values = new ConcurrentSkipListMap();
}
/**
*
* @param xVal
* @param yVal
*/
@Override
public void add(long xVal, double yVal)
{
GraphPanelChartSimpleElement el;
if (values.containsKey(xVal))
{
el = (GraphPanelChartSimpleElement) values.get(xVal);
el.add(yVal);
} else
{
el = new GraphPanelChartSimpleElement(yVal);
values.put(xVal, el);
}
super.add(xVal, yVal);
}
/**
*
* @return
*/
@Override
public Iterator> iterator()
{
return values.entrySet().iterator();
}
@Override
public int size()
{
return values.size();
}
@Override
public AbstractGraphPanelChartElement getElement(long value)
{
return values.get(value);
}
@Override
public Long getHigherKey(long value)
{
return values.navigableKeySet().higher(value);
}
}