mmm , its pretty much same as the existing one except for the addition of service provider. Having said that I do feel there is a problem here. The service provider and the default handler must be set.