function ExponentialRetryPolicyFilter(retryCount, retryInterval, minRetryInterval, maxRetryInterval) {
  this.retryCount = retryCount ? retryCount : ExponentialRetryPolicyFilter.DEFAULT_CLIENT_RETRY_COUNT;
  this.retryInterval = retryInterval ? retryInterval : ExponentialRetryPolicyFilter.DEFAULT_CLIENT_RETRY_INTERVAL;
  this.minRetryInterval = minRetryInterval ? minRetryInterval : ExponentialRetryPolicyFilter.DEFAULT_CLIENT_MIN_RETRY_INTERVAL;
  this.maxRetryInterval = maxRetryInterval ? maxRetryInterval : ExponentialRetryPolicyFilter.DEFAULT_CLIENT_MAX_RETRY_INTERVAL;
}
Creates a new 'ExponentialRetryPolicyFilter' instance.
@class
The ExponentialRetryPolicyFilter allows you to retry operations,
using an exponential back-off interval between retries.
To apply a filter to service operations, use `withFilter`
and specify the filter to be used when creating a service.
@constructor
@param {number} [retryCount=3]            The client retry count.
@param {number} [retryInterval=30000]     The client retry interval, in milliseconds.
@param {number} [minRetryInterval=3000]   The minimum retry interval, in milliseconds.
@param {number} [maxRetryInterval=90000]  The maximum retry interval, in milliseconds.

@example
var azure = require('azure-storage');
var retryOperations = new azure.ExponentialRetryPolicyFilter();
var blobService = azure.createBlobService().withFilter(retryOperations)