protected static InMemoryIndex GetInitialIndex()
        {
            var index = new InMemoryIndex();

            //index.Load(new StringReader(InitialTestIndex.Index));
            return(index);
        }
        private static InMemoryIndex GetInitialIndex()
        {
            var index = new InMemoryIndex();

            index.Load(new StringReader(SenseNetServicesIndex.Index));

            return(index);
        }
Exemple #3
0
        protected static InMemoryIndex GetInitialIndex()
        {
            var index = new InMemoryIndex();

            index.Load(new StringReader(DefaultIndex.Index));
            _initialIndex = index;
            return(_initialIndex);
        }
Exemple #4
0
 protected static InMemoryIndex GetInitialIndex()
 {
     if (_initialIndex == null)
     {
         var index = new InMemoryIndex();
         index.Load(new StringReader(InMemoryTestIndex.Index));
         _initialIndex = index;
     }
     return(_initialIndex.Clone());
 }
 public void Initialize(InMemoryIndex index)
 {
     Assert.ArgumentNotNull(index, "index");
     Assert.IsNotNull(index, "index");
     this._index = index;
     this.set_Database("master");
     this.set_Root("/sitecore/content/Hello");
     IndexingManager.Provider.OnUpdateItem    += new EventHandler(this.Provider_OnUpdateItem);
     IndexingManager.Provider.OnRemoveItem    += new EventHandler(this.Provider_OnRemoveItem);
     IndexingManager.Provider.OnRemoveVersion += new EventHandler(this.Provider_OnRemoveVersion);
 }
Exemple #6
0
        //[TestMethod]
        public void InitialData_LoadIndex()
        {
            Test(() =>
            {
                var index = ((InMemorySearchEngine)Providers.Instance.SearchEngine).Index;
                index.Save(@"D:\index.txt");

                var loaded = new InMemoryIndex();
                loaded.Load(@"D:\index.txt");

                loaded.Save(@"D:\index1.txt");
            });
            Assert.Inconclusive();
        }
        public static IRepositoryBuilder BuildInMemoryRepository(this IRepositoryBuilder repositoryBuilder,
                                                                 InitialData initialData, InMemoryIndex initialIndex)
        {
            if (initialData == null)
            {
                throw new ArgumentNullException(nameof(initialData));
            }
            if (initialIndex == null)
            {
                throw new ArgumentNullException(nameof(initialIndex));
            }

            // Precedence: if a service is registered in the collection, use that
            // instead of creating instances locally.
            var services = (repositoryBuilder as RepositoryBuilder)?.Services;

            if (services?.GetService <DataProvider>() is InMemoryDataProvider dataProvider)
            {
                // If there is an instance in the container, use that. We have to set
                // these instances manually instead of using the extension method so that
                // we do not overwrite the store instance.
                Providers.Instance.DataProvider = dataProvider;
                Providers.Instance.DataStore    = services.GetService <IDataStore>();
            }
            else
            {
                dataProvider = new InMemoryDataProvider();
                repositoryBuilder.UseDataProvider(dataProvider);
            }

            Providers.Instance.ResetBlobProviders();

            var searchEngine = services?.GetService <ISearchEngine>() ?? new InMemorySearchEngine(initialIndex);

            repositoryBuilder
            .UseLogger(new DebugWriteLoggerAdapter())
            .UseTracer(new SnDebugViewTracer())
            .UseInitialData(initialData)
            .UseSharedLockDataProviderExtension(new InMemorySharedLockDataProvider())
            .UseExclusiveLockDataProviderExtension(new InMemoryExclusiveLockDataProvider())
            .UseBlobMetaDataProvider(new InMemoryBlobStorageMetaDataProvider(dataProvider))
            .UseBlobProviderSelector(new InMemoryBlobProviderSelector())
            .AddBlobProvider(new InMemoryBlobProvider())
            .UseAccessTokenDataProviderExtension(new InMemoryAccessTokenDataProvider())
            .UsePackagingDataProviderExtension(new InMemoryPackageStorageProvider())
            .UseSearchEngine(searchEngine)
            .UseSecurityDataProvider(GetSecurityDataProvider(dataProvider))
            .UseSecurityMessageProvider(new DefaultMessageProvider(new MessageSenderManager()))
            .UseElevatedModificationVisibilityRuleProvider(new ElevatedModificationVisibilityRule())
            .StartWorkflowEngine(false);

            var statDp = services?.GetService <IStatisticalDataProvider>() as InMemoryStatisticalDataProvider
                         ?? new InMemoryStatisticalDataProvider();

            repositoryBuilder.UseStatisticalDataProvider(statDp);

            Providers.Instance.PropertyCollector = new EventPropertyCollector();

            return(repositoryBuilder);
        }
Exemple #8
0
        public static IRepositoryBuilder BuildInMemoryRepository(this IRepositoryBuilder repositoryBuilder,
                                                                 InitialData initialData, InMemoryIndex initialIndex)
        {
            if (initialData == null)
            {
                throw new ArgumentNullException(nameof(initialData));
            }
            if (initialIndex == null)
            {
                throw new ArgumentNullException(nameof(initialIndex));
            }

            var dataProvider = new InMemoryDataProvider();

            repositoryBuilder
            .UseLogger(new DebugWriteLoggerAdapter())
            .UseTracer(new SnDebugViewTracer())
            .UseDataProvider(dataProvider)
            .UseInitialData(initialData)
            .UseSharedLockDataProviderExtension(new InMemorySharedLockDataProvider())
            .UseExclusiveLockDataProviderExtension(new InMemoryExclusiveLockDataProvider())
            .UseBlobMetaDataProvider(new InMemoryBlobStorageMetaDataProvider(dataProvider))
            .UseBlobProviderSelector(new InMemoryBlobProviderSelector())
            .UseAccessTokenDataProviderExtension(new InMemoryAccessTokenDataProvider())
            .UsePackagingDataProviderExtension(new InMemoryPackageStorageProvider())
            .UseSearchEngine(new InMemorySearchEngine(initialIndex))
            .UseSecurityDataProvider(GetSecurityDataProvider(dataProvider))
            .UseElevatedModificationVisibilityRuleProvider(new ElevatedModificationVisibilityRule())
            .StartWorkflowEngine(false);

            Providers.Instance.PropertyCollector = new EventPropertyCollector();

            return(repositoryBuilder);
        }
Exemple #9
0
        public static IRepositoryBuilder BuildInMemoryRepository(this IRepositoryBuilder repositoryBuilder,
                                                                 InitialData initialData, InMemoryIndex initialIndex)
        {
            if (initialData == null)
            {
                throw new ArgumentNullException(nameof(initialData));
            }
            if (initialIndex == null)
            {
                throw new ArgumentNullException(nameof(initialIndex));
            }

            // Precedence: if a service is registered in the collection, use that
            // instead of creating instances locally.
            var services = (repositoryBuilder as RepositoryBuilder)?.Services;

            if (services == null)
            {
                throw new ApplicationException("IServiceProvider cannot be found");
            }

            var dataProvider = services.GetRequiredService <DataProvider>();

            Providers.Instance.ResetBlobProviders(new ConnectionStringOptions());

            repositoryBuilder
            .UseLogger(new DebugWriteLoggerAdapter())
            .UseTracer(new SnDebugViewTracer())
            .UseInitialData(initialData)
            .UseBlobMetaDataProvider(new InMemoryBlobStorageMetaDataProvider(dataProvider))
            .UseBlobProviderSelector(new InMemoryBlobProviderSelector())
            .AddBlobProvider(new InMemoryBlobProvider())
            .UseSearchEngine(services.GetRequiredService <ISearchEngine>())
            .StartWorkflowEngine(false);

            var statDp = services?.GetService <IStatisticalDataProvider>() as InMemoryStatisticalDataProvider
                         ?? new InMemoryStatisticalDataProvider();

            repositoryBuilder.UseStatisticalDataProvider(statDp);

            return(repositoryBuilder);
        }