diff --git a/src/Umbraco.Core/Cache/HttpRequestCacheProvider.cs b/src/Umbraco.Core/Cache/HttpRequestCacheProvider.cs
index 792b5982b1..ac64e88e8a 100644
--- a/src/Umbraco.Core/Cache/HttpRequestCacheProvider.cs
+++ b/src/Umbraco.Core/Cache/HttpRequestCacheProvider.cs
@@ -146,7 +146,7 @@ namespace Umbraco.Core.Cache
#region Insert
#endregion
- private class NoopLocker : DisposableObject
+ private class NoopLocker : DisposableObjectSlim
{
protected override void DisposeResources()
{ }
diff --git a/src/Umbraco.Core/DisposableTimer.cs b/src/Umbraco.Core/DisposableTimer.cs
index c7e8874449..dab99584f3 100644
--- a/src/Umbraco.Core/DisposableTimer.cs
+++ b/src/Umbraco.Core/DisposableTimer.cs
@@ -11,8 +11,8 @@ namespace Umbraco.Core
///
/// Starts the timer and invokes a callback upon disposal. Provides a simple way of timing an operation by wrapping it in a using (C#) statement.
///
- public class DisposableTimer : DisposableObject
- {
+ public class DisposableTimer : DisposableObjectSlim
+ {
private readonly ILogger _logger;
private readonly LogType? _logType;
private readonly IProfiler _profiler;
@@ -209,13 +209,13 @@ namespace Umbraco.Core
loggerType,
startMessage(),
completeMessage());
- }
+ }
#endregion
-
- ///
- /// Handles the disposal of resources. Derived from abstract class which handles common required locking logic.
- ///
- protected override void DisposeResources()
+
+ ///
+ /// Handles the disposal of resources. Derived from abstract class which handles common required locking logic.
+ ///
+ protected override void DisposeResources()
{
if (_profiler != null)
{
diff --git a/src/Umbraco.Core/Events/EventMessages.cs b/src/Umbraco.Core/Events/EventMessages.cs
index 2900f3d471..6348fc0444 100644
--- a/src/Umbraco.Core/Events/EventMessages.cs
+++ b/src/Umbraco.Core/Events/EventMessages.cs
@@ -5,7 +5,7 @@ namespace Umbraco.Core.Events
///
/// Event messages collection
///
- public sealed class EventMessages : DisposableObject
+ public sealed class EventMessages : DisposableObjectSlim
{
private readonly List _msgs = new List();
diff --git a/src/Umbraco.Core/HashGenerator.cs b/src/Umbraco.Core/HashGenerator.cs
index 7306dc9045..bbb06987f2 100644
--- a/src/Umbraco.Core/HashGenerator.cs
+++ b/src/Umbraco.Core/HashGenerator.cs
@@ -14,7 +14,7 @@ namespace Umbraco.Core
/// This will use the crypto libs to generate the hash and will try to ensure that
/// strings, etc... are not re-allocated so it's not consuming much memory.
///
- internal class HashGenerator : DisposableObject
+ internal class HashGenerator : DisposableObjectSlim
{
public HashGenerator()
{
diff --git a/src/Umbraco.Core/Manifest/ManifestWatcher.cs b/src/Umbraco.Core/Manifest/ManifestWatcher.cs
index 24dff148be..e18ec068b6 100644
--- a/src/Umbraco.Core/Manifest/ManifestWatcher.cs
+++ b/src/Umbraco.Core/Manifest/ManifestWatcher.cs
@@ -6,7 +6,7 @@ using Umbraco.Core.Logging;
namespace Umbraco.Core.Manifest
{
- internal class ManifestWatcher : DisposableObject
+ internal class ManifestWatcher : DisposableObjectSlim
{
private readonly ILogger _logger;
private readonly List _fws = new List();
diff --git a/src/Umbraco.Core/Persistence/DefaultDatabaseFactory.cs b/src/Umbraco.Core/Persistence/DefaultDatabaseFactory.cs
index c27147895c..46c7dae1d9 100644
--- a/src/Umbraco.Core/Persistence/DefaultDatabaseFactory.cs
+++ b/src/Umbraco.Core/Persistence/DefaultDatabaseFactory.cs
@@ -12,7 +12,7 @@ namespace Umbraco.Core.Persistence
/// it will create one per context, otherwise it will be a global singleton object which is NOT thread safe
/// since we need (at least) a new instance of the database object per thread.
///
- internal class DefaultDatabaseFactory : DisposableObject, IDatabaseFactory2
+ internal class DefaultDatabaseFactory : DisposableObjectSlim, IDatabaseFactory2
{
private readonly string _connectionStringName;
private readonly ILogger _logger;
diff --git a/src/Umbraco.Core/Persistence/Repositories/EntityRepository.cs b/src/Umbraco.Core/Persistence/Repositories/EntityRepository.cs
index 8f3b65595b..40d35d2fee 100644
--- a/src/Umbraco.Core/Persistence/Repositories/EntityRepository.cs
+++ b/src/Umbraco.Core/Persistence/Repositories/EntityRepository.cs
@@ -18,7 +18,7 @@ namespace Umbraco.Core.Persistence.Repositories
///
/// This is limited to objects that are based in the umbracoNode-table.
///
- internal class EntityRepository : DisposableObject, IEntityRepository
+ internal class EntityRepository : DisposableObjectSlim, IEntityRepository
{
private readonly IDatabaseUnitOfWork _work;
diff --git a/src/Umbraco.Core/Persistence/Repositories/FileRepository.cs b/src/Umbraco.Core/Persistence/Repositories/FileRepository.cs
index 03a8b7e824..32b486f3b5 100644
--- a/src/Umbraco.Core/Persistence/Repositories/FileRepository.cs
+++ b/src/Umbraco.Core/Persistence/Repositories/FileRepository.cs
@@ -9,7 +9,7 @@ using Umbraco.Core.Persistence.UnitOfWork;
namespace Umbraco.Core.Persistence.Repositories
{
- internal abstract class FileRepository : DisposableObject, IUnitOfWorkRepository, IRepository
+ internal abstract class FileRepository : DisposableObjectSlim, IUnitOfWorkRepository, IRepository
where TEntity : IFile
{
private IUnitOfWork _work;
diff --git a/src/Umbraco.Core/Persistence/Repositories/RepositoryBase.cs b/src/Umbraco.Core/Persistence/Repositories/RepositoryBase.cs
index f514ee80df..7a9f854679 100644
--- a/src/Umbraco.Core/Persistence/Repositories/RepositoryBase.cs
+++ b/src/Umbraco.Core/Persistence/Repositories/RepositoryBase.cs
@@ -10,7 +10,7 @@ using Umbraco.Core.Scoping;
namespace Umbraco.Core.Persistence.Repositories
{
- internal abstract class RepositoryBase : DisposableObject
+ internal abstract class RepositoryBase : DisposableObjectSlim
{
private readonly IScopeUnitOfWork _work;
private readonly CacheHelper _globalCache;
diff --git a/src/Umbraco.Core/Persistence/UnitOfWork/ScopeUnitOfWork.cs b/src/Umbraco.Core/Persistence/UnitOfWork/ScopeUnitOfWork.cs
index f8d168cdaa..8d15772fc3 100644
--- a/src/Umbraco.Core/Persistence/UnitOfWork/ScopeUnitOfWork.cs
+++ b/src/Umbraco.Core/Persistence/UnitOfWork/ScopeUnitOfWork.cs
@@ -10,7 +10,7 @@ namespace Umbraco.Core.Persistence.UnitOfWork
///
/// Represents a scoped unit of work.
///
- internal class ScopeUnitOfWork : DisposableObject, IScopeUnitOfWork
+ internal class ScopeUnitOfWork : DisposableObjectSlim, IScopeUnitOfWork
{
private readonly Queue _operations = new Queue();
private readonly IsolationLevel _isolationLevel;
diff --git a/src/Umbraco.Core/Security/BackOfficeUserStore.cs b/src/Umbraco.Core/Security/BackOfficeUserStore.cs
index 26c5393bfc..9db8347040 100644
--- a/src/Umbraco.Core/Security/BackOfficeUserStore.cs
+++ b/src/Umbraco.Core/Security/BackOfficeUserStore.cs
@@ -18,7 +18,7 @@ using Task = System.Threading.Tasks.Task;
namespace Umbraco.Core.Security
{
- public class BackOfficeUserStore : DisposableObject,
+ public class BackOfficeUserStore : DisposableObjectSlim,
IUserStore,
IUserPasswordStore,
IUserEmailStore,
@@ -58,7 +58,7 @@ namespace Umbraco.Core.Security
}
///
- /// Handles the disposal of resources. Derived from abstract class which handles common required locking logic.
+ /// Handles the disposal of resources. Derived from abstract class which handles common required locking logic.
///
protected override void DisposeResources()
{
diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj
index 345ee8da8d..00ff785891 100644
--- a/src/Umbraco.Core/Umbraco.Core.csproj
+++ b/src/Umbraco.Core/Umbraco.Core.csproj
@@ -348,6 +348,7 @@
+
diff --git a/src/Umbraco.Web/Scheduling/LatchedBackgroundTaskBase.cs b/src/Umbraco.Web/Scheduling/LatchedBackgroundTaskBase.cs
index e0cda08e47..b3a23d8081 100644
--- a/src/Umbraco.Web/Scheduling/LatchedBackgroundTaskBase.cs
+++ b/src/Umbraco.Web/Scheduling/LatchedBackgroundTaskBase.cs
@@ -12,7 +12,7 @@ namespace Umbraco.Web.Scheduling
/// depending on whether the task is implemented as a sync or async method, and then
/// optionnally overriding RunsOnShutdown, to indicate whether the latched task should run
/// immediately on shutdown, or just be abandonned (default).
- public abstract class LatchedBackgroundTaskBase : DisposableObject, ILatchedBackgroundTask
+ public abstract class LatchedBackgroundTaskBase : DisposableObjectSlim, ILatchedBackgroundTask
{
private TaskCompletionSource _latch;
diff --git a/src/Umbraco.Web/Security/WebSecurity.cs b/src/Umbraco.Web/Security/WebSecurity.cs
index 460ca536eb..dd7e757c8d 100644
--- a/src/Umbraco.Web/Security/WebSecurity.cs
+++ b/src/Umbraco.Web/Security/WebSecurity.cs
@@ -23,7 +23,7 @@ namespace Umbraco.Web.Security
///
/// A utility class used for dealing with USER security in Umbraco
///
- public class WebSecurity : DisposableObject
+ public class WebSecurity : DisposableObjectSlim
{
private HttpContextBase _httpContext;
private ApplicationContext _applicationContext;
diff --git a/src/Umbraco.Web/UmbracoContext.cs b/src/Umbraco.Web/UmbracoContext.cs
index dbb165a526..3532575f38 100644
--- a/src/Umbraco.Web/UmbracoContext.cs
+++ b/src/Umbraco.Web/UmbracoContext.cs
@@ -20,7 +20,7 @@ namespace Umbraco.Web
///
/// Class that encapsulates Umbraco information of a specific HTTP request
///
- public class UmbracoContext : DisposableObject, IDisposeOnRequestEnd
+ public class UmbracoContext : DisposableObjectSlim, IDisposeOnRequestEnd
{
internal const string HttpContextItemName = "Umbraco.Web.UmbracoContext";
private static readonly object Locker = new object();
diff --git a/src/umbraco.cms/businesslogic/Packager/Repositories/Repository.cs b/src/umbraco.cms/businesslogic/Packager/Repositories/Repository.cs
index 28cc814a02..8609504313 100644
--- a/src/umbraco.cms/businesslogic/Packager/Repositories/Repository.cs
+++ b/src/umbraco.cms/businesslogic/Packager/Repositories/Repository.cs
@@ -14,7 +14,7 @@ using Umbraco.Core.IO;
namespace umbraco.cms.businesslogic.packager.repositories
{
[Obsolete("This should not be used and will be removed in future Umbraco versions")]
- public class Repository : DisposableObject
+ public class Repository : DisposableObjectSlim
{
public string Guid { get; private set; }
@@ -289,7 +289,7 @@ namespace umbraco.cms.businesslogic.packager.repositories
}
///
- /// Handles the disposal of resources. Derived from abstract class which handles common required locking logic.
+ /// Handles the disposal of resources. Derived from abstract class which handles common required locking logic.
///
protected override void DisposeResources()
{