From 473337ea33a4abe9c56e5355979b7222d46a8729 Mon Sep 17 00:00:00 2001 From: Jass Bagga Date: Wed, 4 Jan 2017 17:32:20 -0800 Subject: [PATCH] CompositeChangeToken moved to aspnet/Common Microsoft.Extensions.Primitives Addresses Common Issue aspnet/Common#163 --- .../Internal/CompositeChangeToken.cs | 85 ------------------- 1 file changed, 85 deletions(-) delete mode 100644 src/Microsoft.AspNetCore.Mvc.Core/Internal/CompositeChangeToken.cs diff --git a/src/Microsoft.AspNetCore.Mvc.Core/Internal/CompositeChangeToken.cs b/src/Microsoft.AspNetCore.Mvc.Core/Internal/CompositeChangeToken.cs deleted file mode 100644 index 6c24d95720..0000000000 --- a/src/Microsoft.AspNetCore.Mvc.Core/Internal/CompositeChangeToken.cs +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.Collections.Generic; -using Microsoft.Extensions.Primitives; - -namespace Microsoft.AspNetCore.Mvc.Internal -{ - internal class CompositeChangeToken : IChangeToken - { - public CompositeChangeToken(IList changeTokens) - { - if (changeTokens == null) - { - throw new ArgumentNullException(nameof(changeTokens)); - } - - ChangeTokens = changeTokens; - } - - public IList ChangeTokens { get; } - - public IDisposable RegisterChangeCallback(Action callback, object state) - { - var disposables = new IDisposable[ChangeTokens.Count]; - for (var i = 0; i < ChangeTokens.Count; i++) - { - var disposable = ChangeTokens[i].RegisterChangeCallback(callback, state); - disposables[i] = disposable; - } - return new CompositeDisposable(disposables); - } - - public bool HasChanged - { - get - { - for (var i = 0; i < ChangeTokens.Count; i++) - { - if (ChangeTokens[i].HasChanged) - { - return true; - } - } - - return false; - } - } - - public bool ActiveChangeCallbacks - { - get - { - for (var i = 0; i < ChangeTokens.Count; i++) - { - if (ChangeTokens[i].ActiveChangeCallbacks) - { - return true; - } - } - - return false; - } - } - - private class CompositeDisposable : IDisposable - { - private readonly IDisposable[] _disposables; - - public CompositeDisposable(IDisposable[] disposables) - { - _disposables = disposables; - } - - public void Dispose() - { - for (var i = 0; i < _disposables.Length; i++) - { - _disposables[i].Dispose(); - } - } - } - } -}