private bool IsEndOfCache(CollectionQuery query)
{
CachedDataSet cachedItems;
if (cachedData.TryGetValue(query.CacheKey, out cachedItems) == false)
{
return false;
}
var cacheState = GetCacheState(query);
if (cacheState == CachedDataViewState.CompleteMiss) return false;
else if (cacheState == CachedDataViewState.PartialHit) return true;
else
{
return query.Skip + query.Take >= cachedItems.Items.Count;
}
}