doc comment fixes

This commit is contained in:
Andreas Schamberger 2011-12-18 13:03:07 +01:00
parent d6dcddca20
commit 8546fb45af
1 changed files with 78 additions and 14 deletions

View File

@ -15,25 +15,35 @@ namespace BeSimple\SoapClient;
use BeSimple\SoapCommon\AbstractSoapBuilder; use BeSimple\SoapCommon\AbstractSoapBuilder;
/** /**
* Fluent interface builder for SoapClient instance.
*
* @author Francis Besset <francis.besset@gmail.com> * @author Francis Besset <francis.besset@gmail.com>
* @author Christian Kerl <christian-kerl@web.de> * @author Christian Kerl <christian-kerl@web.de>
*/ */
class SoapClientBuilder extends AbstractSoapBuilder class SoapClientBuilder extends AbstractSoapBuilder
{ {
/**
* Authentication options.
*
* @var array(string=>mixed)
*/
protected $soapOptionAuthentication = array(); protected $soapOptionAuthentication = array();
/** /**
* @return SoapClientBuilder * Create new instance with default options.
*
* @return \BeSimple\SoapClient\SoapClientBuilder
*/ */
static public function createWithDefaults() public static function createWithDefaults()
{ {
return parent::createWithDefaults() return parent::createWithDefaults()
->withUserAgent('BeSimpleSoap') ->withUserAgent('BeSimpleSoap');
;
} }
/** /**
* @return SoapClient * Finally returns a SoapClient instance.
*
* @return \BeSimple\SoapClient\SoapClient
*/ */
public function build() public function build()
{ {
@ -42,13 +52,22 @@ class SoapClientBuilder extends AbstractSoapBuilder
return new SoapClient($this->wsdl, $this->getSoapOptions()); return new SoapClient($this->wsdl, $this->getSoapOptions());
} }
/**
* Get final array of SOAP options.
*
* @return array(string=>mixed)
*/
public function getSoapOptions() public function getSoapOptions()
{ {
return parent::getSoapOptions() + $this->soapOptionAuthentication; return parent::getSoapOptions() + $this->soapOptionAuthentication;
} }
/** /**
* @return SoapClientBuilder * Configure option 'trace'.
*
* @param boolean $trace Enable/Disable
*
* @return \BeSimple\SoapClient\SoapClientBuilder
*/ */
public function withTrace($trace = true) public function withTrace($trace = true)
{ {
@ -58,7 +77,11 @@ class SoapClientBuilder extends AbstractSoapBuilder
} }
/** /**
* @return SoapClientBuilder * Configure option 'exceptions'.
*
* @param boolean $exceptions Enable/Disable
*
* @return \BeSimple\SoapClient\SoapClientBuilder
*/ */
public function withExceptions($exceptions = true) public function withExceptions($exceptions = true)
{ {
@ -68,7 +91,11 @@ class SoapClientBuilder extends AbstractSoapBuilder
} }
/** /**
* @return SoapClientBuilder * Configure option 'user_agent'.
*
* @param string $userAgent User agent string
*
* @return \BeSimple\SoapClient\SoapClientBuilder
*/ */
public function withUserAgent($userAgent) public function withUserAgent($userAgent)
{ {
@ -77,18 +104,37 @@ class SoapClientBuilder extends AbstractSoapBuilder
return $this; return $this;
} }
/**
* Enable gzip compression.
*
* @return \BeSimple\SoapClient\SoapClientBuilder
*/
public function withCompressionGzip() public function withCompressionGzip()
{ {
$this->soapOptions['compression'] = SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP; $this->soapOptions['compression'] = SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP;
}
public function withCompressionDeflate() return $this;
{
$this->soapOptions['compression'] = SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_DEFLATE;
} }
/** /**
* @return SoapClientBuilder * Enable deflate compression.
*
* @return \BeSimple\SoapClient\SoapClientBuilder
*/
public function withCompressionDeflate()
{
$this->soapOptions['compression'] = SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_DEFLATE;
return $this;
}
/**
* Configure basic authentication
*
* @param string $username Username
* @param string $password Password
*
* @return \BeSimple\SoapClient\SoapClientBuilder
*/ */
public function withBasicAuthentication($username, $password) public function withBasicAuthentication($username, $password)
{ {
@ -102,7 +148,12 @@ class SoapClientBuilder extends AbstractSoapBuilder
} }
/** /**
* @return SoapClientBuilder * Configure digest authentication.
*
* @param string $certificate Certificate
* @param string $passphrase Passphrase
*
* @return \BeSimple\SoapClient\SoapClientBuilder
*/ */
public function withDigestAuthentication($certificate, $passphrase = null) public function withDigestAuthentication($certificate, $passphrase = null)
{ {
@ -118,6 +169,16 @@ class SoapClientBuilder extends AbstractSoapBuilder
return $this; return $this;
} }
/**
* Configure proxy.
*
* @param string $host Host
* @param int $port Port
* @param string $username Username
* @param string $password Password
*
* @return \BeSimple\SoapClient\SoapClientBuilder
*/
public function withProxy($host, $port, $username = null, $password = null) public function withProxy($host, $port, $username = null, $password = null)
{ {
$this->soapOptions['proxy_host'] = $host; $this->soapOptions['proxy_host'] = $host;
@ -131,6 +192,9 @@ class SoapClientBuilder extends AbstractSoapBuilder
return $this; return $this;
} }
/**
* Validate options.
*/
protected function validateOptions() protected function validateOptions()
{ {
$this->validateWsdl(); $this->validateWsdl();