Class PartitioningTimestampsLineGraphModel

java.lang.Object
org.teamapps.ux.component.timegraph.model.AbstractLineGraphModel
org.teamapps.ux.component.timegraph.model.timestamps.PartitioningTimestampsLineGraphModel
All Implemented Interfaces:
GraphModel<LineGraphData>, LineGraphModel

public class PartitioningTimestampsLineGraphModel extends AbstractLineGraphModel
  • Field Details

    • onDataChanged

      public final Event<Void> onDataChanged
  • Constructor Details

    • PartitioningTimestampsLineGraphModel

      public PartitioningTimestampsLineGraphModel(TimestampsModel timestampsModel)
  • Method Details

    • onDataChanged

      public Event<Void> onDataChanged()
      Specified by:
      onDataChanged in interface GraphModel<LineGraphData>
    • getData

      public LineGraphData getData(TimePartitioning zoomLevel, ZoneId zoneId, Interval neededInterval, Interval displayedInterval)
      Description copied from interface: GraphModel
      Retrieves graph data (GraphData) for the specified zoomLevel and {cod@ neededInterval}.

      The model MAY choose return more data than needed, covering a larger interval than requested.
      However, the result MUST at least cover neededInterval!
      If the model delegates to multiple sub-models for different graphs, its aggregated GraphData object should use the intersection of the sub-model's GraphData.getInterval() as its own GraphData.getInterval().

      Parameters:
      zoomLevel - the requested zoom level
      zoneId - the zoneId to apply when partitioning over time
      neededInterval - the time interval requested by the client
      displayedInterval - the time interval displayed by the client
      Returns:
      graph data
    • getDomainX

      public Interval getDomainX()