コード例 #1
0
        public void TestToReadOnlyListAdapter()
        {
            List <Mammal> m = new List <Mammal>()
            {
                new Mammal("John"), new Mammal("Paul")
            };
            var a = new ReadOnlyListOnIList <Animal, Mammal>(m);

            Assert.That(a[0].Name, Is.EqualTo("John"));
        }
コード例 #2
0
ファイル: ServiceHost.cs プロジェクト: macdarwin/ck-desktop
        public ServiceHost(CatchExceptionGeneration catchMode)
        {
            _eventSender          = this;
            _catchMode            = catchMode;
            _proxies              = new Dictionary <Type, ServiceProxyBase>();
            _currentDepth         = 0;
            _defaultConfiguration = new SimpleServiceHostConfiguration();
            _configurations       = new List <IServiceHostConfiguration>();
            _configurations.Add(_defaultConfiguration);

            _untrackedErrors = new List <ILogErrorCaught>();
            UntrackedErrors  = new ReadOnlyListOnIList <ILogErrorCaught>(_untrackedErrors);
        }
コード例 #3
0
        public PluginDiscoverer()
        {
            _allAssemblies                   = new List <PluginAssemblyInfo>();
            _oldPlugins                      = new List <PluginInfo>();
            _plugins                         = new List <PluginInfo>();
            _pluginOrServiceAssemblies       = new List <PluginAssemblyInfo>();
            _allServices                     = new List <ServiceInfo>();
            _allPlugins                      = new List <PluginInfo>();
            _allEditors                      = new List <PluginConfigAccessorInfo>();
            _services                        = new List <ServiceInfo>();
            _notFoundServices                = new List <ServiceInfo>();
            _pluginsById                     = new Dictionary <Guid, PluginInfo>();
            _servicesByAssemblyQualifiedName = new Dictionary <string, ServiceInfo>();

            AllAssemblies        = new ReadOnlyListOnIList <PluginAssemblyInfo>(_allAssemblies);
            OldVersionnedPlugins = new ReadOnlyListOnIList <PluginInfo>(_oldPlugins);
            Plugins                   = new ReadOnlyListOnIList <PluginInfo>(_plugins);
            NotFoundServices          = new ReadOnlyListOnIList <ServiceInfo>(_notFoundServices);
            AllPlugins                = new ReadOnlyListOnIList <PluginInfo>(_allPlugins);
            AllServices               = new ReadOnlyListOnIList <ServiceInfo>(_allServices);
            Services                  = new ReadOnlyListOnIList <ServiceInfo>(_services);
            PluginOrServiceAssemblies = new ReadOnlyListOnIList <PluginAssemblyInfo>(_pluginOrServiceAssemblies);
        }
コード例 #4
0
            public Merger(PluginDiscoverer discoverer)
            {
                _discoverer        = discoverer;
                _hasBeenDiscovered = new HashSet <DiscoveredInfo>();

                _newAssemblies     = new List <PluginAssemblyInfo>();
                _changedAssemblies = new List <PluginAssemblyInfo>();
                _deletedAssemblies = new List <PluginAssemblyInfo>();

                _newPlugins     = new List <PluginInfo>();
                _changedPlugins = new List <PluginInfo>();
                _deletedPlugins = new List <PluginInfo>();

                _newEditors     = new List <PluginConfigAccessorInfo>();
                _changedEditors = new List <PluginConfigAccessorInfo>();
                _deletedEditors = new List <PluginConfigAccessorInfo>();

                _newOldPlugins     = new List <PluginInfo>();
                _deletedOldPlugins = new List <PluginInfo>();

                _newMissingAssemblies     = new List <string>();
                _deletedMissingAssemblies = new List <string>();

                _newServices     = new List <ServiceInfo>();
                _changedServices = new List <ServiceInfo>();
                _deletedServices = new List <ServiceInfo>();

                NewAssemblies            = new ReadOnlyListOnIList <PluginAssemblyInfo>(_newAssemblies);
                ChangedAssemblies        = new ReadOnlyListOnIList <PluginAssemblyInfo>(_changedAssemblies);
                DeletedAssemblies        = new ReadOnlyListOnIList <PluginAssemblyInfo>(_deletedAssemblies);
                NewPlugins               = new ReadOnlyListOnIList <PluginInfo>(_newPlugins);
                ChangedPlugins           = new ReadOnlyListOnIList <PluginInfo>(_changedPlugins);
                DeletedPlugins           = new ReadOnlyListOnIList <PluginInfo>(_deletedPlugins);
                NewEditors               = new ReadOnlyListOnIList <PluginConfigAccessorInfo>(_newEditors);
                ChangedEditors           = new ReadOnlyListOnIList <PluginConfigAccessorInfo>(_changedEditors);
                DeletedEditors           = new ReadOnlyListOnIList <PluginConfigAccessorInfo>(_deletedEditors);
                NewServices              = new ReadOnlyListOnIList <ServiceInfo>(_newServices);
                ChangedServices          = new ReadOnlyListOnIList <ServiceInfo>(_changedServices);
                DeletedServices          = new ReadOnlyListOnIList <ServiceInfo>(_deletedServices);
                NewOldPlugins            = new ReadOnlyListOnIList <PluginInfo>(_newOldPlugins);
                DeletedOldPlugins        = new ReadOnlyListOnIList <PluginInfo>(_deletedOldPlugins);
                NewAssemblies            = new ReadOnlyListOnIList <PluginAssemblyInfo>(_newAssemblies);
                ChangedAssemblies        = new ReadOnlyListOnIList <PluginAssemblyInfo>(_changedAssemblies);
                DeletedAssemblies        = new ReadOnlyListOnIList <PluginAssemblyInfo>(_deletedAssemblies);
                NewPlugins               = new ReadOnlyListOnIList <PluginInfo>(_newPlugins);
                ChangedPlugins           = new ReadOnlyListOnIList <PluginInfo>(_changedPlugins);
                DeletedPlugins           = new ReadOnlyListOnIList <PluginInfo>(_deletedPlugins);
                NewEditors               = new ReadOnlyListOnIList <PluginConfigAccessorInfo>(_newEditors);
                ChangedEditors           = new ReadOnlyListOnIList <PluginConfigAccessorInfo>(_changedEditors);
                DeletedEditors           = new ReadOnlyListOnIList <PluginConfigAccessorInfo>(_deletedEditors);
                NewServices              = new ReadOnlyListOnIList <ServiceInfo>(_newServices);
                ChangedServices          = new ReadOnlyListOnIList <ServiceInfo>(_changedServices);
                DeletedServices          = new ReadOnlyListOnIList <ServiceInfo>(_deletedServices);
                NewOldPlugins            = new ReadOnlyListOnIList <PluginInfo>(_newOldPlugins);
                DeletedOldPlugins        = new ReadOnlyListOnIList <PluginInfo>(_deletedOldPlugins);
                NewMissingAssemblies     = new ReadOnlyListOnIList <string>(_newMissingAssemblies);
                DeletedMissingAssemblies = new ReadOnlyListOnIList <string>(_deletedMissingAssemblies);

                _dicAssemblies = new Dictionary <string, PluginAssemblyInfo>();
                foreach (PluginAssemblyInfo item in _discoverer._allAssemblies)
                {
                    _dicAssemblies.Add(item.AssemblyFileName, item);
                }

                _dicEditors = new Dictionary <EditorKey, PluginConfigAccessorInfo>();
                _dicPlugins = new Dictionary <KeyValuePair <Guid, Version>, PluginInfo>();
                foreach (PluginInfo item in _discoverer._allPlugins)
                {
                    foreach (PluginConfigAccessorInfo editor in item.EditorsInfo)
                    {
                        _dicEditors.Add(new EditorKey(editor.Plugin.PluginId, editor.Source), editor);
                    }
                    _dicPlugins.Add(new KeyValuePair <Guid, Version>(item.PluginId, item.Version), item);
                }
                foreach (PluginInfo item in _discoverer._oldPlugins)
                {
                    foreach (PluginConfigAccessorInfo editor in item.EditorsInfo)
                    {
                        _dicEditors.Add(new EditorKey(editor.Plugin.PluginId, editor.Source), editor);
                    }
                    _dicPlugins.Add(new KeyValuePair <Guid, Version>(item.PluginId, item.Version), item);
                }

                _dicServices = new Dictionary <string, ServiceInfo>();
                Debug.Assert(_discoverer._allServices.Intersect(_discoverer._notFoundServices).Count() == _discoverer._notFoundServices.Count,
                             "Not found services are includes into the all services collection.");
                foreach (ServiceInfo service in _discoverer._allServices)
                {
                    _dicServices.Add(service.AssemblyQualifiedName, service);
                }
            }