Exemple #1
0
        /// <inheritdoc />
        public virtual Task ExecuteIndexesAsync(IEnumerable <AbstractIndexCreationTask> tasks, string database = null, CancellationToken token = default)
        {
            AssertInitialized();
            var indexesToAdd = IndexCreation.CreateIndexesToAdd(tasks, Conventions);

            return(Maintenance.ForDatabase(database ?? Database).SendAsync(new PutIndexesOperation(indexesToAdd), token));
        }
        /// <summary>
        /// Executes indexes creation.
        /// </summary>
        public virtual Task ExecuteIndexesAsync(IEnumerable <AbstractIndexCreationTask> tasks, CancellationToken token = default(CancellationToken))
        {
            AssertInitialized();
            var indexesToAdd = IndexCreation.CreateIndexesToAdd(tasks, Conventions);

            return(Admin.SendAsync(new PutIndexesOperation(indexesToAdd), token));
        }
Exemple #3
0
        /// <summary>
        /// Executes indexes creation in side-by-side mode.
        /// </summary>
        public virtual async Task SideBySideExecuteIndexesAsync(List <AbstractIndexCreationTask> indexCreationTasks, Etag minimumEtagBeforeReplace = null, DateTime?replaceTimeUtc = null)
        {
            var indexesToAdd = IndexCreation.CreateIndexesToAdd(indexCreationTasks, Conventions);
            await AsyncDatabaseCommands.PutSideBySideIndexesAsync(indexesToAdd, minimumEtagBeforeReplace, replaceTimeUtc).ConfigureAwait(false);

            foreach (var task in indexCreationTasks)
            {
                task.AfterExecute(DatabaseCommands, Conventions);
            }
        }
Exemple #4
0
        /// <summary>
        /// Executes indexes creation.
        /// </summary>
        public virtual async Task ExecuteIndexesAsync(List <AbstractIndexCreationTask> indexCreationTasks)
        {
            var indexesToAdd = IndexCreation.CreateIndexesToAdd(indexCreationTasks, Conventions);
            await AsyncDatabaseCommands.PutIndexesAsync(indexesToAdd).ConfigureAwait(false);

            foreach (var task in indexCreationTasks)
            {
                await task.AfterExecuteAsync(AsyncDatabaseCommands, Conventions).ConfigureAwait(false);
            }
        }
Exemple #5
0
        /// <summary>
        /// Executes indexes creation in side-by-side mode.
        /// </summary>
        public virtual void SideBySideExecuteIndexes(List <AbstractIndexCreationTask> indexCreationTasks, Etag minimumEtagBeforeReplace = null, DateTime?replaceTimeUtc = null)
        {
            var indexesToAdd = IndexCreation.CreateIndexesToAdd(indexCreationTasks, Conventions);

            DatabaseCommands.PutSideBySideIndexes(indexesToAdd, minimumEtagBeforeReplace, replaceTimeUtc);

            foreach (var task in indexCreationTasks)
            {
                task.AfterExecute(DatabaseCommands, Conventions);
            }
        }
Exemple #6
0
        /// <summary>
        /// Executes indexes creation.
        /// </summary>
        public virtual void ExecuteIndexes(List <AbstractIndexCreationTask> indexCreationTasks)
        {
            var indexesToAdd = IndexCreation.CreateIndexesToAdd(indexCreationTasks, Conventions);

            DatabaseCommands.PutIndexes(indexesToAdd);

            foreach (var task in indexCreationTasks)
            {
                task.AfterExecute(DatabaseCommands, Conventions);
            }
        }