Split up functionality in service provider into separate methods