public BuildSettingsViewModel(IBuildSettingsRepository repository)
		{
			_repository = repository;

			ItemRebuildCommand = new DelegateCommand<BuildSettings>(RaiseItemRebuildInteractionRequest, x => x != null);
			CommonConfirmRequest = new InteractionRequest<Confirmation>();
		}
        public BuildSettingsViewModel(IBuildSettingsRepository repository)
        {
            _repository = repository;

            ItemRebuildCommand   = new DelegateCommand <BuildSettings>(RaiseItemRebuildInteractionRequest, x => x != null);
            CommonConfirmRequest = new InteractionRequest <Confirmation>();
        }
        /// <summary>
        /// Azures the index builder.
        /// </summary>
        /// <param name="repository">The repository.</param>
        /// <param name="searchProvider">The search provider.</param>
        /// <param name="messageSender">The message sender.</param>
        /// <param name="consumerFactory">The consumer factory.</param>
        /// <param name="observer">The observer.</param>
        /// <param name="queueReader">The queue reader.</param>
        /// <param name="indexBuilders">The index builders.</param>
        public SearchIndexController(IBuildSettingsRepository repository, ISearchProvider searchProvider, IMessageSender messageSender, IConsumerFactory consumerFactory, ISystemObserver observer, IQueueReader queueReader, ISearchIndexBuilder[] indexBuilders)
		{
			_repository = repository;
			_messageSender = messageSender;
			_observer = observer;
			_queueReader = queueReader;
			_consumerFactory = consumerFactory;
            _searchProvider = searchProvider;
            _indexBuilders = indexBuilders;
		}
示例#4
0
 /// <summary>
 /// Azures the index builder.
 /// </summary>
 /// <param name="repository">The repository.</param>
 /// <param name="searchProvider">The search provider.</param>
 /// <param name="messageSender">The message sender.</param>
 /// <param name="consumerFactory">The consumer factory.</param>
 /// <param name="observer">The observer.</param>
 /// <param name="queueReader">The queue reader.</param>
 /// <param name="indexBuilders">The index builders.</param>
 public SearchIndexController(IBuildSettingsRepository repository, ISearchProvider searchProvider, IMessageSender messageSender, IConsumerFactory consumerFactory, ISystemObserver observer, IQueueReader queueReader, ISearchIndexBuilder[] indexBuilders)
 {
     _repository      = repository;
     _messageSender   = messageSender;
     _observer        = observer;
     _queueReader     = queueReader;
     _consumerFactory = consumerFactory;
     _searchProvider  = searchProvider;
     _indexBuilders   = indexBuilders;
 }
示例#5
0
        /// <summary>
        /// Gets the build config.
        /// </summary>
        /// <param name="repository">The repository.</param>
        /// <param name="scope">The scope.</param>
        /// <param name="documentType">Type of the document.</param>
        /// <returns></returns>
        private BuildSettings GetBuildConfig(IBuildSettingsRepository repository, string scope, string documentType)
        {
            var key = String.Format("build_{0}_{1}", scope, documentType);

            var buildConfig = repository.BuildSettings.Where(x => (x.Scope.Equals(scope, StringComparison.OrdinalIgnoreCase) && x.DocumentType.Equals(documentType, StringComparison.OrdinalIgnoreCase))).FirstOrDefault();

            if (buildConfig == null)
            {
                buildConfig = new BuildSettings(scope, documentType)
                {
                    BuildSettingId = key,
                    Status         = BuildStatus.NeverStarted.GetHashCode()
                };
                repository.Add(buildConfig);
            }

            return(buildConfig);
        }
示例#6
0
		public SearchService(IBuildSettingsRepository buildSettingsRepository, ISearchIndexController searchIndexController, ISearchProvider searchProvider)
		{
			BuildSettingsRepository = buildSettingsRepository;
            SearchIndexController = searchIndexController;
            SearchProvider = searchProvider;
		}
        /// <summary>
        /// Gets the build config.
        /// </summary>
        /// <param name="repository">The repository.</param>
        /// <param name="scope">The scope.</param>
        /// <param name="documentType">Type of the document.</param>
        /// <returns></returns>
		private BuildSettings GetBuildConfig(IBuildSettingsRepository repository, string scope, string documentType)
		{
			var key = String.Format("build_{0}_{1}", scope, documentType);

			var buildConfig = repository.BuildSettings.Where(x => (x.Scope.Equals(scope, StringComparison.OrdinalIgnoreCase) && x.DocumentType.Equals(documentType, StringComparison.OrdinalIgnoreCase))).FirstOrDefault();

			if (buildConfig == null)
			{
				buildConfig = new BuildSettings(scope, documentType)
				    {
				        BuildSettingId = key,
				        Status = BuildStatus.NeverStarted.GetHashCode()
				    };
			    repository.Add(buildConfig);
			}

			return buildConfig;
		}
示例#8
0
 public SearchService(IBuildSettingsRepository buildSettingsRepository, ISearchIndexController searchIndexController, ISearchProvider searchProvider)
 {
     BuildSettingsRepository = buildSettingsRepository;
     SearchIndexController   = searchIndexController;
     SearchProvider          = searchProvider;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="SearchIndexMessageHandler"/> class.
 /// </summary>
 /// <param name="messageSender">The message sender.</param>
 /// <param name="repository">The repository.</param>
 /// <param name="indexBuilders">The index builders.</param>
 public SearchIndexMessageHandler(IMessageSender messageSender, IBuildSettingsRepository repository, ISearchIndexBuilder[] indexBuilders)
 {
     MessageSender  = messageSender;
     _repository    = repository;
     _indexBuilders = indexBuilders;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="SearchIndexMessageHandler"/> class.
        /// </summary>
        /// <param name="messageSender">The message sender.</param>
        /// <param name="repository">The repository.</param>
        /// <param name="indexBuilders">The index builders.</param>
        public SearchIndexMessageHandler(IMessageSender messageSender, IBuildSettingsRepository repository, ISearchIndexBuilder[] indexBuilders)
		{
			MessageSender = messageSender;
            _repository = repository;
            _indexBuilders = indexBuilders;
		}