Пример #1
0
        public SecondlifeWikiLibraryData(IDocumentationProvider documentationProvider, IEnumerable <string> subsets)
        {
            _client = new CachedWebDownloader(WebCacheFileDirectory);

            _subsets = subsets.ToList();


            Log.WriteLine("============================");
            Log.WriteLine("Starting scrape of " + SecondlifeWikiDomain + " ... ");
            Log.WriteLine("============================");

            foreach (var lslLibraryConstantSignature in GetLSLConstants())
            {
                lslLibraryConstantSignature.DocumentationString =
                    documentationProvider.DocumentConstant(lslLibraryConstantSignature);

                _constants.Add(lslLibraryConstantSignature.Name, lslLibraryConstantSignature);
            }

            foreach (var lslLibraryFunctionSignature in GetLSLFunctions())
            {
                lslLibraryFunctionSignature.DocumentationString =
                    documentationProvider.DocumentFunction(lslLibraryFunctionSignature);

                if (_functions.ContainsKey(lslLibraryFunctionSignature.Name))
                {
                    _functions[lslLibraryFunctionSignature.Name].Add(lslLibraryFunctionSignature);
                }
                else
                {
                    _functions.Add(lslLibraryFunctionSignature.Name,
                                   new GenericArray <LSLLibraryFunctionSignature> {
                        lslLibraryFunctionSignature
                    });
                }
            }


            foreach (var lslLibraryEventSignature in GetLSLEvents())
            {
                lslLibraryEventSignature.DocumentationString =
                    documentationProvider.DocumentEvent(lslLibraryEventSignature);

                _events.Add(lslLibraryEventSignature.Name, lslLibraryEventSignature);
            }


            Log.WriteLine("============================");
            Log.WriteLine("Finished scrape of " + SecondlifeWikiDomain);
            Log.WriteLine("============================");
        }