implement web service client