xenadmin/XenAdmin/Wizards/PatchingWizard/PlanActions/PoolPatchMapping.cs
Gabor Apati-Nagy 48ef276c06 CA-216935: Fixed a bug that can occur when multiple pools are being updated with the same update and one of the prechecks happen before the other pool is finished applying the update
The PatchPrechecksOnMultipleHostsInAPoolPlanAction did not filter the patchmappings by masterhost, so with some probability, it could choose the wrong mapping (pool_patch object for the same update, but in different pool). This bug is being fixed in this commit, other changes only renamed (for more consistent naming) a class and removed an unused field.

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-08-02 14:30:20 +01:00

36 lines
995 B
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using XenAdmin.Core;
using XenAPI;
namespace XenAdmin.Wizards.PatchingWizard.PlanActions
{
public class PoolPatchMapping
{
public XenServerPatch XenServerPatch { get; set; }
public Pool_patch Pool_patch { get; set; }
public Host MasterHost { get; set; }
public override bool Equals(object obj)
{
if (!(obj is PoolPatchMapping))
return false;
var that = obj as PoolPatchMapping;
return
this.XenServerPatch == that.XenServerPatch
&& this.Pool_patch == that.Pool_patch
&& this.MasterHost == that.MasterHost;
}
public override int GetHashCode()
{
return XenServerPatch.GetHashCode() ^ Pool_patch.GetHashCode() ^ MasterHost.GetHashCode();
}
}
}