/// <summary> /// Get a <see cref="IDataQueryEngine"/> implementation based on the specified <paramref name="info"/> /// </summary> /// <param name="info"> /// The current data retrieval state /// </param> /// <returns> /// a <see cref="IDataQueryEngine"/> implementation based on the specified <paramref name="info"/> /// </returns> public IDataQueryEngine GetQueryEngine(DataRetrievalInfo info) { ICollection<MappingEntity> crossSectionalMeasureMappings = info.BuildXSMeasures(); IDataQueryEngine queryEngine = null; if (info.MeasureComponent == null) { queryEngine = SeriesDataQueryEngine.Instance; } else if (crossSectionalMeasureMappings.Count > 0) { queryEngine = SeriesDataQueryEngineXsMeasureBuffered.Instance; } return queryEngine; }
/// <summary> /// Get a <see cref="IDataQueryEngine"/> implementation based on the specified <paramref name="info"/> /// </summary> /// <param name="info"> /// The current data retrieval state /// </param> /// <returns> /// a <see cref="IDataQueryEngine"/> implementation based on the specified <paramref name="info"/> /// </returns> public IDataQueryEngine GetQueryEngine(DataRetrievalInfo info) { ICollection<MappingEntity> crossSectionalMeasureMappings = info.BuildXSMeasures(); IDataQueryEngine queryEngine = null; if (info.MeasureComponent == null) { if (info.MappingSet.Dataflow.Dsd.CrossSectionalMeasures.Count > 0) { queryEngine = CrossSectionalMeasuresDataQueryEngine.Instance; } else { queryEngine = CrossSectionalPrimaryDataQueryEngine.Instance; } } else if (crossSectionalMeasureMappings.Count > 0) { queryEngine = CrossSectionalMeasuresMappedDataQueryEngine.Instance; } return queryEngine; }
/// <summary> /// This method executes an SQL query on the dissemination database and writes it to <see cref="DataRetrievalInfoSeries.SeriesWriter"/> . The SQL query is located inside <paramref name="info"/> at <see cref="DataRetrievalInfo.SqlString"/> /// </summary> /// <exception cref="System.ArgumentNullException"> /// <paramref name="info"/> /// is null /// </exception> /// <exception cref="DataRetrieverException"> /// <see cref="ErrorTypes"/> /// </exception> /// <param name="info"> /// The current DataRetrieval state /// </param> public void ExecuteSqlQuery(DataRetrievalInfo info) { info.BuildXSMeasures(); this.ExecuteDbCommand(info); }
/// <summary> /// This method executes an SQL query on the dissemination database and writes it to <see cref="DataRetrievalInfoXS.XSWriter"/> . The SQL query is located inside <paramref name="info"/> at <see cref="DataRetrievalInfo.SqlString"/> /// </summary> /// <exception cref="System.ArgumentNullException"> /// <paramref name="info"/> /// is null /// </exception> /// <exception cref="DataRetrieverException"> /// <see cref="ErrorTypes"/> /// </exception> /// <param name="info"> /// The current DataRetrieval state /// </param> public override void ExecuteSqlQuery(DataRetrievalInfo info) { info.BuildXSMeasures(); base.ExecuteSqlQuery(info); }