/// <inheritdoc/> public override int GetHashCode() { unchecked { int result = base.GetHashCode(); if (InterfaceUri != null) { result = (result * 397) ^ InterfaceUri.GetHashCode(); } if (Name != null) { result = (result * 397) ^ Name.GetHashCode(); } result = (result * 397) ^ AutoUpdate.GetHashCode(); if (Requirements != null) { result = (result * 397) ^ Requirements.GetHashCode(); } result = (result * 397) ^ CapabilityLists.GetSequencedHashCode(); if (AccessPoints != null) { result = (result * 397) ^ AccessPoints.GetHashCode(); } return(result); } }
/// <inheritdoc/> public override int GetHashCode() { unchecked { int result = base.GetHashCode(); result = (result * 397) ^ InterfaceUri?.GetHashCode() ?? 0; result = (result * 397) ^ Name?.GetHashCode() ?? 0; result = (result * 397) ^ AutoUpdate.GetHashCode(); result = (result * 397) ^ Requirements?.GetHashCode() ?? 0; result = (result * 397) ^ CapabilityLists.GetUnsequencedHashCode(); result = (result * 397) ^ AccessPoints?.GetHashCode() ?? 0; return(result); } }
/// <summary> /// Creates a deep copy of this <see cref="AppEntry"/> instance. /// </summary> /// <returns>The new copy of the <see cref="AppEntry"/>.</returns> public AppEntry Clone() { var appList = new AppEntry { UnknownAttributes = UnknownAttributes, UnknownElements = UnknownElements, Name = Name, InterfaceUri = InterfaceUri }; if (Requirements != null) { appList.Requirements = Requirements.Clone(); } if (AccessPoints != null) { appList.AccessPoints = AccessPoints.Clone(); } appList.CapabilityLists.AddRange(CapabilityLists.CloneElements()); return(appList); }
public T LookupCapability <T>([NotNull] string id) where T : Capability { #region Sanity checks if (string.IsNullOrEmpty(id)) { throw new ArgumentNullException(nameof(id)); } #endregion try { return(CapabilityLists.CompatibleCapabilities().OfType <T>() .First(specificCapability => specificCapability.ID == id)); } #region Error handling catch (InvalidOperationException) { throw new KeyNotFoundException(string.Format(Resources.UnableToFindTypeID, typeof(T).Name, id)); } #endregion }
/// <inheritdoc/> public bool Equals(AppEntry other) { if (other == null) { return(false); } if (!base.Equals(other)) { return(false); } if (InterfaceUri != other.InterfaceUri) { return(false); } if (Name != other.Name) { return(false); } if (AutoUpdate != other.AutoUpdate) { return(false); } if (!Equals(Requirements, other.Requirements)) { return(false); } if (!CapabilityLists.SequencedEquals(other.CapabilityLists)) { return(false); } if (!Equals(AccessPoints, other.AccessPoints)) { return(false); } return(true); }