I think it might make more sense to do this in the `PushManagerFactory`.