implement customer factory, inject into customer controller