public static NodeExt[] ReorderToServerList(this NodeExt[] nodes, VBucketServerMap serverMap)
        {
            if (nodes == null)
            {
                return(null);
            }
            var reordered   = new NodeExt[nodes.Length];
            var serversList = serverMap.ServerList;

            if (serversList == null || serversList.Length == 0)
            {
                reordered = nodes;
            }
            else
            {
                for (var i = 0; i < serversList.Length; i++)
                {
                    var host = serversList[i].Split(':')[0];
                    foreach (var n in nodes.Where(n => n.Hostname != null && n.Hostname.Split(':')[0].Equals(host)))
                    {
                        reordered[i] = n;
                        break;
                    }
                }
            }
            return(reordered);
        }
Beispiel #2
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hash = 17;
         hash = hash * 23 + VBucketServerMap.GetHashCode();
         hash = hash * 23 + BucketType.GetHashCode();
         hash = hash * 23 + Name.GetHashCode();
         hash = hash * 23 + AuthType.GetHashCode();
         hash = hash * 23 + NodeLocator.GetHashCode();
         hash = hash * 23 + SaslPassword.GetHashCode();
         hash = hash * 23 + Uuid.GetHashCode();
         hash = hash * 23 + Nodes.GetCombinedHashcode();
         return(hash);
     }
 }
Beispiel #3
0
 public bool IsVBucketServerMapEqual(IBucketConfig other)
 {
     return(VBucketServerMap.Equals(other.VBucketServerMap));
 }
Beispiel #4
0
 public BucketConfig()
 {
     VBucketServerMap = new VBucketServerMap();
 }