public void Create(Customer customer)
{
if (!CanUseEmail(customer, customer.Email))
throw new BusinessRuleViolationException("Email was already taken by others.");
_customerRepository.Insert(customer);
Event.Raise(new CustomerCreated(customer), _instance);
}