/// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="dataSource"></param>
 /// <param name="recordValues">Instancia do registro que será processado.</param>
 /// <param name="recordDescriptor"></param>
 /// <param name="entityTypeName">Nome do tipo da entidade associada.</param>
 public RegisterRecordAsyncTask(DynamicQueryDataSource dataSource, object[] recordValues, Record.RecordDescriptor recordDescriptor, Colosoft.Reflection.TypeName entityTypeName)
 {
     _dataSource       = dataSource;
     _recordValues     = recordValues;
     _recordDescriptor = recordDescriptor;
     _entityTypeName   = entityTypeName;
 }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="dataCacheManager"></param>
 /// <param name="cacheDataSource"></param>
 /// <param name="serverDataSource"></param>
 /// <param name="typeSchema"></param>
 /// <param name="keyFactory"></param>
 /// <param name="logger"></param>
 public QueryDataSourceSelector(Lazy <Colosoft.Data.Caching.IDataCacheManager> dataCacheManager, Lazy <Query.IQueryDataSource> cacheDataSource, Lazy <Query.IQueryDataSource> serverDataSource, Lazy <Colosoft.Data.Schema.ITypeSchema> typeSchema, Lazy <Colosoft.Query.IRecordKeyFactory> keyFactory, Colosoft.Logging.ILogger logger)
 {
     dataCacheManager.Require("dataCacheManager").NotNull();
     cacheDataSource.Require("cacheDataSource").NotNull();
     serverDataSource.Require("serverDataSource").NotNull();
     typeSchema.Require("typeSchema").NotNull();
     keyFactory.Require("keyFactory").NotNull();
     _dataCacheManager       = dataCacheManager;
     _cacheDataSource        = cacheDataSource;
     _serverDataSource       = serverDataSource;
     _dynamicQueryDataSource = new Dynamic.DynamicQueryDataSource(_serverDataSource, dataCacheManager, typeSchema, keyFactory, logger);
 }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="dataSource"></param>
 /// <param name="queryInfo"></param>
 public QueryInfoListener(DynamicQueryDataSource dataSource, QueryInfo queryInfo)
 {
     _dataSource = dataSource;
     _root       = queryInfo;
     AnalysisQueryInfo(_root, true);
 }