public RavenDbServer(RavenConfiguration settings) { settings.LoadLoggingSettings(); if (settings.ShouldCreateDefaultsWhenBuildingNewDatabaseFromScratch) settings.DatabaseCreatedFromScratch += OnDatabaseCreatedFromScratch; database = new DocumentDatabase(settings); database.SpinBackgroundWorkers(); server = new HttpServer(settings, typeof (RequestResponder).Assembly.GetTypes() .Where( t => typeof (RequestResponder).IsAssignableFrom(t) && t.IsAbstract == false) // to ensure that we would get consistent order, so we would always // have the responders using the same order, otherwise we get possibly // random ordering, and that might cause issues .OrderBy(x => x.Name) .Select(t => (RequestResponder) Activator.CreateInstance(t)) .Select(r => { r.Database = database; r.Settings = settings; return r; }) ); server.Start(); }
public RavenDbServer(RavenConfiguration settings) { settings.LoadLoggingSettings(); database = new DocumentDatabase(settings); database.SpinBackgroundWorkers(); server = new HttpServer(settings, database); server.Start(); }
public RavenDbServer(RavenConfiguration settings) { settings.LoadLoggingSettings(); database = new DocumentDatabase(settings); try { database.SpinBackgroundWorkers(); server = new HttpServer(settings, database); server.Start(); } catch (Exception) { database.Dispose(); database = null; throw; } }