[add] SoapClient factory