Пример #1
0
 private void DteEventsOnOnBeginShutdown()
 {
     if (_extensionPointsConfiguration != null)
     {
         ExtensionPointsConfigurationFileReader.WriteConfiguration(_extensionPointsConfiguration);
         //After writing the extension points configuration file, the index state file on disk is out of date; so it needs to be rewritten
         IndexStateManager.SaveCurrentIndexState();
     }
     //TODO - kill file processing threads
 }
Пример #2
0
        private void RegisterExtensionPoints()
        {
            var extensionPointsRepository = ExtensionPointsRepository.Instance;

            // JZ: SrcMLService Integration
            extensionPointsRepository.RegisterParserImplementation(new List <string> {
                ".cs"
            }, new SrcMLCSharpParser());
            extensionPointsRepository.RegisterParserImplementation(new List <string> {
                ".h", ".cpp", ".cxx", ".c"
            }, new SrcMLCppParser(srcMLService));
            ////extensionPointsRepository.RegisterParserImplementation(new List<string> { ".cs" }, new SrcMLCSharpParser(_srcMLArchive));
            ////extensionPointsRepository.RegisterParserImplementation(new List<string> { ".h", ".cpp", ".cxx", ".c" }, new SrcMLCppParser(_srcMLArchive));
            // JZ: End of code changes
            extensionPointsRepository.RegisterParserImplementation(new List <string> {
                ".xaml"
            }, new XAMLFileParser());
            //extensionPointsRepository.RegisterParserImplementation(new List<string> { ".txt" },
            // new TextFileParser());

            extensionPointsRepository.RegisterWordSplitterImplementation(new WordSplitter());
            extensionPointsRepository.RegisterResultsReordererImplementation(new SortByScoreResultsReorderer());
            extensionPointsRepository.RegisterQueryWeightsSupplierImplementation(new QueryWeightsSupplier());
            extensionPointsRepository.RegisterQueryRewriterImplementation(new DefaultQueryRewriter());
            extensionPointsRepository.RegisterIndexFilterManagerImplementation(new IndexFilterManager());


            var sandoOptions = ServiceLocator.Resolve <ISandoOptionsProvider>().GetSandoOptions();

            var loggerPath = Path.Combine(sandoOptions.ExtensionPointsPluginDirectoryPath, "ExtensionPointsLogger.log");
            var logger     = FileLogger.CreateFileLogger("ExtensionPointsLogger", loggerPath);

            _extensionPointsConfiguration = ExtensionPointsConfigurationFileReader.ReadAndValidate(logger);

            if (_extensionPointsConfiguration != null)
            {
                _extensionPointsConfiguration.PluginDirectoryPath = sandoOptions.ExtensionPointsPluginDirectoryPath;
                ExtensionPointsConfigurationAnalyzer.FindAndRegisterValidExtensionPoints(_extensionPointsConfiguration, logger);
            }

            var csParser = extensionPointsRepository.GetParserImplementation(".cs") as SrcMLCSharpParser;
            // JZ: SrcMLService Integration
            ////if(csParser != null) {
            ////    csParser.Archive = _srcMLArchive;
            ////}
            // End of code changes
            var cppParser = extensionPointsRepository.GetParserImplementation(".cpp") as SrcMLCppParser;
            // JZ: SrcMLService Integration
            ////if(cppParser != null) {
            ////    cppParser.Archive = _srcMLArchive;
            ////}
            // End of code changes
        }