use controller as a service instead of call method