Ejemplo n.º 1
0
        /// <summary>
        /// Creates a new form
        /// </summary>
        public ManagerForm()
        {
            InitializeComponent();
            this.Closing        += OnClosing;
            Constants.WindowIcon = this.Icon;

            //Ensure we upgrade settings if user has come from an older version of the application
            if (Settings.Default.UpgradeRequired)
            {
                Settings.Default.Upgrade();
                Settings.Default.UpgradeRequired = false;
                Settings.Default.Save();
                Settings.Default.Reload();
            }

            //Enable UTF-8 BOM Output if relevant
            Options.UseBomForUtf8 = Settings.Default.UseUtf8Bom;

            //Ensure Configuration Loader has known required Object Factorires registered
            ConfigurationLoader.AddObjectFactory(new VirtuosoObjectFactory());
            ConfigurationLoader.AddObjectFactory(new FullTextObjectFactory());

            //Prepare Connection Definitions so users don't get a huge lag the first time they use these
            ConnectionDefinitionManager.GetDefinitions().Count();

            //Check whether we have a Recent and Favourites Connections Graph
            this.LoadConnections();
        }
Ejemplo n.º 2
0
        public ManagerForm()
        {
            InitializeComponent();
            Constants.WindowIcon = this.Icon;

            //Disable UTF-8 BOM Output if relevant
            if (!Properties.Settings.Default.UseUtf8Bom)
            {
                this.mnuUseUtf8Bom.Checked = false;
                Options.UseBomForUtf8      = false;
            }
            this.mnuShowStartPage.Checked = Properties.Settings.Default.ShowStartPage;

            //Check whether we have a Recent and Favourites Connections Graph
            try
            {
                String appDataDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
                String sepChar    = new String(new char[] { Path.DirectorySeparatorChar });
                if (!appDataDir.EndsWith(sepChar))
                {
                    appDataDir += sepChar;
                }
                appDataDir = Path.Combine(appDataDir, "dotNetRDF" + sepChar);
                if (!Directory.Exists(appDataDir))
                {
                    Directory.CreateDirectory(appDataDir);
                }
                appDataDir = Path.Combine(appDataDir, "Store Manager" + sepChar);
                if (!Directory.Exists(appDataDir))
                {
                    Directory.CreateDirectory(appDataDir);
                }
                this._recentConnectionsFile = Path.Combine(appDataDir, "recent.ttl");
                this._faveConnectionsFile   = Path.Combine(appDataDir, "favourite.ttl");

                if (File.Exists(this._recentConnectionsFile))
                {
                    //Load Recent Connections
                    FileLoader.Load(this._recentConnections, this._recentConnectionsFile);
                    this.FillConnectionsMenu(this.mnuRecentConnections, this._recentConnections, MaxRecentConnections);
                }
                if (File.Exists(this._faveConnectionsFile))
                {
                    //Load Favourite Connections
                    FileLoader.Load(this._faveConnections, this._faveConnectionsFile);
                    this.FillConnectionsMenu(this.mnuFavouriteConnections, this._faveConnections, 0, true, this._faveConnectionsFile);
                }
            }
            catch
            {
                //If errors occur then ignore Recent Connections
            }

            //Ensure Configuration Loader has any required Object Factorires registered
            ConfigurationLoader.AddObjectFactory(new AdoObjectFactory());
            ConfigurationLoader.AddObjectFactory(new VirtuosoObjectFactory());
        }
Ejemplo n.º 3
0
        public void FullTextConfigSearchProviderLucene()
        {
            //Add and test the Index Configuration
            IGraph g        = this.GetBaseGraph();
            INode  indexObj = g.CreateBlankNode();

            g.Assert(indexObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Index"));
            g.Assert(indexObj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("Lucene.Net.Store.RAMDirectory, Lucene.Net"));
            g.Assert(indexObj, g.CreateUriNode("dnr-ft:ensureIndex"), (true).ToLiteral(g));

            ConfigurationLoader.AddObjectFactory(this._factory);

            Object temp = ConfigurationLoader.LoadObject(g, indexObj);

            Assert.IsTrue(temp is RAMDirectory, "Should have returned a RAMDirectory Instance");
            Assert.IsTrue(temp is Directory, "Should have returned a Directory Instance");

            //Add and Test the analyzer Config
            INode analyzerObj = g.CreateBlankNode();

            g.Assert(analyzerObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Analyzer"));
            g.Assert(analyzerObj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net"));

            ConfigurationLoader.AddObjectFactory(this._factory);

            temp = ConfigurationLoader.LoadObject(g, analyzerObj);
            Assert.IsTrue(temp is StandardAnalyzer, "Should have returned a StandardAnalyzer Instance");
            Assert.IsTrue(temp is Analyzer, "Should have returned an Analyzer Instance");

            //Add and Test the schema config
            INode schemaObj = g.CreateBlankNode();

            g.Assert(schemaObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Schema"));
            g.Assert(schemaObj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("VDS.RDF.Query.FullText.Schema.DefaultIndexSchema, dotNetRDF.Query.FullText"));

            ConfigurationLoader.AddObjectFactory(this._factory);

            temp = ConfigurationLoader.LoadObject(g, schemaObj);
            Assert.IsTrue(temp is DefaultIndexSchema, "Should have returned a DefaultIndexSchema Instance");
            Assert.IsTrue(temp is IFullTextIndexSchema, "Should have returned a IFullTextIndexSchema Instance");

            //Finally add the Searcher config which ties all the above together
            INode searcherObj = g.CreateBlankNode();

            g.Assert(searcherObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Searcher"));
            g.Assert(searcherObj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("VDS.RDF.Query.FullText.Search.Lucene.LuceneSearchProvider, dotNetRDF.Query.FullText"));
            g.Assert(searcherObj, g.CreateUriNode("dnr-ft:index"), indexObj);
            g.Assert(searcherObj, g.CreateUriNode("dnr-ft:analyzer"), analyzerObj);
            g.Assert(searcherObj, g.CreateUriNode("dnr-ft:schema"), schemaObj);

            TestTools.ShowGraph(g);

            temp = ConfigurationLoader.LoadObject(g, searcherObj);
            Assert.IsTrue(temp is LuceneSearchProvider, "Should have returned a LuceneSearchProvider Instance");
            Assert.IsTrue(temp is IFullTextSearchProvider, "Should have returned a IFullTextSearchProvider Instance");
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Application start.
        /// </summary>
        protected void Application_Start()
        {
            ConfigurationLoader.AddObjectFactory(new EviStorageFactoryForQueryHandler());

            AreaRegistration.RegisterAllAreas();
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            StorageWrapper.AppStart();
        }
Ejemplo n.º 5
0
        public void FullTextConfigAnalyzerLuceneStandard()
        {
            IGraph g   = this.GetBaseGraph();
            INode  obj = g.CreateBlankNode();

            g.Assert(obj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Analyzer"));
            g.Assert(obj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net"));

            TestTools.ShowGraph(g);

            ConfigurationLoader.AddObjectFactory(this._factory);

            Object temp = ConfigurationLoader.LoadObject(g, obj);

            Assert.IsTrue(temp is StandardAnalyzer, "Should have returned a StandardAnalyzer Instance");
            Assert.IsTrue(temp is Analyzer, "Should have returned an Analyzer Instance");
        }
Ejemplo n.º 6
0
        public void FullTextConfigSchemaDefault()
        {
            IGraph g   = this.GetBaseGraph();
            INode  obj = g.CreateBlankNode();

            g.Assert(obj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Schema"));
            g.Assert(obj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("VDS.RDF.Query.FullText.Schema.DefaultIndexSchema, dotNetRDF.Query.FullText"));

            TestTools.ShowGraph(g);

            ConfigurationLoader.AddObjectFactory(this._factory);

            Object temp = ConfigurationLoader.LoadObject(g, obj);

            Assert.IsTrue(temp is DefaultIndexSchema, "Should have returned a DefaultIndexSchema Instance");
            Assert.IsTrue(temp is IFullTextIndexSchema, "Should have returned a IFullTextIndexSchema Instance");
        }
Ejemplo n.º 7
0
        public void FullTextConfigIndexLuceneRAM()
        {
            IGraph g   = this.GetBaseGraph();
            INode  obj = g.CreateBlankNode();

            g.Assert(obj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Index"));
            g.Assert(obj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("Lucene.Net.Store.RAMDirectory, Lucene.Net"));

            TestTools.ShowGraph(g);

            ConfigurationLoader.AddObjectFactory(this._factory);

            Object temp = ConfigurationLoader.LoadObject(g, obj);

            Assert.IsTrue(temp is RAMDirectory, "Should have returned a RAMDirectory Instance");
            Assert.IsTrue(temp is Directory, "Should have returned a Directory Instance");
        }
Ejemplo n.º 8
0
        public void FullTextConfigIndexLuceneFS()
        {
            IGraph g   = this.GetBaseGraph();
            INode  obj = g.CreateBlankNode();

            g.Assert(obj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Index"));
            g.Assert(obj, g.CreateUriNode(UriFactory.Create(ConfigurationLoader.PropertyType)), g.CreateLiteralNode("Lucene.Net.Store.FSDirectory, Lucene.Net"));
            g.Assert(obj, g.CreateUriNode(UriFactory.Create(ConfigurationLoader.PropertyFromFile)), g.CreateLiteralNode("test"));
            System.IO.Directory.CreateDirectory("test");

            TestTools.ShowGraph(g);

            ConfigurationLoader.AddObjectFactory(this._factory);

            Object temp = ConfigurationLoader.LoadObject(g, obj);

            Assert.True(temp is FSDirectory, "Should have returned a RAMDirectory Instance");
            Assert.True(temp is Directory, "Should have returned a Directory Instance");
        }
Ejemplo n.º 9
0
        public void FullTextConfigSearchProviderLuceneWithBuildIndex()
        {
            //Add and test the Index Configuration
            IGraph g        = this.GetBaseGraph();
            INode  indexObj = g.CreateBlankNode();

            g.Assert(indexObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Index"));
            g.Assert(indexObj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("Lucene.Net.Store.RAMDirectory, Lucene.Net"));
            g.Assert(indexObj, g.CreateUriNode("dnr-ft:ensureIndex"), (true).ToLiteral(g));

            //Add and Test the analyzer Config
            INode analyzerObj = g.CreateBlankNode();

            g.Assert(analyzerObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Analyzer"));
            g.Assert(analyzerObj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net"));

            //Add and Test the schema config
            INode schemaObj = g.CreateBlankNode();

            g.Assert(schemaObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Schema"));
            g.Assert(schemaObj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("VDS.RDF.Query.FullText.Schema.DefaultIndexSchema, dotNetRDF.Query.FullText"));

            //Add the Searcher config which ties all the above together
            INode searcherObj = g.CreateBlankNode();

            g.Assert(searcherObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Searcher"));
            g.Assert(searcherObj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("VDS.RDF.Query.FullText.Search.Lucene.LuceneSearchProvider, dotNetRDF.Query.FullText"));
            g.Assert(searcherObj, g.CreateUriNode("dnr-ft:index"), indexObj);
            g.Assert(searcherObj, g.CreateUriNode("dnr-ft:analyzer"), analyzerObj);
            g.Assert(searcherObj, g.CreateUriNode("dnr-ft:schema"), schemaObj);

            //Now add the Graph we want to get auto-indexed
            INode graphObj = g.CreateBlankNode();

            g.Assert(graphObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr:Graph"));
            g.Assert(graphObj, g.CreateUriNode("dnr:fromEmbedded"), g.CreateLiteralNode("VDS.RDF.Configuration.configuration.ttl"));

            //Then add the Indexer for use by the auto-indexing
            INode indexerObj = g.CreateBlankNode();

            g.Assert(indexerObj, g.CreateUriNode("rdf:type"), g.CreateUriNode("dnr-ft:Indexer"));
            g.Assert(indexerObj, g.CreateUriNode("dnr:type"), g.CreateLiteralNode("VDS.RDF.Query.FullText.Indexing.Lucene.LuceneSubjectsIndexer, dotNetRDF.Query.FullText"));
            g.Assert(indexerObj, g.CreateUriNode("dnr-ft:index"), indexObj);
            g.Assert(indexerObj, g.CreateUriNode("dnr-ft:analyzer"), analyzerObj);
            g.Assert(indexerObj, g.CreateUriNode("dnr-ft:schema"), schemaObj);

            //Finally add the properties to indicate we want auto-indexing and what to index
            g.Assert(searcherObj, g.CreateUriNode("dnr-ft:buildIndexFor"), graphObj);
            g.Assert(searcherObj, g.CreateUriNode("dnr-ft:buildIndexWith"), indexerObj);

            TestTools.ShowGraph(g);

            ConfigurationLoader.AddObjectFactory(this._factory);
            Object temp = ConfigurationLoader.LoadObject(g, searcherObj);

            Assert.IsTrue(temp is LuceneSearchProvider, "Should have returned a LuceneSearchProvider Instance");
            Assert.IsTrue(temp is IFullTextSearchProvider, "Should have returned a IFullTextSearchProvider Instance");

            //Finally check that auto-indexing has worked OK
            IFullTextSearchProvider provider = (IFullTextSearchProvider)temp;

            try
            {
                int i = 0;
                foreach (IFullTextSearchResult result in provider.Match("http"))
                {
                    Console.WriteLine(result.Node.ToString() + " - " + result.Score.ToString());
                    i++;
                }

                Assert.IsTrue(i > 0, "Expected 1 or more result due to the auto-indexed data");
            }
            finally
            {
                provider.Dispose();
            }
        }