using System; using System.Collections.Generic; using System.Threading; using Umbraco.Core; using Umbraco.Core.Media; using Umbraco.Web.Mvc; using Umbraco.Web.Routing; using Umbraco.Web.Trees; using Umbraco.Web.WebApi; using umbraco; using umbraco.interfaces; namespace Umbraco.Web { /// /// Extension methods for the PluginTypeResolver /// public static class PluginManagerExtensions { /// /// Returns all available TreeApiController's in application that are attribute with TreeAttribute /// /// /// internal static IEnumerable ResolveAttributedTreeControllers(this PluginManager resolver) { return resolver.ResolveTypesWithAttribute(); } internal static IEnumerable ResolveSurfaceControllers(this PluginManager resolver) { return resolver.ResolveTypes(); } internal static IEnumerable ResolveUmbracoApiControllers(this PluginManager resolver) { return resolver.ResolveTypes(); } /// /// Returns all available ITrees in application /// /// /// internal static IEnumerable ResolveTrees(this PluginManager resolver) { return resolver.ResolveTypes(); } /// /// Returns all classes attributed with XsltExtensionAttribute attribute /// /// /// internal static IEnumerable ResolveXsltExtensions(this PluginManager resolver) { return resolver.ResolveAttributedTypes(); } /// /// Returns all IThumbnailProvider classes /// /// /// internal static IEnumerable ResolveThumbnailProviders(this PluginManager resolver) { return resolver.ResolveTypes(); } /// /// Returns all IImageUrlProvider classes /// /// /// internal static IEnumerable ResolveImageUrlProviders(this PluginManager resolver) { return resolver.ResolveTypes(); } } }