Esempio n. 1
0
        // Application plugins contain a specific application's implementations
        // and are composed only from other application specific plugins.
        private void ComposeApplicationPlugins(ITypeResolver typeResolver)
        {
            var allAppPluginTypes = GetPluginTypes(
                PluginTypes.ApplicationPlugin,
                PluginTypes.HostPlugin).ToArray();

            foreach (var plugin in AppPlugins)
            {
                typeResolver.ComposePlugin(plugin, allAppPluginTypes);
            }

            typeResolver.ComposePlugin(HostPlugin, allAppPluginTypes);
        }
Esempio n. 2
0
        //--------------------------------------------------
        //--Container Composition
        //--------------------------------------------------

        // Core plugins are composed from all other plugin types since they implement
        // reusable cross-cutting concerns.
        private void ComposeCorePlugins(ITypeResolver typeResolver)
        {
            BootstrapLogger.Add(LogLevel.Debug,
                                "Settings Plugin Module Properties Referencing Concrete Implementations.");

            var allPluginTypes = GetPluginTypes().ToArray();

            foreach (var plugin in CorePlugins)
            {
                typeResolver.ComposePlugin(plugin, allPluginTypes);
            }
        }
Esempio n. 3
0
 public void ComposePlugin(IPlugin plugin, IEnumerable <Type> fromPluginTypes)
 {
     _baseResolver.ComposePlugin(plugin, fromPluginTypes);
 }