Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,12 @@ public async Task<IDocumentStore> Connect(CancellationToken cancellationToken)
dbOptions.Conventions.FindClrType += configuration.FindClrType;
}

return await EmbeddedServer.Instance.GetDocumentStoreAsync(dbOptions, cancellationToken).ConfigureAwait(false);
var store = await EmbeddedServer.Instance.GetDocumentStoreAsync(dbOptions, cancellationToken).ConfigureAwait(false);

var databaseSetup = new DatabaseSetup(configuration);
await databaseSetup.Execute(store, cancellationToken).ConfigureAwait(false);

return store;
}

public void Dispose()
Expand Down
18 changes: 2 additions & 16 deletions src/ServiceControl.Audit.Persistence.RavenDb5/RavenDb5Installer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,31 +5,17 @@

class RavenDb5Installer : IPersistenceInstaller
{
public RavenDb5Installer(IRavenDbPersistenceLifecycle lifecycle, DatabaseSetup databaseSetup)
public RavenDb5Installer(IRavenDbPersistenceLifecycle lifecycle)
{
this.lifecycle = lifecycle;
this.databaseSetup = databaseSetup;
}

public async Task Install(CancellationToken cancellationToken)
{
await lifecycle.Start(cancellationToken).ConfigureAwait(false);

try
{
using (var documentStore = lifecycle.GetDocumentStore())
{
await databaseSetup.Execute(documentStore, cancellationToken)
.ConfigureAwait(false);
}
}
finally
{
await lifecycle.Stop(cancellationToken).ConfigureAwait(false);
}
await lifecycle.Stop(cancellationToken).ConfigureAwait(false);
}

readonly IRavenDbPersistenceLifecycle lifecycle;
readonly DatabaseSetup databaseSetup;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,9 @@

class RavenDb5Persistence : IPersistence
{
public RavenDb5Persistence(DatabaseConfiguration databaseConfiguration, DatabaseSetup databaseSetup)
public RavenDb5Persistence(DatabaseConfiguration databaseConfiguration)
{
this.databaseConfiguration = databaseConfiguration;
this.databaseSetup = databaseSetup;
}

public IPersistenceLifecycle Configure(IServiceCollection serviceCollection)
Expand All @@ -29,7 +28,7 @@ public IPersistenceLifecycle Configure(IServiceCollection serviceCollection)
return lifecycle;
}

public IPersistenceInstaller CreateInstaller() => new RavenDb5Installer(CreateLifecycle(), databaseSetup);
public IPersistenceInstaller CreateInstaller() => new RavenDb5Installer(CreateLifecycle());

IRavenDbPersistenceLifecycle CreateLifecycle()
{
Expand All @@ -44,6 +43,5 @@ IRavenDbPersistenceLifecycle CreateLifecycle()
}

readonly DatabaseConfiguration databaseConfiguration;
readonly DatabaseSetup databaseSetup;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public IDocumentStore GetDocumentStore()
return documentStore;
}

public Task Start(CancellationToken cancellationToken)
public async Task Start(CancellationToken cancellationToken)
{
var store = new DocumentStore
{
Expand All @@ -44,7 +44,8 @@ public Task Start(CancellationToken cancellationToken)

documentStore = store;

return Task.CompletedTask;
var databaseSetup = new DatabaseSetup(configuration);
await databaseSetup.Execute(store, cancellationToken).ConfigureAwait(false);
}

public Task Stop(CancellationToken cancellationToken)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,8 @@ public class RavenDbPersistenceConfiguration : IPersistenceConfiguration
public IPersistence Create(PersistenceSettings settings)
{
var databaseConfiguration = GetDatabaseConfiguration(settings);
var databaseSetup = new DatabaseSetup(databaseConfiguration);

return new RavenDb5Persistence(databaseConfiguration, databaseSetup);
return new RavenDb5Persistence(databaseConfiguration);
}

internal static DatabaseConfiguration GetDatabaseConfiguration(PersistenceSettings settings)
Expand Down