BExIS.Dlm.Services.Data.DatasetManager.getDatasetVersionEffectiveTuples C# (CSharp) Method

getDatasetVersionEffectiveTuples() private method

private getDatasetVersionEffectiveTuples ( DatasetVersion datasetVersion ) : List
datasetVersion BExIS.Dlm.Entities.Data.DatasetVersion
return List
        private List<AbstractTuple> getDatasetVersionEffectiveTuples(DatasetVersion datasetVersion)
        {
            List<AbstractTuple> tuples = new List<AbstractTuple>();
            Dataset dataset = datasetVersion.Dataset;
            if (dataset.Status == DatasetStatus.Deleted)
                throw new Exception(string.Format("Provided dataset version {0} belongs to deleted dataset {1}.", datasetVersion.Id, dataset.Id));
            Int64 latestVersionId = dataset.Versions.OrderByDescending(t => t.Timestamp).Where(p => p.Timestamp <= dataset.LastCheckIOTimestamp).First().Id; // no need to replace it with the STATUS version
            if (datasetVersion.Id > latestVersionId)
                throw new Exception(string.Format("Invalid version id. The dataset version id {0} is greater than the latest version number!", datasetVersion.Id));

            if (latestVersionId == datasetVersion.Id && dataset.Status == DatasetStatus.CheckedOut) // its a request for the working copy
            {
                tuples = getWorkingCopyTuples(datasetVersion).Cast<AbstractTuple>().ToList();
            }
            else if (latestVersionId == datasetVersion.Id && dataset.Status == DatasetStatus.CheckedIn) // its a request for the latest checked in version that should be served from the Tuples table
            {
                tuples = getPrimaryTuples(datasetVersion).Cast<AbstractTuple>().ToList();
            }
            else
            {
                tuples = getHistoricTuples(datasetVersion);
            }
            //tuples.ForEach(p => p.Materialize());
            return (tuples);
        }

Same methods

DatasetManager::getDatasetVersionEffectiveTuples ( DatasetVersion datasetVersion, int pageNumber, int pageSize ) : List