using Microsoft.Extensions.Logging; using Umbraco.Cms.Core.Composing; namespace Umbraco.Cms.Core.DependencyInjection; /// /// Extension methods for /// public static partial class UmbracoBuilderExtensions { /// /// Adds Umbraco composers for plugins /// public static IUmbracoBuilder AddComposers(this IUmbracoBuilder builder) { IEnumerable composerTypes = builder.TypeLoader.GetTypes(); IEnumerable enableDisable = builder.TypeLoader.GetAssemblyAttributes(typeof(EnableComposerAttribute), typeof(DisableComposerAttribute)); new ComposerGraph(builder, composerTypes, enableDisable, builder.BuilderLoggerFactory.CreateLogger()).Compose(); return builder; } }