public CloudFileClientEx(FailoverToken failoverToken, params CloudFileClient[] cloudFileClients)
        {
            if (failoverToken == null)
            {
                throw new ArgumentNullException(nameof(failoverToken));
            }

            if (cloudFileClients == null)
            {
                throw new ArgumentNullException(nameof(cloudFileClients));
            }

            if (cloudFileClients.Length == 0)
            {
                throw new ArgumentException(nameof(cloudFileClients));
            }

            if (failoverToken.FailoverCount != cloudFileClients.Length)
            {
                throw new ArgumentException();
            }


            this.failoverContainer = new FailoverContainer <CloudFileClient>(failoverToken, cloudFileClients);
        }
        public CloudStorageAccountEx(params CloudStorageAccount[] accounts)
        {
            if (accounts == null)
            {
                throw new ArgumentNullException(nameof(accounts));
            }

            if (accounts.Length == 0)
            {
                throw new ArgumentException(nameof(accounts));
            }


            FailoverToken failoverToken = new FailoverToken(accounts.Length);

            this.failoverContainer = new FailoverContainer <CloudStorageAccount>(failoverToken, accounts);
        }
 protected CloudAppendBlobEx(CloudBlobContainerEx cloudBlobContainer, FailoverContainer <CloudAppendBlob> failoverContainer)
     : base(cloudBlobContainer, failoverContainer)
 {
     this.failoverContainer = failoverContainer;
 }