aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Common/Kernel/IApplicationHost.cs
diff options
context:
space:
mode:
authorLukePulverenti <luke.pulverenti@gmail.com>2013-02-22 22:49:00 -0500
committerLukePulverenti <luke.pulverenti@gmail.com>2013-02-22 22:49:00 -0500
commitc165f37bb96ad40d863a436795c21b9085f3fde9 (patch)
tree47d22d429855776dc70609992ee27dfabc612bfe /MediaBrowser.Common/Kernel/IApplicationHost.cs
parent57cb08085d61682719c6c2804c37aa6aae6fd470 (diff)
more dependancy injection. still just beginning
Diffstat (limited to 'MediaBrowser.Common/Kernel/IApplicationHost.cs')
-rw-r--r--MediaBrowser.Common/Kernel/IApplicationHost.cs21
1 files changed, 21 insertions, 0 deletions
diff --git a/MediaBrowser.Common/Kernel/IApplicationHost.cs b/MediaBrowser.Common/Kernel/IApplicationHost.cs
index 63c63eb3d..d2b1ab7a2 100644
--- a/MediaBrowser.Common/Kernel/IApplicationHost.cs
+++ b/MediaBrowser.Common/Kernel/IApplicationHost.cs
@@ -43,5 +43,26 @@ namespace MediaBrowser.Common.Kernel
/// </summary>
/// <returns>Task.</returns>
Task UpdateApplication(CancellationToken cancellationToken, IProgress<double> progress);
+
+ /// <summary>
+ /// Creates an instance of type and resolves all constructor dependancies
+ /// </summary>
+ /// <param name="type">The type.</param>
+ /// <returns>System.Object.</returns>
+ object CreateInstance(Type type);
+
+ /// <summary>
+ /// Registers a service that other classes can use as a dependancy.
+ /// </summary>
+ /// <typeparam name="T"></typeparam>
+ /// <param name="obj">The obj.</param>
+ void Register<T>(T obj) where T : class;
+
+ /// <summary>
+ /// Resolves this instance.
+ /// </summary>
+ /// <typeparam name="T"></typeparam>
+ /// <returns>``0.</returns>
+ T Resolve<T>() where T : class;
}
}