/// <summary>
 /// Return the HashCode of this object.
 /// </summary>
 /// <returns>The HashCode of this object.</returns>
 public override Int32 GetHashCode()
 {
     unchecked
     {
         return(HeartbeatPeriod.GetHashCode() * 7 ^
                CurrentTime.GetHashCode() * 5 ^
                TransactionId.GetHashCode() * 3 ^
                RequestStatus.GetHashCode());
     }
 }
            /// <summary>
            /// Compares two Heartbeat responses for equality.
            /// </summary>
            /// <param name="HeartbeatResponse">A Heartbeat response to compare with.</param>
            /// <returns>True if both match; False otherwise.</returns>
            public override Boolean Equals(HeartbeatResponse HeartbeatResponse)
            {
                if ((Object)HeartbeatResponse == null)
                {
                    return(false);
                }

                return(HeartbeatPeriod.Equals(HeartbeatResponse.HeartbeatPeriod) &&
                       CurrentTime.Equals(HeartbeatResponse.CurrentTime) &&
                       TransactionId.Equals(HeartbeatResponse.TransactionId) &&
                       RequestStatus.Equals(HeartbeatResponse.RequestStatus));
            }