aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities/BaseItem.cs
diff options
context:
space:
mode:
authorBond-009 <bond.009@outlook.com>2020-03-11 16:00:36 +0100
committerGitHub <noreply@github.com>2020-03-11 16:00:36 +0100
commit008a76cf4d7f04eee2f0e1b8d135ea835d7ec7e2 (patch)
treeaeceafd8156d59829b979154521d4f46768e99f7 /MediaBrowser.Controller/Entities/BaseItem.cs
parent0b51de3af5d118d6be88f7f066eb89fba747c87f (diff)
parentf4ccee58010c4420f827ce7f8eb037e2ccec1d82 (diff)
Merge pull request #2502 from JustAMan/baseitem-equals
Adds BaseItem.Equals method that compares items by their Id
Diffstat (limited to 'MediaBrowser.Controller/Entities/BaseItem.cs')
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs14
1 files changed, 13 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs
index 66de080a3..5e4217cd5 100644
--- a/MediaBrowser.Controller/Entities/BaseItem.cs
+++ b/MediaBrowser.Controller/Entities/BaseItem.cs
@@ -33,7 +33,7 @@ namespace MediaBrowser.Controller.Entities
/// <summary>
/// Class BaseItem
/// </summary>
- public abstract class BaseItem : IHasProviderIds, IHasLookupInfo<ItemLookupInfo>
+ public abstract class BaseItem : IHasProviderIds, IHasLookupInfo<ItemLookupInfo>, IEquatable<BaseItem>
{
/// <summary>
/// The supported image extensions
@@ -2914,5 +2914,17 @@ namespace MediaBrowser.Controller.Entities
public static readonly IReadOnlyCollection<ExtraType> DisplayExtraTypes = new[] { Model.Entities.ExtraType.BehindTheScenes, Model.Entities.ExtraType.Clip, Model.Entities.ExtraType.DeletedScene, Model.Entities.ExtraType.Interview, Model.Entities.ExtraType.Sample, Model.Entities.ExtraType.Scene };
public virtual bool SupportsExternalTransfer => false;
+
+ /// <inheritdoc />
+ public override bool Equals(object obj)
+ {
+ return obj is BaseItem baseItem && this.Equals(baseItem);
+ }
+
+ /// <inheritdoc />
+ public bool Equals(BaseItem item) => Object.Equals(Id, item?.Id);
+
+ /// <inheritdoc />
+ public override int GetHashCode() => HashCode.Combine(Id);
}
}