private DataSetPublishingResult GetCompiledDataSet(DataSetInfo dataSetInfo, ICatalogItemContext dataSetContext)
        {
            StoredDataSet storedDataSet = this.m_catalogTempDB.GetCompiledDataSet(dataSetInfo);

            if (storedDataSet != null && !storedDataSet.Definition.SequenceEqual(dataSetInfo.Definition))
            {
                storedDataSet = null;
            }
            if (storedDataSet == null)
            {
                DataSetPublishingResult result = default(DataSetPublishingResult);
                try
                {
                    using (ControlSnapshot createChunkFactory = new ControlSnapshot())
                    {
                        ReportProcessing  reportProcessing = this.CreateAndConfigureReportProcessing();
                        PublishingContext sharedDataSetPublishingContext = new PublishingContext(dataSetContext, dataSetInfo.Definition, createChunkFactory, AppDomain.CurrentDomain, true, this.GetDataSourceForSharedDataSetHandler, reportProcessing.Configuration);
                        result = reportProcessing.CreateSharedDataSet(sharedDataSetPublishingContext);
                    }
                }
                catch (Exception inner)
                {
                    throw new DefinitionInvalidException(dataSetInfo.AbsolutePath, inner);
                }
                storedDataSet = new StoredDataSet(dataSetInfo.Definition, result);
                this.m_catalogTempDB.SetCompiledDataSet(dataSetInfo, storedDataSet);
            }
            return(storedDataSet.PublishingResult);
        }
 public void SetCompiledDataSet(DataSetInfo dataSetInfo, StoredDataSet storedDataSet)
 {
     if (storedDataSet == null)
     {
         throw new ArgumentNullException("storedDataSet");
     }
     this.m_compiledDataSets[dataSetInfo.AbsolutePath] = storedDataSet;
 }
        public StoredDataSet GetCompiledDataSet(DataSetInfo dataSetInfo)
        {
            if (dataSetInfo == null)
            {
                throw new ArgumentNullException("dataSetInfo");
            }
            StoredDataSet result = default(StoredDataSet);

            this.m_compiledDataSets.TryGetValue(dataSetInfo.AbsolutePath, out result);
            return(result);
        }