Skip to content

Commit 8fe46cc

Browse files
authored
Get rido of unused IChangeNotifier functionality (#348)
1 parent 85c954a commit 8fe46cc

File tree

3 files changed

+0
-110
lines changed

3 files changed

+0
-110
lines changed

Diff for: Orm/Xtensive.Orm/Collections/ChangeNotifierEventArgs.cs

-33
This file was deleted.

Diff for: Orm/Xtensive.Orm/Collections/Interfaces/IChangeNotifier.cs

-27
This file was deleted.

Diff for: Orm/Xtensive.Orm/Orm/Model/NodeCollection.cs

-50
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,6 @@ namespace Xtensive.Orm.Model
1818
public class NodeCollection<TNode> : CollectionBaseSlim<TNode>
1919
where TNode: Node
2020
{
21-
[NonSerialized, DebuggerBrowsable(DebuggerBrowsableState.Never)]
22-
private EventHandler<ChangeNotifierEventArgs> itemChangedHandler;
23-
24-
[NonSerialized, DebuggerBrowsable(DebuggerBrowsableState.Never)]
25-
private EventHandler<ChangeNotifierEventArgs> itemChangingHandler;
26-
2721
protected IDictionary<string, TNode> NameIndex;
2822

2923
/// <summary>
@@ -63,7 +57,6 @@ public override void Add(TNode item)
6357
try {
6458
base.Add(item);
6559
NameIndex.Add(item.Name, item);
66-
TrySubscribe(item);
6760
}
6861
catch (ArgumentException e){
6962
throw new InvalidOperationException(
@@ -88,7 +81,6 @@ public override void AddRange(IEnumerable<TNode> nodes)
8881
public override bool Remove(TNode item)
8982
{
9083
if (base.Remove(item)) {
91-
TryUnsubscribe(item);
9284
NameIndex.Remove(item.Name);
9385
return true;
9486
}
@@ -99,9 +91,6 @@ public override bool Remove(TNode item)
9991
public override void Clear()
10092
{
10193
EnsureNotLocked();
102-
foreach(var item in this) {
103-
TryUnsubscribe(item);
104-
}
10594
base.Clear();
10695
NameIndex.Clear();
10796
}
@@ -163,43 +152,6 @@ protected virtual string GetExceptionMessage(string key)
163152
return string.Format(Strings.ExItemWithKeyXWasNotFound, key);
164153
}
165154

166-
/// <summary>
167-
/// Tries to subscribe the collection on
168-
/// change notifications from the specified item.
169-
/// </summary>
170-
/// <param name="item">The item to try.</param>
171-
protected void TrySubscribe(TNode item)
172-
{
173-
if (item is IChangeNotifier notifier) {
174-
notifier.Changing += itemChangingHandler;
175-
notifier.Changed += itemChangedHandler;
176-
}
177-
}
178-
179-
/// <summary>
180-
/// Tries to unsubscribe the collection from
181-
/// change notifications from the specified item.
182-
/// </summary>
183-
/// <param name="item">The item to try.</param>
184-
protected void TryUnsubscribe(TNode item)
185-
{
186-
if (item is IChangeNotifier notifier) {
187-
notifier.Changing -= itemChangingHandler;
188-
notifier.Changed -= itemChangedHandler;
189-
}
190-
}
191-
192-
protected virtual void OnItemChanging(object sender, ChangeNotifierEventArgs e)
193-
{
194-
NameIndex.Remove(((TNode) sender).Name);
195-
}
196-
197-
protected virtual void OnItemChanged(object sender, ChangeNotifierEventArgs e)
198-
{
199-
var tNode = (TNode)sender;
200-
NameIndex.Add(tNode.Name, tNode);
201-
}
202-
203155
/// <inheritdoc/>
204156
public override void Lock(bool recursive)
205157
{
@@ -230,8 +182,6 @@ protected NodeCollection(Node owner, string name, Dictionary<string, TNode> name
230182
NameIndex = nameIndex;
231183
Owner = owner;
232184
Name = name;
233-
itemChangingHandler = OnItemChanging;
234-
itemChangedHandler = OnItemChanged;
235185
}
236186

237187
// Type initializer

0 commit comments

Comments
 (0)