|
@@ -12,13 +12,17 @@ namespace Revenj.Bench
|
|
public readonly IQueryableRepository<Fortune> FortuneRepository;
|
|
public readonly IQueryableRepository<Fortune> FortuneRepository;
|
|
public readonly Random Random = new Random(0);
|
|
public readonly Random Random = new Random(0);
|
|
public readonly World[] Worlds = new World[512];
|
|
public readonly World[] Worlds = new World[512];
|
|
|
|
+ private readonly IDatabaseQueryManager QueryManager;
|
|
|
|
+ private readonly IDatabaseQuery Query;
|
|
//private readonly IRepositoryBulkReader BulkReader;
|
|
//private readonly IRepositoryBulkReader BulkReader;
|
|
//private readonly Lazy<World>[] LazyWorlds = new Lazy<World>[512];
|
|
//private readonly Lazy<World>[] LazyWorlds = new Lazy<World>[512];
|
|
|
|
|
|
public Context(IObjectFactory factory, IDatabaseQueryManager manager)
|
|
public Context(IObjectFactory factory, IDatabaseQueryManager manager)
|
|
{
|
|
{
|
|
|
|
+ QueryManager = manager;
|
|
var scope = factory.CreateScope(null);
|
|
var scope = factory.CreateScope(null);
|
|
- scope.RegisterInterfaces(manager.StartQuery(false));
|
|
|
|
|
|
+ Query = manager.StartQuery(false);
|
|
|
|
+ scope.RegisterInterfaces(Query);
|
|
WorldRepository = scope.Resolve<IPersistableRepository<World>>();
|
|
WorldRepository = scope.Resolve<IPersistableRepository<World>>();
|
|
FortuneRepository = scope.Resolve<IQueryableRepository<Fortune>>();
|
|
FortuneRepository = scope.Resolve<IQueryableRepository<Fortune>>();
|
|
//BulkReader = scope.BulkRead(ChunkedMemoryStream.Static());
|
|
//BulkReader = scope.BulkRead(ChunkedMemoryStream.Static());
|
|
@@ -47,5 +51,10 @@ namespace Revenj.Bench
|
|
worlds[i] = WorldRepository.Find(id);
|
|
worlds[i] = WorldRepository.Find(id);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ ~Context()
|
|
|
|
+ {
|
|
|
|
+ QueryManager.EndQuery(Query, true);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|