~clinton-collins/familyproject/trunk

« back to all changes in this revision

Viewing changes to ZendFramework/library/Zend/Soap/Client/DotNet.php

  • Committer: Clinton Collins
  • Date: 2009-06-26 19:54:58 UTC
  • Revision ID: clinton.collins@gmail.com-20090626195458-5ebba0qcvo15xlpy
Initial Import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?php
 
2
/**
 
3
 * Zend Framework
 
4
 *
 
5
 * LICENSE
 
6
 *
 
7
 * This source file is subject to the new BSD license that is bundled
 
8
 * with this package in the file LICENSE.txt.
 
9
 * It is also available through the world-wide-web at this URL:
 
10
 * http://framework.zend.com/license/new-bsd
 
11
 * If you did not receive a copy of the license and are unable to
 
12
 * obtain it through the world-wide-web, please send an email
 
13
 * to license@zend.com so we can send you a copy immediately.
 
14
 *
 
15
 * @category   Zend
 
16
 * @package    Zend_Soap
 
17
 * @subpackage Client
 
18
 * @copyright  Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com)
 
19
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
 
20
 */
 
21
 
 
22
/** Zend_Soap_Client */
 
23
require_once 'Zend/Soap/Client.php';
 
24
 
 
25
if (extension_loaded('soap')) {
 
26
 
 
27
/**
 
28
 * Zend_Soap_Client_Local
 
29
 *
 
30
 * Class is intended to be used with .Net Web Services.
 
31
 *
 
32
 * Important! Class is at experimental stage now.
 
33
 * Please leave your notes, compatiblity issues reports or
 
34
 * suggestions in fw-webservices@lists.zend.com or fw-general@lists.com
 
35
 *
 
36
 * @category   Zend
 
37
 * @package    Zend_Soap
 
38
 * @subpackage Client
 
39
 */
 
40
class Zend_Soap_Client_DotNet extends Zend_Soap_Client
 
41
{
 
42
    /**
 
43
     * Constructor
 
44
     *
 
45
     * @param string $wsdl
 
46
     * @param array $options
 
47
     */
 
48
    public function __construct($wsdl = null, $options = null)
 
49
    {
 
50
        // Use SOAP 1.1 as default
 
51
        $this->setSoapVersion(SOAP_1_1);
 
52
 
 
53
        parent::__construct($wsdl, $options);
 
54
    }
 
55
 
 
56
 
 
57
    /**
 
58
     * Perform arguments pre-processing
 
59
     *
 
60
     * My be overridden in descendant classes
 
61
     *
 
62
     * @param array $arguments
 
63
     * @throws Zend_Soap_Client_Exception
 
64
     */
 
65
    protected function _preProcessArguments($arguments)
 
66
    {
 
67
        if (count($arguments) > 1  ||
 
68
            (count($arguments) == 1  &&  !is_array(reset($arguments)))
 
69
           ) {
 
70
                require_once 'Zend/Soap/Client/Exception.php';
 
71
                throw new Zend_Soap_Client_Exception('.Net webservice arguments have to be grouped into array: array(\'a\' => $a, \'b\' => $b, ...).');
 
72
        }
 
73
 
 
74
        // Do nothing
 
75
        return array($arguments);
 
76
    }
 
77
 
 
78
    /**
 
79
     * Perform result pre-processing
 
80
     *
 
81
     * My be overridden in descendant classes
 
82
     *
 
83
     * @param array $arguments
 
84
     */
 
85
    protected function _preProcessResult($result)
 
86
    {
 
87
        $resultProperty = $this->getLastMethod() . 'Result';
 
88
 
 
89
        return $result->$resultProperty;
 
90
    }
 
91
 
 
92
}
 
93
 
 
94
} // end if (extension_loaded('soap')