private void PerformTask(InsideModel.Models.Task taskToPerform)
 {
     if (taskToPerform.Type == TaskType.CreateTaskForUsersToSendNewContactEmailNotification)
     {
         _notificationEmailSender.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.SendNewContactPhoneNotification)
     {
         phoneNotificationTaskPerformer.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.AddProductAnalyticData)
     {
         addAnalyticProductDataForClient.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.CreateAnalyticDataTasksForClients)
     {
         createAnalyticDataTasksForClients.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.ImportCustomEvents)
     {
         customEventsImporter.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.ImportSeoData)
     {
         seoDataImporter.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.SendNewContactEmailNotificationToUser)
     {
         userEmailSender.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.ImportCustomEventsTaskCreator)
     {
         importCustomEventsTaskCreator.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.RemoveExpiredTokens)
     {
         removeExpiredTokens.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.CreateUpdatePhonecallsTasksForClients)
     {
         updatePhonecallsTaskCreator.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.UpdatePhonecalls)
     {
         updatePhonecalls.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.CreateTaskForUsersToSendNewContactSmsNotification)
     {
         smsNotificationTaskCreator.PerformTask(taskToPerform);
     }
     else if (taskToPerform.Type == TaskType.SendNewContactSmsNotificationToUser)
     {
         userSmsNotificationTaskPerformer.PerformTask(taskToPerform);
     }
     else
     {
         throw new Exception("Unknown task type: " + taskToPerform.Type);
     }
 }