aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Common.Implementations/BaseApplicationHost.cs')
-rw-r--r--MediaBrowser.Common.Implementations/BaseApplicationHost.cs16
1 files changed, 13 insertions, 3 deletions
diff --git a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
index 4c1ce8b99..a0c1a2f0f 100644
--- a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
+++ b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
@@ -408,6 +408,18 @@ namespace MediaBrowser.Common.Implementations
}
/// <summary>
+ /// Gets the export types.
+ /// </summary>
+ /// <typeparam name="T"></typeparam>
+ /// <returns>IEnumerable{Type}.</returns>
+ public IEnumerable<Type> GetExportTypes<T>()
+ {
+ var currentType = typeof(T);
+
+ return AllConcreteTypes.AsParallel().Where(currentType.IsAssignableFrom);
+ }
+
+ /// <summary>
/// Gets the exports.
/// </summary>
/// <typeparam name="T"></typeparam>
@@ -415,9 +427,7 @@ namespace MediaBrowser.Common.Implementations
/// <returns>IEnumerable{``0}.</returns>
public IEnumerable<T> GetExports<T>(bool manageLiftime = true)
{
- var currentType = typeof(T);
-
- var parts = AllConcreteTypes.AsParallel().Where(currentType.IsAssignableFrom).Select(CreateInstance).Cast<T>().ToArray();
+ var parts = GetExportTypes<T>().Select(CreateInstance).Cast<T>().ToArray();
if (manageLiftime)
{