1 package org.simantics.history;
\r
3 import org.simantics.databoard.accessor.StreamAccessor;
\r
4 import org.simantics.databoard.accessor.error.AccessorException;
\r
5 import org.simantics.history.util.StreamIterator;
\r
7 public class HistorySamplerItem implements Comparable<HistorySamplerItem> {
\r
10 HistoryManager history; // History source for this item
\r
11 String historyItemId;
\r
14 StreamAccessor accessor; // Stream accessor
\r
15 public StreamIterator iter;
\r
16 public int chartDataId;
\r
18 public HistorySamplerItem(Collector collector, HistoryManager history, String historyItemId, int identityHashCode) {
\r
19 this.collector = collector;
\r
20 this.history = history;
\r
21 this.historyItemId = historyItemId;
\r
22 this.chartDataId = identityHashCode;
\r
25 public void open() throws HistoryException {
\r
26 accessor = history.openStream(historyItemId, "r");
\r
27 iter = new StreamIterator( accessor );
\r
30 public void close() {
\r
31 if (accessor!=null) {
\r
34 } catch (AccessorException e) {
\r
42 public int compareTo(HistorySamplerItem o) {
\r
44 i = historyItemId.compareTo(o.historyItemId);
\r
50 public int hashCode() {
\r
52 code = 13*code + historyItemId.hashCode();
\r
53 code = 13*code + history.hashCode();
\r
58 public boolean equals(Object obj) {
\r
59 if ( obj == null ) return false;
\r
60 if ( obj instanceof HistorySamplerItem == false ) return false;
\r
61 HistorySamplerItem other = (HistorySamplerItem) obj;
\r
62 if ( !other.history.equals(history) ) return false;
\r
63 if ( !other.historyItemId.equals(historyItemId) ) return false;
\r