示例#1
0
        /// <summary>
        /// Updates deferred plugins by removing <paramref name="loadedPlugin"/> from the list of their remaining
        /// dependecies.
        /// </summary>
        /// <param name="loadedPlugin">Loaded plugin name.</param>
        private void HandleRegistredComponent(Object sender, RegisteredComponentEventArgs e)
        {
            // Iterate over deferred plugins and remove |loadedPlugin| from the list of dependencies.
            foreach (var info in deferredPlugins.Values)
            {
                info.RemainingComponentDeps.Remove(e.ComponentDefinition.Name);
            }

            LoadDeferredPluginsWithNoDeps();
        }
        internal void HandleLocalRegisteredComponent(object sender, RegisteredComponentEventArgs e)
        {
            lock (ignoredComponentRegistrations)
            {
                if (ignoredComponentRegistrations.Remove(e.ComponentDefinition.Guid))
                    return;
            }

            foreach (IRemoteServer server in ServerSync.RemoteServers)
                server.Connection["serverSync.registerComponentDefinition"]((ComponentDef)e.ComponentDefinition);
        }
        /// <summary>
        /// Updates deferred plugins by removing <paramref name="loadedPlugin"/> from the list of their remaining
        /// dependecies.
        /// </summary>
        /// <param name="loadedPlugin">Loaded plugin name.</param>
        private void HandleRegistredComponent(Object sender, RegisteredComponentEventArgs e)
        {
            // Iterate over deferred plugins and remove |loadedPlugin| from the list of dependencies.
            foreach (var info in deferredPlugins.Values)
                info.RemainingComponentDeps.Remove(e.ComponentDefinition.Name);

            LoadDeferredPluginsWithNoDeps();
        }