Esempio n. 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;
        }
Esempio n. 2
0
        /// <summary>
        ///  Inicializa a instancia com os parametros informados.
        /// </summary>
        /// <param name="parameters">Dicionário com os parametros de inicialização.</param>
        public void Init(System.Collections.IDictionary parameters)
        {
            var sourceContext       = parameters["sourceContext"] as ISourceContext;
            var manager             = parameters["manager"] as IDataCacheManager;
            var logger              = parameters["logger"] as Colosoft.Logging.ILogger;
            var typeSchema          = parameters["typeSchema"] as Colosoft.Data.Schema.ITypeSchema;
            var cacheLoaderObserver = parameters["cacheLoaderObserver"] as ICacheLoaderObserver;
            var typesMetadata       = parameters["typesMetadata"] as IList <ITypeMetadata>;

            sourceContext.Require("sourceContext").NotNull();
            manager.Require("manager").NotNull();
            if (typesMetadata == null)
            {
                typeSchema.Require("typeSchema").NotNull();
            }
            logger.Require("logger").NotNull();
            _sourceContext = sourceContext;
            _manager       = manager;
            _logger        = logger;
            _typeSchema    = typeSchema;
            _typesMetadata = typesMetadata;
            _started       = false;
            if (cacheLoaderObserver != null)
            {
                _observer += cacheLoaderObserver;
            }
        }