Created an AbstractService for common usage