/// <summary>
 /// Handles the disposal of resources. Derived from abstract class <see cref="DisposableObject"/> which handles common required locking logic.
 /// </summary>
 protected override void DisposeResources()
 {
     Security.IfNotNull(x => x.DisposeIfDisposable());
     Settings.IfNotNull(x => x.DisposeIfDisposable());
     Hive.IfNotNull(x => x.DisposeIfDisposable());
     FrameworkContext.IfNotNull(x => x.Dispose());
 }