/// <summary> /// Gets the hash code /// </summary> /// <returns>Hash code</returns> public override int GetHashCode() { unchecked // Overflow is fine, just wrap { var hashCode = 41; // Suitable nullity checks etc, of course :) if (Class != null) { hashCode = hashCode * 59 + Class.GetHashCode(); } if (AssignedLabels != null) { hashCode = hashCode * 59 + AssignedLabels.GetHashCode(); } if (Mode != null) { hashCode = hashCode * 59 + Mode.GetHashCode(); } if (NodeDescription != null) { hashCode = hashCode * 59 + NodeDescription.GetHashCode(); } if (NodeName != null) { hashCode = hashCode * 59 + NodeName.GetHashCode(); } hashCode = hashCode * 59 + NumExecutors.GetHashCode(); if (Description != null) { hashCode = hashCode * 59 + Description.GetHashCode(); } if (Jobs != null) { hashCode = hashCode * 59 + Jobs.GetHashCode(); } if (PrimaryView != null) { hashCode = hashCode * 59 + PrimaryView.GetHashCode(); } hashCode = hashCode * 59 + QuietingDown.GetHashCode(); hashCode = hashCode * 59 + SlaveAgentPort.GetHashCode(); if (UnlabeledLoad != null) { hashCode = hashCode * 59 + UnlabeledLoad.GetHashCode(); } hashCode = hashCode * 59 + UseCrumbs.GetHashCode(); hashCode = hashCode * 59 + UseSecurity.GetHashCode(); if (Views != null) { hashCode = hashCode * 59 + Views.GetHashCode(); } return(hashCode); } }
/// <summary> /// Returns true if Hudson instances are equal /// </summary> /// <param name="other">Instance of Hudson to be compared</param> /// <returns>Boolean</returns> public bool Equals(Hudson other) { if (other is null) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return (( Class == other.Class || Class != null && Class.Equals(other.Class) ) && ( AssignedLabels == other.AssignedLabels || AssignedLabels != null && other.AssignedLabels != null && AssignedLabels.SequenceEqual(other.AssignedLabels) ) && ( Mode == other.Mode || Mode != null && Mode.Equals(other.Mode) ) && ( NodeDescription == other.NodeDescription || NodeDescription != null && NodeDescription.Equals(other.NodeDescription) ) && ( NodeName == other.NodeName || NodeName != null && NodeName.Equals(other.NodeName) ) && ( NumExecutors == other.NumExecutors || NumExecutors.Equals(other.NumExecutors) ) && ( Description == other.Description || Description != null && Description.Equals(other.Description) ) && ( Jobs == other.Jobs || Jobs != null && other.Jobs != null && Jobs.SequenceEqual(other.Jobs) ) && ( PrimaryView == other.PrimaryView || PrimaryView != null && PrimaryView.Equals(other.PrimaryView) ) && ( QuietingDown == other.QuietingDown || QuietingDown.Equals(other.QuietingDown) ) && ( SlaveAgentPort == other.SlaveAgentPort || SlaveAgentPort.Equals(other.SlaveAgentPort) ) && ( UnlabeledLoad == other.UnlabeledLoad || UnlabeledLoad != null && UnlabeledLoad.Equals(other.UnlabeledLoad) ) && ( UseCrumbs == other.UseCrumbs || UseCrumbs.Equals(other.UseCrumbs) ) && ( UseSecurity == other.UseSecurity || UseSecurity.Equals(other.UseSecurity) ) && ( Views == other.Views || Views != null && other.Views != null && Views.SequenceEqual(other.Views) )); }