public void RefreshEmailSubscribers()
        {
            Log.Info("Beginning to refresh the list of email subscribers");
            List <string> lstEmailSubscribers = new List <string>();
            object        continuationContext = null;

            try
            {
                bool hasMore = true;
                while (hasMore)
                {
                    EmailsSubscriptionsBatchResponse response = usersDal.GetNextEmailSubscriptionsBatch(10000, true, continuationContext, SubscriptionType.WeeklyDeals);
                    if (response.EmailSubscriptions != null)
                    {
                        foreach (Users.Dal.DataModel.EmailSubscription emailSubscription in response.EmailSubscriptions)
                        {
                            if (!string.IsNullOrWhiteSpace(emailSubscription.Email))
                            {
                                lstEmailSubscribers.Add(emailSubscription.Email);
                            }
                        }
                    }

                    hasMore             = response.HasMore;
                    continuationContext = response.ContinuationContext;
                }

                if (lstEmailSubscribers.Any())
                {
                    _emailSubscribers = lstEmailSubscribers;
                }

                Log.Info("Finished refreshing the list of email subscribers");
                Log.Info("After refresh, In memory list has " + lstEmailSubscribers.Count + " items");
            }
            catch (Exception exception)
            {
                Log.Error("Error in refreshing list of email subscribers : {0}", exception.Message);
            }
        }