/** * Copyright (C) 2010-14 diirt developers. See COPYRIGHT.TXT * All rights reserved. Use is subject to license terms. See LICENSE.TXT */ package org.diirt.datasource.timecache.query; import java.time.Instant; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.SortedMap; import org.diirt.util.time.TimeInterval; import org.diirt.vtype.VType; /** * Represents a completed chunk with all data available. * @author Fred Arnaud (Sopra Group) - ITER */ public class QueryDataComplete implements QueryData { private final TimeInterval timeInterval; private final SortedMap<Instant, VType> dataMap; QueryDataComplete(TimeInterval timeInterval, SortedMap<Instant, VType> dataMap) { this.dataMap = Collections.unmodifiableSortedMap(dataMap); this.timeInterval = timeInterval; } /** {@inheritDoc} */ @Override public TimeInterval getTimeInterval() { return timeInterval; } /** {@inheritDoc} */ @Override public int getCount() { return dataMap.size(); } /** {@inheritDoc} */ @Override public List<VType> getData() { return new ArrayList<VType>(dataMap.values()); } /** {@inheritDoc} */ @Override public List<Instant> getTimestamps() { return new ArrayList<Instant>(dataMap.keySet()); } }