示例#1
0
 public CSVPlugin(ExtentStorageConfigurationLoader extentStorageLoader)
 {
     _extentStorageLoader = extentStorageLoader;
 }
示例#2
0
        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();
        }