Exemple #1
0
        /// <summary>
        /// Inicializa a isntancia.
        /// </summary>
        /// <param name="parameters">Parametros de configuração.</param>
        public void Init(System.Collections.IDictionary parameters)
        {
            var manager             = parameters["manager"] as IDataCacheManager;
            var downloader          = parameters["downloader"] as IDataEntryDownloader;
            var repository          = parameters["repository"] as IDataEntriesRepository;
            var logger              = parameters["logger"] as Colosoft.Logging.ILogger;
            var typeSchema          = parameters["typeSchema"] as Colosoft.Data.Schema.ITypeSchema;
            var cacheLoaderObserver = parameters["cacheLoaderObserver"] as ICacheLoaderObserver;

            manager.Require("manager").NotNull();
            downloader.Require("downloader").NotNull();
            repository.Require("repository").NotNull();
            typeSchema.Require("typeSchema").NotNull();
            logger.Require("logger").NotNull();
            _manager    = manager;
            _downloader = downloader;
            _repository = repository;
            _logger     = logger;
            _typeSchema = typeSchema;
            if (cacheLoaderObserver != null)
            {
                _observer += cacheLoaderObserver;
            }
            downloader.DownloadCompleted += Downloader_DownloadCompleted;
            downloader.ProgressChanged   += Downloader_ProgressChanged;
        }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="databaseExecuter">Executor do banco de dados.</param>
 /// <param name="cacheExecuter">Executor do cache.</param>
 /// <param name="cacheProvider"></param>
 /// <param name="typeSchema"></param>
 /// <param name="recordKeyFactory"></param>
 public DynamicPersistenceExecuter(IPersistenceExecuter databaseExecuter, IPersistenceExecuter cacheExecuter, Colosoft.Caching.ICacheProvider cacheProvider, Colosoft.Data.Schema.ITypeSchema typeSchema, Query.IRecordKeyFactory recordKeyFactory)
 {
     _databaseExecuter      = databaseExecuter;
     _cacheExecuter         = cacheExecuter;
     _cacheProvider         = cacheProvider;
     _typeSchema            = typeSchema;
     _actionResultProcessor = new Schema.PersistenceActionResultProcessor(typeSchema, recordKeyFactory);
 }
 /// <summary>
 /// Construtor padrão
 /// </summary>
 /// <param name="cacheProvider">Provider do cache</param>
 /// <param name="typeSchema">Esquema dos tipos do sistema.</param>
 /// <param name="keyFactory"></param>
 public CachePersistenceSession(ICacheProvider cacheProvider, Colosoft.Data.Schema.ITypeSchema typeSchema, Lazy <Query.IRecordKeyFactory> keyFactory) : base()
 {
     cacheProvider.Require("cacheProvider").NotNull();
     typeSchema.Require("typeSchema").NotNull();
     keyFactory.Require("keyFactory").NotNull();
     _cacheProvider = cacheProvider;
     _typeSchema    = typeSchema;
     _keyFactory    = keyFactory;
 }
Exemple #4
0
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="cacheProvider"></param>
 /// <param name="typeSchema"></param>
 /// <param name="keyFactory"></param>
 public CacheSourceContext(ICacheProvider cacheProvider, Colosoft.Data.Schema.ITypeSchema typeSchema, Lazy <Query.IRecordKeyFactory> keyFactory)
 {
     cacheProvider.Require("cacheProvider").NotNull();
     typeSchema.Require("typeSchema").NotNull();
     keyFactory.Require("keyFactory").NotNull();
     _cacheProvider = cacheProvider;
     _typeSchema    = typeSchema;
     _keyFactory    = keyFactory;
 }
Exemple #5
0
 /// <summary>
 /// Construtor padrão
 /// </summary>
 /// <param name="cacheProvider">Objeto do cache</param>
 /// <param name="keyFactory"></param>
 /// <param name="typeSchema">Instancia do esquema dos tipos do sistema.</param>
 public CachePersistenceExecuter(ICacheProvider cacheProvider, Lazy <Query.IRecordKeyFactory> keyFactory, Colosoft.Data.Schema.ITypeSchema typeSchema)
 {
     cacheProvider.Require("cache").NotNull();
     keyFactory.Require("keyFactory").NotNull();
     typeSchema.Require("typeSchema").NotNull();
     _cacheProvider = cacheProvider;
     _typeSchema    = typeSchema;
     _sourceContext = new CacheSourceContext(cacheProvider, typeSchema, keyFactory);
     _keyFactory    = keyFactory;
 }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="databaseContext">Instancia do contexto do banco de dados.</param>
 /// <param name="cacheContext">Instancia do contexto do cache</param>
 /// <param name="typeSchema">Instancia dos esquemas dos tipos do sistema.</param>
 /// <param name="recordKeyFactory">Instancia da factory responsável pela criação das chaves de registro.</param>
 public DynamicPersistenceContext(IPersistenceContext databaseContext, IPersistenceContext cacheContext, Colosoft.Data.Schema.ITypeSchema typeSchema, Query.IRecordKeyFactory recordKeyFactory)
 {
     databaseContext.Require("databaseContext").NotNull();
     cacheContext.Require("cacheContext").NotNull();
     typeSchema.Require("typeSchema").NotNull();
     recordKeyFactory.Require("recordKeyFactory").NotNull();
     _databaseContext  = databaseContext;
     _cacheContext     = cacheContext;
     _typeSchema       = typeSchema;
     _recordKeyFactory = recordKeyFactory;
 }
Exemple #7
0
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="databaseSession">Instancia da sessão de persistencia do banco de dados.</param>
 /// <param name="cacheSession">Instancia da sessão de persistencia do cache.</param>
 /// <param name="typeSchema">Instancia dos esquemas dos tipos do sistema.</param>
 /// <param name="recordKeyFactory">Instancia da factory responsável pela criação das chaves de registro.</param>
 public DynamicPersistenceSession(IPersistenceSession databaseSession, IPersistenceSession cacheSession, Colosoft.Data.Schema.ITypeSchema typeSchema, Query.IRecordKeyFactory recordKeyFactory)
 {
     databaseSession.Require("databaseSession").NotNull();
     cacheSession.Require("cacheSession").NotNull();
     typeSchema.Require("typeSchema").NotNull();
     recordKeyFactory.Require("recordKeyFactory").NotNull();
     _databaseSession        = databaseSession;
     _cacheSession           = cacheSession;
     _typeSchema             = typeSchema;
     _recordKeyFactory       = recordKeyFactory;
     _defaultExecuterCreator = ((IPersistenceExecuterFactory)_databaseSession).ExecuterCreator;
     ((IPersistenceExecuterFactory)_databaseSession).ExecuterCreator = CreateExecuter;
 }
Exemple #8
0
 /// <summary>
 /// Cria o contexto de persistencia do banco de dados.
 /// </summary>
 /// <param name="typeSchema">Esquema de tipos.</param>
 /// <returns>Contexto de persistencia.</returns>
 private Colosoft.Data.IPersistenceContext CreateDatabasePersistenceContext(Colosoft.Data.Schema.ITypeSchema typeSchema)
 {
     return(new Colosoft.Data.Database.MySql.MySqlPersistenceContext(
                Microsoft.Practices.ServiceLocation.ServiceLocator.Current,
                typeSchema));
 }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="typeSchema">Objeto de recuperação de metadados</param>
 public CacheQueryTranslator(Colosoft.Data.Schema.ITypeSchema typeSchema)
 {
     typeSchema.Require("typeSchema").NotNull();
     _typeSchema = typeSchema;
 }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="typeSchema"></param>
 public ProviderLocator(Colosoft.Data.Schema.ITypeSchema typeSchema)
 {
     typeSchema.Require("typeSchema").NotNull();
     _typeSchema = typeSchema;
 }
Exemple #11
0
 /// <summary>
 /// Cria o contexto de persistencia do banco de dados.
 /// </summary>
 /// <param name="typeSchema">Estque de tipos.</param>
 /// <returns>Contexto de persistencia.</returns>
 protected abstract Colosoft.Data.IPersistenceContext CreateDatabasePersistenceContext(Colosoft.Data.Schema.ITypeSchema typeSchema);
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="serviceLocator"></param>
 /// <param name="typeSchema"></param>
 /// <param name="providerLocator"></param>
 public MsSqlDataSource(Microsoft.Practices.ServiceLocation.IServiceLocator serviceLocator, Colosoft.Data.Schema.ITypeSchema typeSchema, IProviderLocator providerLocator) : base(serviceLocator, typeSchema, new SqlQueryTranslator(typeSchema), providerLocator)
 {
 }
Exemple #13
0
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="typeSchema"></param>
 public RecordKeyFactory(Colosoft.Data.Schema.ITypeSchema typeSchema)
 {
     typeSchema.Require("typeSchema").NotNull();
     _typeSchema  = typeSchema;
     _cultureInfo = System.Globalization.CultureInfo.GetCultureInfo("en-US");
 }