public CSVPlugin(ExtentStorageConfigurationLoader extentStorageLoader) { _extentStorageLoader = extentStorageLoader; }
private void EstablishDataEnvironment(IContainer builder, ILifetimeScope scope) { var innerContainer = new ContainerBuilder(); // Loading and storing the workspaces var workspaceLoader = new WorkspaceLoader(scope.Resolve<IWorkspaceCollection>(), "App_Data/Database/workspaces.xml"); workspaceLoader.Load(); innerContainer.RegisterInstance(workspaceLoader).As<WorkspaceLoader>(); // Loading and storing the extents var extentLoader = new ExtentStorageConfigurationLoader( scope.Resolve<ExtentStorageData>(), scope.Resolve<IExtentStorageLoader>(), "App_Data/Database/extents.xml"); innerContainer.Register(c => new ExtentStorageConfigurationLoader( c.Resolve<ExtentStorageData>(), c.Resolve<IExtentStorageLoader>(), "App_Data/Database/extents.xml")) .As<ExtentStorageConfigurationLoader>(); innerContainer.Update(builder); // Now start the plugins _settings?.Hooks?.BeforeLoadExtents(scope); // Loads all extents after all plugins were started extentLoader.LoadAllExtents(); }