Просмотр исходного кода

[PROMOTE] Promoting Zend_Service_DeveloperGarden to trunk

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@20221 44c647ce-9c0f-0410-b52a-842ac1e357ba
matthew 16 лет назад
Родитель
Сommit
8466bdbd53
100 измененных файлов с 10958 добавлено и 1 удалено
  1. 6 1
      documentation/manual/en/manual.xml.in
  2. 888 0
      documentation/manual/en/module_specs/Zend_Service_DeveloperGarden.xml
  3. 399 0
      library/Zend/Service/DeveloperGarden/BaseUserService.php
  4. 62 0
      library/Zend/Service/DeveloperGarden/BaseUserService/AccountBalance.php
  5. 430 0
      library/Zend/Service/DeveloperGarden/Client/ClientAbstract.php
  6. 38 0
      library/Zend/Service/DeveloperGarden/Client/Exception.php
  7. 340 0
      library/Zend/Service/DeveloperGarden/Client/Soap.php
  8. 872 0
      library/Zend/Service/DeveloperGarden/ConferenceCall.php
  9. 62 0
      library/Zend/Service/DeveloperGarden/ConferenceCall/ConferenceAccount.php
  10. 129 0
      library/Zend/Service/DeveloperGarden/ConferenceCall/ConferenceDetail.php
  11. 262 0
      library/Zend/Service/DeveloperGarden/ConferenceCall/ConferenceSchedule.php
  12. 38 0
      library/Zend/Service/DeveloperGarden/ConferenceCall/Exception.php
  13. 84 0
      library/Zend/Service/DeveloperGarden/ConferenceCall/Participant.php
  14. 195 0
      library/Zend/Service/DeveloperGarden/ConferenceCall/ParticipantDetail.php
  15. 103 0
      library/Zend/Service/DeveloperGarden/ConferenceCall/ParticipantStatus.php
  16. 186 0
      library/Zend/Service/DeveloperGarden/Credential.php
  17. 38 0
      library/Zend/Service/DeveloperGarden/Exception.php
  18. 120 0
      library/Zend/Service/DeveloperGarden/IpLocation.php
  19. 130 0
      library/Zend/Service/DeveloperGarden/IpLocation/IpAddress.php
  20. 105 0
      library/Zend/Service/DeveloperGarden/LocalSearch.php
  21. 38 0
      library/Zend/Service/DeveloperGarden/LocalSearch/Exception.php
  22. 536 0
      library/Zend/Service/DeveloperGarden/LocalSearch/SearchParameters.php
  23. 103 0
      library/Zend/Service/DeveloperGarden/Request/BaseUserService/ChangeQuotaPool.php
  24. 72 0
      library/Zend/Service/DeveloperGarden/Request/BaseUserService/GetAccountBalance.php
  25. 72 0
      library/Zend/Service/DeveloperGarden/Request/BaseUserService/GetQuotaInformation.php
  26. 91 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/AddConferenceTemplateParticipantRequest.php
  27. 69 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/CommitConferenceRequest.php
  28. 136 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/CreateConferenceRequest.php
  29. 113 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/CreateConferenceTemplateRequest.php
  30. 104 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceListRequest.php
  31. 106 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceStatusRequest.php
  32. 69 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceTemplateListRequest.php
  33. 90 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceTemplateParticipantRequest.php
  34. 69 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceTemplateRequest.php
  35. 90 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetParticipantStatusRequest.php
  36. 69 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetRunningConferenceRequest.php
  37. 91 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/NewParticipantRequest.php
  38. 69 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveConferenceRequest.php
  39. 90 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveConferenceTemplateParticipantRequest.php
  40. 69 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveConferenceTemplateRequest.php
  41. 90 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveParticipantRequest.php
  42. 158 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateConferenceRequest.php
  43. 113 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateConferenceTemplateParticipantRequest.php
  44. 113 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateConferenceTemplateRequest.php
  45. 138 0
      library/Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateParticipantRequest.php
  46. 39 0
      library/Zend/Service/DeveloperGarden/Request/Exception.php
  47. 114 0
      library/Zend/Service/DeveloperGarden/Request/IpLocation/LocateIPRequest.php
  48. 113 0
      library/Zend/Service/DeveloperGarden/Request/LocalSearch/LocalSearchRequest.php
  49. 72 0
      library/Zend/Service/DeveloperGarden/Request/RequestAbstract.php
  50. 46 0
      library/Zend/Service/DeveloperGarden/Request/SendSms/SendFlashSMS.php
  51. 46 0
      library/Zend/Service/DeveloperGarden/Request/SendSms/SendSMS.php
  52. 281 0
      library/Zend/Service/DeveloperGarden/Request/SendSms/SendSmsAbstract.php
  53. 39 0
      library/Zend/Service/DeveloperGarden/Request/SmsValidation/GetValidatedNumbers.php
  54. 80 0
      library/Zend/Service/DeveloperGarden/Request/SmsValidation/Invalidate.php
  55. 39 0
      library/Zend/Service/DeveloperGarden/Request/SmsValidation/SendValidationKeyword.php
  56. 110 0
      library/Zend/Service/DeveloperGarden/Request/SmsValidation/Validate.php
  57. 100 0
      library/Zend/Service/DeveloperGarden/Request/VoiceButler/CallStatus.php
  58. 238 0
      library/Zend/Service/DeveloperGarden/Request/VoiceButler/NewCall.php
  59. 92 0
      library/Zend/Service/DeveloperGarden/Request/VoiceButler/NewCallSequenced.php
  60. 78 0
      library/Zend/Service/DeveloperGarden/Request/VoiceButler/TearDownCall.php
  61. 39 0
      library/Zend/Service/DeveloperGarden/Request/VoiceButler/VoiceButlerAbstract.php
  62. 140 0
      library/Zend/Service/DeveloperGarden/Response/BaseType.php
  63. 39 0
      library/Zend/Service/DeveloperGarden/Response/BaseUserService/ChangeQuotaPoolResponse.php
  64. 39 0
      library/Zend/Service/DeveloperGarden/Response/BaseUserService/GetAccountBalanceResponse.php
  65. 90 0
      library/Zend/Service/DeveloperGarden/Response/BaseUserService/GetQuotaInformationResponse.php
  66. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/AddConferenceTemplateParticipantResponse.php
  67. 55 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/AddConferenceTemplateParticipantResponseType.php
  68. 39 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CCSResponseType.php
  69. 46 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CommitConferenceResponse.php
  70. 75 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php
  71. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceResponse.php
  72. 55 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceResponseType.php
  73. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceTemplateResponse.php
  74. 55 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceTemplateResponseType.php
  75. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceListResponse.php
  76. 55 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceListResponseType.php
  77. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceStatusResponse.php
  78. 148 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceStatusResponseType.php
  79. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateListResponse.php
  80. 55 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateListResponseType.php
  81. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateParticipantResponse.php
  82. 55 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateParticipantResponseType.php
  83. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateResponse.php
  84. 97 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateResponseType.php
  85. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetParticipantStatusResponse.php
  86. 55 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetParticipantStatusResponseType.php
  87. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetRunningConferenceResponse.php
  88. 55 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetRunningConferenceResponseType.php
  89. 45 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/NewParticipantResponse.php
  90. 55 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/NewParticipantResponseType.php
  91. 46 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveConferenceResponse.php
  92. 46 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveConferenceTemplateParticipantResponse.php
  93. 46 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveConferenceTemplateResponse.php
  94. 46 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveParticipantResponse.php
  95. 46 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateConferenceResponse.php
  96. 46 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateConferenceTemplateParticipantResponse.php
  97. 46 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateConferenceTemplateResponse.php
  98. 46 0
      library/Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateParticipantResponse.php
  99. 39 0
      library/Zend/Service/DeveloperGarden/Response/Exception.php
  100. 77 0
      library/Zend/Service/DeveloperGarden/Response/IpLocation/CityType.php

+ 6 - 1
documentation/manual/en/manual.xml.in

@@ -1792,6 +1792,11 @@
                     <xi:include href="../en/module_specs/Zend_Service_Delicious.xml" />
                 </xi:fallback>
             </xi:include>
+            <xi:include href="module_specs/Zend_Service_DeveloperGarden.xml">
+                <xi:fallback>
+                    <xi:include href="../en/module_specs/Zend_Service_DeveloperGarden.xml" />
+                </xi:fallback>
+            </xi:include>
             <xi:include href="module_specs/Zend_Service_Flickr.xml">
                 <xi:fallback>
                     <xi:include href="../en/module_specs/Zend_Service_Flickr.xml" />
@@ -2298,4 +2303,4 @@
     </xi:include>
 
     <index id="the.index" />
-</book>
+</book>

+ 888 - 0
documentation/manual/en/module_specs/Zend_Service_DeveloperGarden.xml

@@ -0,0 +1,888 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Reviewed: no -->
+<sect1 id="zend.service.developergarden">
+    <title>Zend_Service_DeveloperGarden</title>
+    
+    <sect2 id="zend.service.developergarden.introduction">
+        <title>Introduction to DeveloperGarden</title>
+        
+        <para>
+            DeveloperGarden is the name for the &quot;Open Development services&quot; of the German
+            Telekom. The &quot;Open Development services&quot; are a set of <acronym>SOAP</acronym>
+            API Services.
+        </para>
+        
+        <para>
+            The family of <classname>Zend_Service_DeveloperGarden</classname> components provides a
+            clean and simple interface to the <ulink
+                url="http://www.developergarden.com">DeveloperGarden API</ulink> and additionally
+            offers functionality to improve handling and performance.
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <link linkend="zend.service.developergarden.baseuserservice">BaseUserService</link>: 
+                    Class to manage API quota and user accounting details.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <link linkend="zend.service.developergarden.iplocation">IpLocation</link>: 
+                    Locale the given IP and returns geo coordinates. Works only with IPs allocated 
+                    in the network of the german telekom.
+                    </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <link linkend="zend.service.developergarden.localsearch">LocalSearch</link>: 
+                    Allows you to search with options nearby or around a given geo coordinate or city.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <link linkend="zend.service.developergarden.sendsms">SendSms</link>: Send a Sms 
+                    or Flash Sms to a given number.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <link linkend="zend.service.developergarden.smsvalidation">SmsValidation</link>: 
+                    You can validate a number to use it with SendSms for also supply a back channel.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <link linkend="zend.service.developergarden.voicecall">VoiceCall</link>: 
+                    Initiates a call between two numbers.
+                 </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <link linkend="zend.service.developergarden.conferencecall">ConferenceCall</link>: 
+                    You can configure a whole conference room with participants for an adhoc
+                    conference or you can also schedule your conference.
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            The backend SOAP API is documented 
+            <ulink url="http://www.developergarden.com/openapi/dokumentation/">here</ulink>.
+        </para>
+
+        <sect3 id="zend.service.developergarden.account">
+            <title>Sign Up for an Account</title>
+
+            <para>
+                Before you can start using the DeveloperGarden API, you must first 
+                <ulink url="http://www.developergarden.com/register">sign up</ulink> for an account.
+            </para>
+        </sect3>
+
+        <sect3 id="zend.service.developergarden.environment">
+            <title>The Environment</title>
+
+            <para>
+                With the DeveloperGarden API you have the possibility to choose 3 different
+                environments to work on.
+            </para>
+
+            <itemizedlist>
+                <listitem>
+                    <para>
+                        <emphasis>production</emphasis>: In Production environement you have to pay
+                        for calls, sms and other payable services.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <emphasis>sandbox</emphasis>: In the Sandbox mode you can use the same
+                        features with some limitations like in the production just without to pay
+                        for them. Normally during development you can test your application.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <emphasis>mock</emphasis>: The Mock environment allows you to build your
+                        application and have results but you don not initiate any action on the API
+                        side.
+                    </para>
+                </listitem>
+            </itemizedlist>
+
+            <para>
+                For every environment and service are some special features (options) available for
+                testing. Please look <ulink
+                    url="http://www.developergarden.com/openapi/dokumentation/">here</ulink> for
+                details.
+            </para>
+        </sect3>
+
+        <sect3 id="zend.service.developergarden.config">
+            <title>Your configuration</title>
+
+            <para>
+                You can pass to all classes an array of configuration values. Possible values are:
+            </para>
+
+            <itemizedlist>
+                <listitem>
+                    <para>
+                        <emphasis>username</emphasis>: Your DeveloperGarden API username.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <emphasis>password</emphasis>: Your DeveloperGarden API password.
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <emphasis>environment</emphasis>: The environment that you selected.
+                    </para>
+                </listitem>
+            </itemizedlist>
+
+            <example id="zend.service.developergarden.config.example">
+                <title>Configuration Example</title>
+
+                <programlisting language="php"><![CDATA[
+require_once 'Zend/Service/DeveloperGarden/SendSms.php';
+$config = array(
+    'username'    => 'yourUsername',
+    'password'    => 'yourPassword',
+    'environment' => Zend_Service_DeveloperGarden_SendSms::ENV_PRODUCTION,
+);
+$service = new Zend_Service_DeveloperGarden_SendSms($config);
+]]></programlisting>
+            </example>
+        </sect3>
+    </sect2>
+
+    <sect2 id="zend.service.developergarden.baseuserservice">
+        <title>BaseUserService</title>
+        
+        <para>
+            The class can be used to set and get quota values for the services and to fetch 
+            account details.
+        </para>
+
+        <para>
+            The <methodname>getAccountBalance()</methodname> method is there to fetch an array
+            of account id's with the current balance status (credits).
+        </para>
+
+        <example id="zend.service.developergarden.baseuserservice.getaccountbalance.example">
+            <title>Get account balance example</title>
+
+            <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_BaseUserService($config);
+print_r($service->getAccountBalance());
+]]></programlisting>
+        </example>
+
+        <sect3 id="zend.service.developergarden.baseuserservice.getquotainformation">
+            <title>Get quota information</title>
+
+            <para>
+                You can fetch quota informations for a specific service module with the
+                provided methods.
+            </para>
+
+            <example id="zend.service.developergarden.baseuserservice.getquotainformation.example">
+                <title>Get quota information example</title>
+
+                <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_BaseUserService($config);
+$result = $service->getSmsQuotaInformation(
+    Zend_Service_DeveloperGarden_BaseUserService::ENV_PRODUCTION
+);
+echo 'Sms Quota:<br />';
+echo 'Max Quota: ', $result->getMaxQuota(), '<br />';
+echo 'Max User Quota: ', $result->getMaxUserQuota(), '<br />';
+echo 'Quota Level: ', $result->getQuotaLevel(), '<br />';
+]]></programlisting>
+            </example>
+            
+            <para>
+                You get a <classname>Result</classname> object that contains all information that
+                you need, optional you can pass to the <methodname>QuotaInformation</methodname>
+                method the environment constant to fetch the quota for the specific environment.
+            </para>
+
+            <para>
+                Here a list of all <methodname>getQuotaInformation</methodname> methods:
+            </para>
+
+            <itemizedlist>
+                <listitem>
+                    <para>
+                        <methodname>getConfernceCallQuotaInformation()</methodname>
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <methodname>getIPLocationQuotaInformation()</methodname>
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <methodname>getLocalSearchQuotaInformation()</methodname>
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <methodname>getSmsQuotaInformation()</methodname>
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <methodname>getVoiceCallQuotaInformation()</methodname>
+                    </para>
+                </listitem>
+            </itemizedlist>
+        </sect3>
+        
+        <sect3 id="zend.service.developergarden.baseuserservice.changequotainformation">
+            <title>Change quota information</title>
+
+            <para>
+                To change the current quota use one of the <methodname>changeQuotaPool</methodname>
+                methods.  First parameter is the new pool value and the second one is the
+                environment.
+            </para>
+
+            <example id="zend.service.developergarden.baseuserservice.changequotainformation.example">
+                <title>Change quota information example</title>
+
+                <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_BaseUserService($config);
+$result = $service->changeSmsQuotaPool(
+    1000, 
+    Zend_Service_DeveloperGarden_BaseUserService::ENV_PRODUCTION
+);
+if (!$result->hasError()) {
+    echo 'updated Quota Pool';
+}
+]]></programlisting>
+            </example>
+            
+            <para>
+                Here a list of all <methodname>changeQuotaPool</methodname> methods:
+            </para>
+
+            <itemizedlist>
+                <listitem>
+                    <para>
+                        <methodname>changeConferenceCallQuotaPool()</methodname>
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <methodname>changeIPLocationQuotaPool()</methodname>
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <methodname>changeLocalSearchQuotaPool()</methodname>
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <methodname>changeSmsQuotaPool()</methodname>
+                    </para>
+                </listitem>
+
+                <listitem>
+                    <para>
+                        <methodname>changeVoiceCallQuotaPool()</methodname>
+                    </para>
+                </listitem>
+            </itemizedlist>
+        </sect3>
+    </sect2>
+
+    <sect2 id="zend.service.developergarden.iplocation">
+        <title>IP Location</title>
+
+        <para>
+            This service allows you to retrieve location information for a given IP address.
+        </para>
+
+        <para>
+            There are some limitations:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>The IP address must be in the T-Home network</para>
+            </listitem>
+
+            <listitem>
+                <para>Just the next big city will be resolved</para>
+            </listitem>
+
+            <listitem>
+                <para>IPv6 is not supported yet</para>
+            </listitem>
+        </itemizedlist>
+
+        <example id="zend.service.developergarden.iplocation.locateip.example">
+            <title>Locate a given IP</title>
+
+            <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_IpLocation($config);
+$service->setEnvironment(
+    Zend_Service_DeveloperGarden_IpLocation::ENV_MOCK
+);
+$ip = new Zend_Service_DeveloperGarden_IpLocation_IpAddress('127.0.0.1');
+print_r($service->locateIp($ip));
+]]></programlisting>
+        </example>
+    </sect2>
+
+    <sect2 id="zend.service.developergarden.localsearch">
+        <title>Local Search</title>
+
+        <para>
+            The Local Search service provides the local search machine <ulink
+                url="http://www.suchen.de">suchen.de</ulink> via a the web service interface.  For
+            more details, refer to <ulink
+                url="http://www.developergarden.com/static/docu/en/ch04s02s06.html">the
+                documentation</ulink>.
+        </para>
+
+        <example id="zend.service.developergarden.localsearch.example">
+            <title>Locate a Restaurant</title>
+
+            <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_LocalSearch($config);
+$search  = new Zend_Service_DeveloperGarden_LocalSearch_SearchParameters();
+/**
+ * @see http://www.developergarden.com/static/docu/en/ch04s02s06s04.html
+ */
+$search->setWhat('pizza')
+       ->setWhere('jena');
+print_r($service->localSearch($search));
+]]></programlisting>
+        </example>
+    </sect2>
+
+    <sect2 id="zend.service.developergarden.sendsms">
+        <title>Send SMS</title>
+
+        <para>
+            The Send SMS service is used to send normal and Flash SMS to any number.
+        </para>
+
+        <para>
+            The following restrictions apply to the use of the SMS service:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    An SMS or Flash SMS in the production environment must not be longer than
+                    765 characters and must not be sent to more than 10 recipients.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    An SMS or Flash SMS in the sandbox environment is shortened and enhanced by a
+                    note in the DeveloperGarden. The maximum length of the message sent is 160
+                    characters.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    In the sandbox environment, a maximum of 10 SMS can be sent per day.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    The following characters are counted twice: 
+                    <literal>| ^ € { } [ ] ~ \ LF</literal> (line break)
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    If an SMS or Flash SMS is longer than 160 characters, one message is charged for
+                    each 153 characters (quota and credit).
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    Delivery cannot be guaranteed for SMS or Flash SMS to landline numbers.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    The sender can exist of a maximum of 11 characters. Permitted characters are
+                    letters and numbers.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    The specification of a phone number as the sender is only permitted if the phone
+                    number has been validated. (See: <link
+                        linkend="zend.service.developergarden.smsvalidation">SMS Validation</link>)
+                </para>
+            </listitem>
+        </itemizedlist>      
+
+        <example id="zend.service.developergarden.sendsms.example">
+            <title>Sending an SMS</title>
+
+            <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_SendSms($config);
+$sms = $service->createSms(
+    '+49-172-123456; +49-177-789012', 
+    'your test message', 
+    'yourname'
+);
+print_r($service->send($sms));]]></programlisting>
+        </example>
+    </sect2>
+
+    <sect2 id="zend.service.developergarden.smsvalidation">
+        <title>SMS Validation</title>
+
+        <para>
+            The SMS Validation service allows the validation of physical phone number to be used
+            as the sender of an SMS.
+        </para>
+
+        <para>
+            First, call <methodname>setValidationKeyword()</methodname> to receive an SMS
+            with a keyword.
+        </para>
+
+        <para>
+            After you get your keyword, you have to use the <methodname>validate()</methodname> to
+            validate your number with the keyword against the service.
+        </para>
+
+        <para>
+            With the method <methodname>getValidatedNumbers()</methodname>, you will get a list
+            of all already validated numbers and the status of each.
+        </para>
+
+        <example id="zend.service.developergarden.smsvalidation.request.example">
+            <title>Request validation keyword</title>
+
+            <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_SmsValidation($config);
+print_r($service->sendValidationKeyword('+49-172-123456'));
+]]></programlisting>
+        </example>
+
+        <example id="zend.service.developergarden.smsvalidation.validate.example">
+            <title>Validate a number with a keyword</title>
+
+            <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_SmsValidation($config);
+print_r($service->validate('TheKeyWord', '+49-172-123456'));
+]]></programlisting>
+        </example>
+
+        <para>
+            To invalidate a validated number, call the method <methodname>inValidate()</methodname>.
+        </para>
+    </sect2>
+
+    <sect2 id="zend.service.developergarden.voicecall">
+        <title>Voice Call</title>
+
+        <para>
+            The Voice Call service is used for setting up a voice connection between two telephone
+            connections. For specific details please read the <ulink
+                url="http://www.developergarden.com/static/docu/en/ch04s02.html">API
+                Documentation</ulink>.
+        </para>
+
+        <para>
+            Normally the Service works as followed:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    Call the first participant.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    If the connection is successful, call the second participant.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    If second participant connects succesfully, both participants are connected.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    The call is open until one of the participants hangs up or the expire mechanism
+                    intercepts.
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <example id="zend.service.developergarden.voicecall.call.example">
+            <title>Call two numbers</title>
+
+            <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_VoiceCall($config);
+$aNumber = '+49-30-000001';
+$bNumber = '+49-30-000002';
+$expiration  = 30;  // seconds
+$maxDuration = 300; // 5 mins
+$newCall = $service->newCall($aNumber, $bNumber, $expiration, $maxDuration);
+echo $newCall->getSessionId();
+]]></programlisting>
+        </example>
+
+        <para>
+            If the call is initiated, you can ask the result object for the session ID and
+            use this session ID for an additional call to the <methodname>callStatus</methodname>
+            or <methodname>tearDownCall()</methodname> methods. The second parameter on the
+            <methodname>callStatus()</methodname> method call extends the expiration for this call.
+        </para>
+
+        <example id="zend.service.developergarden.voicecall.teardown.example">
+            <title>Call two numbers, ask for status, and cancel</title>
+
+            <programlisting language="php"><![CDATA[
+$service = new Zend_Service_DeveloperGarden_VoiceCall($config);
+$aNumber = '+49-30-000001';
+$bNumber = '+49-30-000002';
+$expiration  = 30; // seconds
+$maxDuration = 300; // 5 mins
+
+$newCall = $service->newCall($aNumber, $bNumber, $expiration, $maxDuration);
+
+$sessionId = $newCall->getSessionId();
+
+$service->callStatus($sessionId, true); // extend the call
+
+sleep(10); // sleep 10s and then tearDown
+
+$service->tearDownCall($sessionId); 
+]]></programlisting>
+        </example>
+    </sect2>
+
+    <sect2 id="zend.service.developergarden.conferencecall">
+        <title>ConferenceCall</title>
+
+        <para>
+            Conference Call allows you to setup and start a phone conference.
+        </para>
+        
+        <para>
+            The following features are available:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    Conferences with an immediate start
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    Conferences with a defined start date
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    Recurring conference series
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    Adding, removing, and muting of participants from a conference
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    Templates for conferences
+                </para>
+            </listitem>
+        </itemizedlist>
+        
+        <para>
+            Here is a list of currently implemented API methods:
+        </para>
+        
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <methodname>createConference()</methodname> creates a new conference                    
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>updateConference()</methodname> updates an existing conference
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>commitConference()</methodname> saves the conference, and, if no date
+                    is configured, immediately starts the conference 
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>removeConference()</methodname> removes a conference
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>getConferenceList()</methodname> returns a list of all configured
+                    conferences
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>getConferenceStatus()</methodname> displays information for an
+                    existing conference
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>getParticipantStatus()</methodname> displays status information
+                    about a conference participant
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>newParticipant()</methodname> creates a new participant                    
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>addParticipant()</methodname> adds a participant to a conference
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>updateParticipant()</methodname> updates a participant,
+                    usually to mute or redial the participant
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>removeParticipant()</methodname> removes a participant from a
+                    conference
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>getRunningConference()</methodname> requests the running instance of 
+                    a planned conference
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>createConferenceTemplate()</methodname> creates a new conference 
+                    template
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>getConferenceTemplate()</methodname> requests an existing conference
+                    template
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>updateConferenceTemplate()</methodname> updates existing conference
+                    template details                    
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>removeConferenceTemplate()</methodname> removes a conference template
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>getConferenceTemplateList()</methodname> requests all conference
+                    templates of an owner
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>addConferenceTemplateParticipant()</methodname> adds a conference
+                    participant to conference template
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>getConferenceTemplateParticipant()</methodname> displays details of
+                    a participant of a conference template
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>updateConferenceTemplateParticipant()</methodname> updates 
+                    participant details within a conference template
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>removeConferenceTemplateParticipant()</methodname> removes
+                    a participant from a conference template
+                </para>
+            </listitem>
+        </itemizedlist>
+        
+        <example id="zend.service.developergarden.conferencecall.example">
+            <title>Ad-Hoc conference</title>
+
+            <programlisting language="php"><![CDATA[
+$client = new Zend_Service_DeveloperGarden_ConferenceCall($config);
+
+$conferenceDetails = new Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail(
+    'Zend-Conference',                    // name for the conference
+    'this is my private zend conference', // description
+    60                                    // duration in seconds
+);
+
+$conference = $client->createConference('MyName', $conferenceDetails);
+
+$part1 = new Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail(
+    'Jon',
+    'Doe',
+    '+49-123-4321',
+    'your.name@example.com',
+    true
+);
+
+$client->newParticipant($conference->getConferenceId(), $part1);
+// add a second, third ... participant
+
+$client->commitConference($conference->getConferenceId());
+]]></programlisting>
+        </example>
+    </sect2>
+
+    <sect2 id="zend.service.developergarden.performance">
+        <title>Performance and Caching</title>
+
+        <para>
+            You can setup various caching options to improve the performance for resolving WSDL and
+            authentication tokens.
+        </para>
+
+        <para>
+            First of all, you can setup the internal SoapClient (PHP) caching values.
+        </para>
+        
+        <example id="zend.service.developergarden.performance.wsdlcache.example">
+            <title>WSDL cache options</title>
+
+            <programlisting language="php"><![CDATA[
+Zend_Service_DeveloperGarden_SecurityTokenServer_Cache::setWsdlCache([PHP CONSTANT]);
+]]></programlisting>
+        </example>
+
+        <para>
+            The <constant>[PHP CONSTANT]</constant> can be one of the following values:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <constant>WSDL_CACHE_DISC</constant>: enabled disc caching
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <constant>WSDL_CACHE_MEMORY</constant>: enabled memory caching
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <constant>WSDL_CACHE_BOTH</constant>: enabled disc and memory caching
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <constant>WSDL_CACHE_NONE</constant>: disabled both caching
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            If you want also to cache the result for calls to the SecuritTokenServer
+            you can setup a <classname>Zend_Cache</classname> instance and pass it to the 
+            <methodname>setCache()</methodname>.
+        </para>
+
+        <example id="zend.service.developergarden.performance.cache.example">
+            <title>SecurityTokenServer cache option</title>
+
+            <programlisting language="php"><![CDATA[
+$cache = Zend_Cache::factory('Core', ...);
+Zend_Service_DeveloperGarden_SecurityTokenServer_Cache::setCache($cache);
+]]></programlisting>
+        </example>
+    </sect2>
+</sect1>

+ 399 - 0
library/Zend/Service/DeveloperGarden/BaseUserService.php

@@ -0,0 +1,399 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Client_ClientAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Client/ClientAbstract.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseUserService/GetQuotaInformationResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseUserService/ChangeQuotaPoolResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseUserService_GetAccountBalanceResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseUserService/GetAccountBalanceResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_BaseUserService_AccountBalance
+ */
+require_once 'Zend/Service/DeveloperGarden/BaseUserService/AccountBalance.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_BaseUserService_GetQuotaInformation
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/BaseUserService/GetQuotaInformation.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_BaseUserService_ChangeQuotaPool
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/BaseUserService/ChangeQuotaPool.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_BaseUserService_GetAccountBalance
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/BaseUserService/GetAccountBalance.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_BaseUserService extends Zend_Service_DeveloperGarden_Client_ClientAbstract
+{
+    /**
+     * wsdl file
+     *
+     * @var string
+     */
+    protected $_wsdlFile = 'https://gateway.developer.telekom.com/p3gw-mod-odg-admin/services/ODGBaseUserService?wsdl';
+
+    /**
+     * wsdl file local
+     *
+     * @var string
+     */
+    protected $_wsdlFileLocal = 'Wsdl/ODGBaseUserService.wsdl';
+
+    /**
+     * Response, Request Classmapping
+     *
+     * @var array
+     *
+     */
+    protected $_classMap = array(
+        'getQuotaInformationResponse' =>
+            'Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse',
+        'changeQuotaPoolResponse' =>
+            'Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse',
+        'getAccountBalanceResponse' =>
+            'Zend_Service_DeveloperGarden_Response_BaseUserService_GetAccountBalanceResponse',
+        'AccountBalance' =>
+            'Zend_Service_DeveloperGarden_BaseUserService_AccountBalance',
+    );
+
+    /**
+     * array with all QuotaModuleIds
+     *
+     * @var array
+     */
+    protected $_moduleIds = array(
+        'SmsProduction'            => 'SmsProduction',
+        'SmsSandbox'               => 'SmsSandbox',
+        'VoiceCallProduction'      => 'VoiceButlerProduction',
+        'VoiceCallSandbox'         => 'VoiceButlerSandbox',
+        'ConferenceCallProduction' => 'CCSProduction',
+        'ConferenceCallSandbox'    => 'CCSSandbox',
+        'LocalSearchProduction'    => 'localsearchProduction',
+        'LocalSearchSandbox'       => 'localsearchSandbox',
+        'IPLocationProduction'     => 'IPLocationProduction',
+        'IPLocationSandbox'        => 'IPLocationSandbox'
+    );
+
+    /**
+     * returns an array with all possible ModuleIDs
+     *
+     * @return array
+     */
+    public function getModuleIds()
+    {
+        return $this->_moduleIds;
+    }
+
+    /**
+     * checks the moduleId and throws exception if not valid
+     *
+     * @param string $moduleId
+     * @throws Zend_Service_DeveloperGarden_Client_Exception
+     * @return void
+     */
+    protected function _checkModuleId($moduleId)
+    {
+        if (!in_array($moduleId, $this->_moduleIds)) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception('moduleId not valid');
+        }
+    }
+
+    /**
+     * returns the correct module string
+     *
+     * @param string $module
+     * @param integer $environment
+     * @return string
+     */
+    protected function _buildModuleString($module, $environment)
+    {
+        $moduleString = $module;
+        switch($environment) {
+            case self::ENV_PRODUCTION :
+                $moduleString .= 'Production';
+                break;
+            case self::ENV_SANDBOX :
+                $moduleString .= 'Sandbox';
+                break;
+            default:
+                require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+                throw new Zend_Service_DeveloperGarden_Client_Exception(
+                    'Not a valid environment supplied.'
+                );
+        }
+
+        if (!in_array($moduleString, $this->_moduleIds)) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception(
+                'Not a valid module name supplied.'
+            );
+        }
+
+        return $moduleString;
+    }
+
+    /**
+     * returns the request object with the specific moduleId
+     *
+     * @param string $moduleId
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+     */
+    protected function _getRequestModule($moduleId)
+    {
+        return new Zend_Service_DeveloperGarden_Request_BaseUserService_GetQuotaInformation(
+            $moduleId
+        );
+    }
+
+    /**
+     * returns the request object with the specific moduleId and new quotaMax value
+     *
+     * @param string $moduleId
+     * @param integer $quotaMax
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+     */
+    protected function _getChangeRequestModule($moduleId, $quotaMax)
+    {
+        return new Zend_Service_DeveloperGarden_Request_BaseUserService_ChangeQuotaPool(
+            $moduleId,
+            $quotaMax
+        );
+    }
+
+    /**
+     * returns the Quota Information for SMS Service
+     *
+     * @param int $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+     */
+    public function getSmsQuotaInformation($environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('Sms', $environment);
+        $request  = $this->_getRequestModule($moduleId);
+        return $this->getQuotaInformation($request);
+    }
+
+    /**
+     * returns the Quota Information for VoiceCall Service
+     *
+     * @param int $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+     */
+    public function getVoiceCallQuotaInformation($environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('VoiceButler', $environment);
+        $request  = $this->_getRequestModule($moduleId);
+        return $this->getQuotaInformation($request);
+    }
+
+    /**
+     * returns the Quota Information for SMS ConferenceCall
+     *
+     * @param int $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+     */
+    public function getConfernceCallQuotaInformation($environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('CCS', $environment);
+        $request  = $this->_getRequestModule($moduleId);
+        return $this->getQuotaInformation($request);
+    }
+
+    /**
+     * returns the Quota Information for LocaleSearch Service
+     *
+     * @param int $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+     */
+    public function getLocalSearchQuotaInformation($environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('localsearch', $environment);
+        $request  = $this->_getRequestModule($moduleId);
+        return $this->getQuotaInformation($request);
+    }
+
+    /**
+     * returns the Quota Information for IPLocation Service
+     *
+     * @param int $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+     */
+    public function getIPLocationQuotaInformation($environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('IPLocation', $environment);
+        $request  = $this->_getRequestModule($moduleId);
+        return $this->getQuotaInformation($request);
+    }
+
+    /**
+     * returns the quota information
+     *
+     * @param Zend_Service_DeveloperGarden_Request_BaseUserService $request
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+     */
+    public function getQuotaInformation(
+        Zend_Service_DeveloperGarden_Request_BaseUserService_GetQuotaInformation $request
+    ) {
+        $this->_checkModuleId($request->getModuleId());
+        return $this->getSoapClient()
+                    ->getQuotaInformation($request)
+                    ->parse();
+    }
+
+    /**
+     * sets new user quota for the sms service
+     *
+     * @param integer $quotaMax
+     * @param integer $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
+     */
+    public function changeSmsQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('Sms', $environment);
+        $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
+        return $this->changeQuotaPool($request);
+    }
+
+    /**
+     * sets new user quota for the voice call service
+     *
+     * @param integer $quotaMax
+     * @param integer $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
+     */
+    public function changeVoiceCallQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('VoiceButler', $environment);
+        $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
+        return $this->changeQuotaPool($request);
+    }
+
+    /**
+     * sets new user quota for the IPLocation service
+     *
+     * @param integer $quotaMax
+     * @param integer $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
+     */
+    public function changeIPLocationQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('IPLocation', $environment);
+        $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
+        return $this->changeQuotaPool($request);
+    }
+
+    /**
+     * sets new user quota for the Conference Call service
+     *
+     * @param integer $quotaMax
+     * @param integer $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
+     */
+    public function changeConferenceCallQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('CCS', $environment);
+        $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
+        return $this->changeQuotaPool($request);
+    }
+
+    /**
+     * sets new user quota for the Local Search service
+     *
+     * @param integer $quotaMax
+     * @param integer $environment
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
+     */
+    public function changeLocalSearchQuotaPool($quotaMax = 0, $environment = self::ENV_PRODUCTION)
+    {
+        self::checkEnvironment($environment);
+        $moduleId = $this->_buildModuleString('localsearch', $environment);
+        $request  = $this->_getChangeRequestModule($moduleId, $quotaMax);
+        return $this->changeQuotaPool($request);
+    }
+
+    /**
+     * set new quota values for the defined module
+     *
+     * @param Zend_Service_DeveloperGarden_Request_BaseUserService_ChangeQuotaPool $request
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
+     */
+    public function changeQuotaPool(
+        Zend_Service_DeveloperGarden_Request_BaseUserService_ChangeQuotaPool $request
+    ) {
+        $this->_checkModuleId($request->getModuleId());
+        return $this->getSoapClient()
+                    ->changeQuotaPool($request)
+                    ->parse();
+    }
+
+    /**
+     * get the result for a list of accounts
+     *
+     * @param array $accounts
+     * @return Zend_Service_DeveloperGarden_Response_BaseUserService_GetAccountBalanceResponse
+     */
+    public function getAccountBalance(array $accounts = array())
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_BaseUserService_GetAccountBalance(
+            $accounts
+        );
+        return $this->getSoapClient()
+                    ->getAccountBalance($request)
+                    ->parse();
+    }
+}

+ 62 - 0
library/Zend/Service/DeveloperGarden/BaseUserService/AccountBalance.php

@@ -0,0 +1,62 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_BaseUserService_AccountBalance
+{
+    /**
+     * @var integer
+     */
+    public $Account = null;
+
+    /**
+     * @var integer $Credits
+     */
+    public $Credits = null;
+
+    /**
+     * returns the account id
+     *
+     * @return integer
+     */
+    public function getAccount()
+    {
+        return $this->Account;
+    }
+
+    /**
+     * returns the credits
+     *
+     * @return integer
+     */
+    public function getCredits()
+    {
+        return $this->Credits;
+    }
+}

+ 430 - 0
library/Zend/Service/DeveloperGarden/Client/ClientAbstract.php

@@ -0,0 +1,430 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Client_Soap
+ */
+require_once 'Zend/Service/DeveloperGarden/Client/Soap.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Credential
+ */
+require_once 'Zend/Service/DeveloperGarden/Credential.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_SecurityTokenServer
+ */
+require_once 'Zend/Service/DeveloperGarden/SecurityTokenServer.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+abstract class Zend_Service_DeveloperGarden_Client_ClientAbstract
+{
+    /**
+     * constants for using with the odg api
+     */
+    const ENV_PRODUCTION = 1; // Production Environment
+    const ENV_SANDBOX    = 2; // Sandbox Environment, limited access to the api
+    const ENV_MOCK       = 3; // Api calls are without any functionality
+
+    const PARTICIPANT_MUTE_OFF = 0; // removes mute from participant in a conference
+    const PARTICIPANT_MUTE_ON  = 1; // mute participant in a conference
+    const PARTICIPANT_RECALL   = 2; // recalls the participant in a conference
+
+    /**
+     * array of all possible env types
+     *
+     * @var int
+     */
+    static protected $_consts = null;
+
+    /**
+     * Available options
+     *
+     * @var array available options
+     */
+    protected $_options = array();
+
+    /**
+     * The service id to generate the auth service token
+     *
+     * @var string
+     */
+    protected $_serviceAuthId = 'https://odg.t-online.de';
+
+    /**
+     * Variable that holds the Zend_Service_DeveloperGarden env value
+     *
+     * @var int
+     */
+    protected $_serviceEnvironment = Zend_Service_DeveloperGarden_Client_ClientAbstract::ENV_PRODUCTION;
+
+    /**
+     * wsdl file
+     *
+     * @var string
+     */
+    protected $_wsdlFile = null;
+
+    /**
+     * the local wsdlFile
+     *
+     * @var string
+     */
+    protected $_wsdlFileLocal = null;
+
+    /**
+     * should we use the local wsdl file?
+     *
+     * @var boolean
+     */
+    protected $_useLocalWsdl = true;
+
+    /**
+     * class with credentials
+     *
+     * @var Zend_Service_DeveloperGarden_Credential
+     */
+    protected $_credential = null;
+
+    /**
+     * The internal Soap Client
+     *
+     * @var Zend_Soap_Client
+     */
+    protected $_soapClient = null;
+
+    /**
+     * array with options for classmapping
+     *
+     * @var array
+     */
+    protected $_classMap = array();
+
+    /**
+     * constructor
+     *
+     * @param array $options Associative array of options
+     */
+    public function __construct(array $options = array())
+    {
+        $this->_credential = new Zend_Service_DeveloperGarden_Credential();
+
+        while (list($name, $value) = each($options)) {
+            switch (ucfirst($name)) {
+                case 'Username' :
+                    $this->_credential->setUsername($value);
+                    break;
+                case 'Password' :
+                    $this->_credential->setPassword($value);
+                    break;
+                case 'Realm' :
+                    $this->_credential->setRealm($value);
+                    break;
+                case 'Environment' :
+                    $this->setEnvironment($value);
+            }
+        }
+
+        if (empty($this->_wsdlFile)) {
+            require_once 'Zend/Service/DeveloperGarden/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Exception('_wsdlFile not set for this service.');
+        }
+
+        if (!empty($this->_wsdlFileLocal)) {
+            $this->_wsdlFileLocal = realpath(dirname(__FILE__) . '/../' . $this->_wsdlFileLocal);
+        }
+
+        if (empty($this->_wsdlFileLocal) || $this->_wsdlFileLocal === false) {
+            require_once 'Zend/Service/DeveloperGarden/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Exception('_wsdlFileLocal not set for this service.');
+        }
+    }
+
+    /**
+     * Set an option
+     *
+     * @param  string $name
+     * @param  mixed $value
+     * @throws Zend_Service_DeveloperGarden_Client_Exception
+     * @return Zend_Service_DeveloperGarden_Client_ClientAbstract
+     */
+    public function setOption($name, $value)
+    {
+        if (!is_string($name)) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception('Incorrect option name: ' . $name);
+        }
+        $name = strtolower($name);
+        if (array_key_exists($name, $this->_options)) {
+            $this->_options[$name] = $value;
+        }
+
+        return $this;
+    }
+
+    /**
+     * get an option value from the internal options object
+     *
+     * @param  string $name
+     * @return mixed
+     */
+    public function getOption($name)
+    {
+        $name = strtolower($name);
+        if (array_key_exists($name, $this->_options)) {
+            return $this->_options[$name];
+        }
+
+        return null;
+    }
+
+    /**
+     * returns the internal soap client
+     * if not allready exists we create an instance of
+     * Zend_Soap_Client
+     *
+     * @final
+     * @return Zend_Service_DeveloperGarden_Client_Soap
+     */
+    final public function getSoapClient()
+    {
+        if ($this->_soapClient === null) {
+            /**
+             * init the soapClient
+             */
+            $this->_soapClient = new Zend_Service_DeveloperGarden_Client_Soap(
+                $this->getWsdl(),
+                $this->getClientOptions()
+            );
+            $this->_soapClient->setCredential($this->_credential);
+            $tokenService = new Zend_Service_DeveloperGarden_SecurityTokenServer(
+                array(
+                    'username'    => $this->_credential->getUsername(),
+                    'password'    => $this->_credential->getPassword(),
+                    'environment' => $this->getEnvironment(),
+                    'realm'       => $this->_credential->getRealm(),
+                )
+            );
+            $this->_soapClient->setTokenService($tokenService);
+        }
+
+        return $this->_soapClient;
+    }
+
+    /**
+     * sets new environment
+     *
+     * @param int $environment
+     * @return Zend_Service_DeveloperGarden_Client_ClientAbstract
+     */
+    public function setEnvironment($environment)
+    {
+        self::checkEnvironment($environment);
+        $this->_serviceEnvironment = $environment;
+        return $this;
+    }
+
+    /**
+     * returns the current configured environemnt
+     *
+     * @return int
+     */
+    public function getEnvironment()
+    {
+        return $this->_serviceEnvironment;
+    }
+
+    /**
+     * returns the wsdl file path, a uri or the local path
+     *
+     * @return string
+     */
+    public function getWsdl()
+    {
+        if ($this->_useLocalWsdl) {
+            $retVal = $this->_wsdlFileLocal;
+        } else {
+            $retVal = $this->_wsdlFile;
+        }
+
+        return $retVal;
+    }
+
+    /**
+     * switch to the local wsdl file usage
+     *
+     * @param boolen $use
+     * @return Zend_Service_DeveloperGarden_Client_ClientAbstract
+     */
+    public function setUseLocalWsdl($use = true)
+    {
+        $this->_useLocalWsdl = (boolean) $use;
+        return $this;
+    }
+
+    /**
+     * sets a new wsdl file
+     *
+     * @param string $wsdlFile
+     * @return Zend_Service_DeveloperGarden_Client_ClientAbstract
+     */
+    public function setWsdl($wsdlFile = null)
+    {
+        if (empty($wsdlFile)) {
+            require_once 'Zend/Service/DeveloperGarden/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Exception('_wsdlFile not set for this service.');
+        }
+        $this->_wsdlFile = $wsdlFile;
+        return $this;
+    }
+
+    /**
+     * sets a new local wsdl file
+     *
+     * @param string $wsdlFile
+     * @return Zend_Service_DeveloperGarden_Client_ClientAbstract
+     */
+    public function setLocalWsdl($wsdlFile = null)
+    {
+        if (empty($wsdlFile)) {
+            require_once 'Zend/Service/DeveloperGarden/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Exception('_wsdlFileLocal not set for this service.');
+        }
+        $this->_wsdlFileLocal = $wsdlFile;
+        return $this;
+    }
+
+    /**
+     * returns an array with configured options for this client
+     *
+     * @return array
+     */
+    public function getClientOptions()
+    {
+        $options = array(
+            'soap_version' => SOAP_1_1,
+        );
+        if (!empty($this->_classMap)) {
+            $options['classmap'] = $this->_classMap;
+        }
+        $wsdlCache = Zend_Service_DeveloperGarden_SecurityTokenServer_Cache::getWsdlCache();
+        if (!is_null($wsdlCache)) {
+            $options['cache_wsdl'] = $wsdlCache;
+        }
+        return $options;
+    }
+
+    /**
+     * returns the internal credential object
+     *
+     * @return Zend_Service_DeveloperGarden_Credential
+     */
+    public function getCredential()
+    {
+        return $this->_credential;
+    }
+
+    /**
+     * helper method to create const arrays
+     * @return null
+     */
+    static protected function _buildConstArray()
+    {
+        $r = new ReflectionClass(__CLASS__);
+        foreach ($r->getConstants() as $k => $v) {
+            $s = split('_', $k, 2);
+            if (!isset(self::$_consts[$s[0]])) {
+                self::$_consts[$s[0]] = array();
+            }
+            self::$_consts[$s[0]][$v] = $k;
+        }
+    }
+
+    /**
+     * returns an array of all available environments
+     *
+     * @return array
+     */
+    static public function getParticipantActions()
+    {
+        if (empty(self::$_consts)) {
+            self::_buildConstArray();
+        }
+        return self::$_consts['PARTICIPANT'];
+    }
+
+    /**
+     * checks if the given action is valid
+     * otherwise it @throws Zend_Service_DeveloperGarden_Exception
+     *
+     * @param int $action
+     * @throws Zend_Service_DeveloperGarden_Client_Exception
+     * @return void
+     */
+    static public function checkParticipantAction($action)
+    {
+        if (!array_key_exists($action, self::getParticipantActions())) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception(
+                'Wrong Participant Action ' . $action . ' supplied.'
+            );
+        }
+    }
+
+    /**
+     * returns an array of all available environments
+     *
+     * @return array
+     */
+    static public function getEnvironments()
+    {
+        if (empty(self::$_consts)) {
+            self::_buildConstArray();
+        }
+        return self::$_consts['ENV'];
+    }
+
+    /**
+     * checks if the given environemnt is valid
+     * otherwise it @throws Zend_Service_DeveloperGarden_Client_Exception
+     *
+     * @param int $environment
+     * @throws Zend_Service_DeveloperGarden_Client_Exception
+     * @return void
+     */
+    static public function checkEnvironment($environment)
+    {
+        if (!array_key_exists($environment, self::getEnvironments())) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception(
+                'Wrong environment ' . $environment . ' supplied.'
+            );
+        }
+    }
+}

+ 38 - 0
library/Zend/Service/DeveloperGarden/Client/Exception.php

@@ -0,0 +1,38 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * Zend_Service_Exception
+ */
+require_once 'Zend/Service/DeveloperGarden/Exception.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Client_Exception extends Zend_Service_DeveloperGarden_Exception
+{
+}

+ 340 - 0
library/Zend/Service/DeveloperGarden/Client/Soap.php

@@ -0,0 +1,340 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Soap_Client
+ */
+require_once 'Zend/Soap/Client.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Client_Soap extends Zend_Soap_Client
+{
+    /**
+     * class with credential interface
+     *
+     * @var Zend_Service_DeveloperGarden_Credential
+     */
+    private $_credential = null;
+
+    /**
+     * WSSE Security Ext Namespace
+     *
+     * @var string
+     */
+    const WSSE_NAMESPACE_SECEXT = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd';
+
+    /**
+     * WSSE Saml Namespace
+     *
+     * @var string
+     */
+    const WSSE_NAMESPACE_SAML = 'urn:oasis:names:tc:SAML:2.0:assertion';
+
+    /**
+     * Security Element
+     *
+     * @var string
+     */
+    const WSSE_SECURITY_ELEMENT = 'Security';
+
+    /**
+     * UsernameToken Element
+     *
+     * @var string
+     */
+    const WSSE_ELEMENT_USERNAMETOKEN = 'UsernameToken';
+
+    /**
+     * Usernae Element
+     *
+     * @var string
+     */
+    const WSSE_ELEMENT_USERNAME = 'Username';
+
+    /**
+     * Password Element
+     *
+     * @var string
+     */
+    const WSSE_ELEMENT_PASSWORD = 'Password';
+
+    /**
+     * Password Element WSSE Type
+     *
+     */
+    const WSSE_ELEMENT_PASSWORD_TYPE = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText';
+
+    /**
+     * is this client used by the token service
+     *
+     * @var Zend_Service_DeveloperGarden_SecurityTokenServer
+     */
+    protected $_tokenService = null;
+
+    /**
+     * Perform a SOAP call but first check for adding STS Token or fetch one
+     *
+     * @param string $name
+     * @param array  $arguments
+     * @return mixed
+     */
+    public function __call($name, $arguments)
+    {
+        /**
+         * add WSSE Security header
+         */
+        if (!is_null($this->_tokenService)) {
+            // if login method we addWsseLoginHeader
+            if (in_array('login', $arguments)) {
+                $this->addWsseLoginHeader();
+            } elseif ($name == 'getTokens') {
+                $this->addWsseTokenHeader($this->_tokenService->getLoginToken());
+            } else {
+                $this->addWsseSecurityTokenHeader($this->_tokenService->getTokens());
+            }
+        }
+        return parent::__call($name, $arguments);
+    }
+
+    /**
+     * sets the internal handling for handle token service
+     *
+     * @param Zend_Service_DeveloperGarden_SecurityTokenServer $isTokenService
+     * @return Zend_Service_DeveloperGarden_Client_Soap
+     */
+    public function setTokenService(Zend_Service_DeveloperGarden_SecurityTokenServer $tokenService)
+    {
+        $this->_tokenService = $tokenService;
+        return $this;
+    }
+
+    /**
+     * returns the currently configured tokenService object
+     *
+     * @return Zend_Service_DeveloperGarden_SecurityTokenServer
+     */
+    public function getTokenService()
+    {
+        return $this->_tokenService;
+    }
+
+    /**
+     * Sets new credential callback object
+     *
+     * @param Zend_Service_DeveloperGarden_Credential $credential
+     * @return Zend_Service_DeveloperGarden_Client_Soap
+     */
+    public function setCredential(Zend_Service_DeveloperGarden_Credential $credential)
+    {
+        $this->_credential = $credential;
+        return $this;
+    }
+
+    /**
+     * returns the internal credential callback object
+     *
+     * @return Zend_Service_DeveloperGarden_Credential
+     */
+    public function getCredential()
+    {
+        return $this->_credential;
+    }
+
+    /**
+     * creates the login header and add
+     *
+     * @return SoapHeader
+     */
+    public function getWsseLoginHeader()
+    {
+        $dom = new DOMDocument();
+
+        /**
+         * Security Element
+         */
+        $securityElement = $dom->createElementNS(
+            self::WSSE_NAMESPACE_SECEXT,
+            'wsse:' . self::WSSE_SECURITY_ELEMENT
+        );
+        $securityElement->setAttribute('mustUnderstand', true);
+
+        /**
+         * Username Token Element
+         */
+        $usernameTokenElement = $dom->createElementNS(
+            self::WSSE_NAMESPACE_SECEXT,
+            self::WSSE_ELEMENT_USERNAMETOKEN
+        );
+
+        /**
+         * Username Element
+         */
+        $usernameElement = $dom->createElementNS(
+            self::WSSE_NAMESPACE_SECEXT,
+            self::WSSE_ELEMENT_USERNAME,
+            $this->_credential->getUsername(true)
+        );
+
+        /**
+         * Password Element
+         */
+        $passwordElement = $dom->createElementNS(
+            self::WSSE_NAMESPACE_SECEXT,
+            self::WSSE_ELEMENT_PASSWORD,
+            $this->_credential->getPassword()
+        );
+        $passwordElement->setAttribute('Type', self::WSSE_ELEMENT_PASSWORD_TYPE);
+
+        $usernameTokenElement->appendChild($usernameElement);
+        $usernameTokenElement->appendChild($passwordElement);
+
+        $securityElement->appendChild($usernameTokenElement);
+        $dom->appendChild($securityElement);
+
+        $authSoapVar = new SoapVar(
+            $dom->saveXML($securityElement),
+            XSD_ANYXML,
+            self::WSSE_NAMESPACE_SECEXT,
+            self::WSSE_SECURITY_ELEMENT
+        );
+
+        $authSoapHeader = new SoapHeader(
+            self::WSSE_NAMESPACE_SECEXT,
+            self::WSSE_SECURITY_ELEMENT,
+            $authSoapVar,
+            true
+        );
+
+        return $authSoapHeader;
+    }
+
+    /**
+     * creates the token auth header for direct calls
+     *
+     * @param Zend_Service_DeveloperGarden_Response_SecurityTokenServer_SecurityTokenResponse $token
+     * @return SoapHeader
+     */
+    public function getWsseTokenHeader(
+        Zend_Service_DeveloperGarden_Response_SecurityTokenServer_SecurityTokenResponse $token
+    ) {
+        $format = '<wsse:%s xmlns:wsse="%s" SOAP-ENV:mustUnderstand="1">%s</wsse:%s>';
+        $securityHeader = sprintf(
+            $format,
+            self::WSSE_SECURITY_ELEMENT,
+            self::WSSE_NAMESPACE_SECEXT,
+            $token->getTokenData(),
+            self::WSSE_SECURITY_ELEMENT
+        );
+
+        $authSoapVar = new SoapVar(
+            $securityHeader,
+            XSD_ANYXML,
+            self::WSSE_NAMESPACE_SECEXT,
+            self::WSSE_SECURITY_ELEMENT
+        );
+
+        $authSoapHeader = new SoapHeader(
+            self::WSSE_NAMESPACE_SECEXT,
+            self::WSSE_SECURITY_ELEMENT,
+            $authSoapVar,
+            true
+        );
+
+        return $authSoapHeader;
+    }
+
+    /**
+     * creates the security token auth header for direct calls
+     *
+     * @param Zend_Service_DeveloperGarden_Response_SecurityTokenServer_SecurityTokenResponse $token
+     * @return SoapHeader
+     */
+    public function getWsseSecurityTokenHeader(
+        Zend_Service_DeveloperGarden_Response_SecurityTokenServer_GetTokensResponse $token
+    ) {
+        $format = '<wsse:%s xmlns:wsse="%s" SOAP-ENV:mustUnderstand="1">%s</wsse:%s>';
+        $securityHeader = sprintf(
+            $format,
+            self::WSSE_SECURITY_ELEMENT,
+            self::WSSE_NAMESPACE_SECEXT,
+            $token->getTokenData(),
+            self::WSSE_SECURITY_ELEMENT
+        );
+
+        $authSoapVar = new SoapVar(
+            $securityHeader,
+            XSD_ANYXML,
+            self::WSSE_NAMESPACE_SECEXT,
+            self::WSSE_SECURITY_ELEMENT
+        );
+
+        $authSoapHeader = new SoapHeader(
+            self::WSSE_NAMESPACE_SECEXT,
+            self::WSSE_SECURITY_ELEMENT,
+            $authSoapVar,
+            true
+        );
+
+        return $authSoapHeader;
+    }
+
+    /**
+     * adds the login specific header to the client
+     *
+     * @return Zend_Service_DeveloperGarden_Client_Soap
+     */
+    public function addWsseLoginHeader()
+    {
+        return $this->addSoapInputHeader($this->getWsseLoginHeader());
+    }
+
+    /**
+     * adds the earlier fetched token to the header
+     *
+     * @param Zend_Service_DeveloperGarden_Response_SecurityTokenServer_SecurityTokenResponse $token
+     * @return Zend_Service_DeveloperGarden_Client_Soap
+     */
+    public function addWsseTokenHeader(
+        Zend_Service_DeveloperGarden_Response_SecurityTokenServer_SecurityTokenResponse $token
+    ) {
+        return $this->addSoapInputHeader($this->getWsseTokenHeader($token));
+    }
+
+    /**
+     * adds the earlier fetched token to the header
+     *
+     * @param Zend_Service_DeveloperGarden_Response_SecurityTokenServer_SecurityTokenResponse $token
+     * @return Zend_Service_DeveloperGarden_Client_Soap
+     */
+    public function addWsseSecurityTokenHeader(
+        Zend_Service_DeveloperGarden_Response_SecurityTokenServer_GetTokensResponse $token
+    ) {
+        return $this->addSoapInputHeader($this->getWsseSecurityTokenHeader($token));
+    }
+}

+ 872 - 0
library/Zend/Service/DeveloperGarden/ConferenceCall.php

@@ -0,0 +1,872 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Client_ClientAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Client/ClientAbstract.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/CreateConferenceRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_NewParticipantRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/NewParticipantRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_NewParticipantResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/NewParticipantResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_NewParticipantResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/NewParticipantResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_GetParticipantStatusRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/GetParticipantStatusRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetParticipantStatusResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetParticipantStatusResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetParticipantStatusResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetParticipantStatusResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateParticipantRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateParticipantRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateParticipantResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateParticipantResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveParticipantRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveParticipantRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveParticipantResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveParticipantResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceListRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceListRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceListResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceListResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceListResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceListResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveConferenceRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveConferenceResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveConferenceResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/CCSResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceStatusRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceStatusRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceStatusResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceStatusResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceStatusResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceStatusResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_GetRunningConferenceRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/GetRunningConferenceRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetRunningConferenceResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetRunningConferenceResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetRunningConferenceResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetRunningConferenceResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateListRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceTemplateListRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateListResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateListResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateListResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateListResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceTemplateRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/CreateConferenceTemplateRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceTemplateResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceTemplateResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceTemplateResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceTemplateResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceTemplateRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceTemplateRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveConferenceTemplateRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveConferenceTemplateResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveConferenceTemplateResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateConferenceTemplateRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateConferenceTemplateResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateConferenceTemplateResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateParticipantRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceTemplateParticipantRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateParticipantResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateParticipantResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateParticipantResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateParticipantResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceTemplateParticipantRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveConferenceTemplateParticipantRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveConferenceTemplateParticipantResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveConferenceTemplateParticipantResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateParticipantRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateConferenceTemplateParticipantRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateConferenceTemplateParticipantResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateConferenceTemplateParticipantResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_AddConferenceTemplateParticipantRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/AddConferenceTemplateParticipantRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_AddConferenceTemplateParticipantResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/AddConferenceTemplateParticipantResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_AddConferenceTemplateParticipantResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/AddConferenceTemplateParticipantResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_CommitConferenceRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/CommitConferenceRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_CommitConferenceResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/CommitConferenceResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateConferenceRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateConferenceResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateConferenceResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+ */
+require_once 'Zend/Service/DeveloperGarden/ConferenceCall/ConferenceDetail.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+ */
+require_once 'Zend/Service/DeveloperGarden/ConferenceCall/ConferenceSchedule.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_ConferenceCall_Participant
+ */
+require_once 'Zend/Service/DeveloperGarden/ConferenceCall/Participant.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+ */
+require_once 'Zend/Service/DeveloperGarden/ConferenceCall/ParticipantDetail.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_ConferenceCall_ParticipantStatus
+ */
+require_once 'Zend/Service/DeveloperGarden/ConferenceCall/ParticipantStatus.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_ConferenceCall_ConferenceAccount
+ */
+require_once 'Zend/Service/DeveloperGarden/ConferenceCall/ConferenceAccount.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_ConferenceCall
+    extends Zend_Service_DeveloperGarden_Client_ClientAbstract
+{
+    /**
+     * wsdl file
+     *
+     * @var string
+     */
+    protected $_wsdlFile = 'https://gateway.developer.telekom.com/p3gw-mod-odg-ccs/services/ccsPort?wsdl';
+
+    /**
+     * the local WSDL file
+     *
+     * @var string
+     */
+    protected $_wsdlFileLocal = 'Wsdl/ccsPort.wsdl';
+
+    /**
+     * Response, Request Classmapping
+     *
+     * @var array
+     *
+     */
+    protected $_classMap = array(
+        //Struct
+        'ConferenceDetailStruct'  => 'Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail',
+        'ConferenceAccStruct'     => 'Zend_Service_DeveloperGarden_ConferenceCall_ConferenceAccount',
+        'ScheduleStruct'          => 'Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule',
+        'ParticipantStruct'       => 'Zend_Service_DeveloperGarden_ConferenceCall_Participant',
+        'ParticipantDetailStruct' => 'Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail',
+        'ParticipantStatusStruct' => 'Zend_Service_DeveloperGarden_ConferenceCall_ParticipantStatus',
+
+        //Responses
+        'CCSResponseType' => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType',
+
+        //Conference
+        'createConferenceResponse'         => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceResponse',
+        'createConferenceResponseType'     => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceResponseType',
+        'removeConferenceResponse'         => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveConferenceResponse',
+        'commitConferenceResponse'         => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_CommitConferenceResponse',
+        'updateConferenceResponse'         => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateConferenceResponse',
+        'getConferenceStatusResponse'      => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceStatusResponse',
+        'getConferenceStatusResponseType'  => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceStatusResponseType',
+        'getRunningConferenceResponse'     => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetRunningConferenceResponse',
+        'getRunningConferenceResponseType' => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetRunningConferenceResponseType',
+        'getConferenceListResponse'        => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceListResponse',
+        'getConferenceListResponseType'    => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceListResponseType',
+
+        //Participant
+        'newParticipantResponse'           => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_NewParticipantResponse',
+        'newParticipantResponseType'       => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_NewParticipantResponseType',
+        'removeParticipantResponse'        => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveParticipantResponse',
+        'updateParticipantResponse'        => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateParticipantResponse',
+        'getParticipantStatusResponse'     => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetParticipantStatusResponse',
+        'getParticipantStatusResponseType' => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetParticipantStatusResponseType',
+
+        //Templates
+        'createConferenceTemplateResponse'             => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceTemplateResponse',
+        'createConferenceTemplateResponseType'         => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceTemplateResponseType',
+        'getConferenceTemplateResponse'                => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateResponse',
+        'getConferenceTemplateResponseType'            => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateResponseType',
+        'updateConferenceTemplateResponse'             => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateConferenceTemplateResponse',
+        'removeConferenceTemplateResponse'             => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveConferenceTemplateResponse',
+        'getConferenceTemplateListResponse'            => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateListResponse',
+        'getConferenceTemplateListResponseType'        => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateListResponseType',
+        'addConferenceTemplateParticipantResponse'     => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_AddConferenceTemplateParticipantResponse',
+        'addConferenceTemplateParticipantResponseType' => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_AddConferenceTemplateParticipantResponseType',
+        'getConferenceTemplateParticipantResponse'     => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateParticipantResponse',
+        'getConferenceTemplateParticipantResponseType' => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateParticipantResponseType',
+        'updateConferenceTemplateParticipantResponse'  => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateConferenceTemplateParticipantResponse',
+        'removeConferenceTemplateParticipantResponse'  => 'Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveConferenceTemplateParticipantResponse',
+    );
+
+    /**
+     * creates a new conference, ownerId should be between 3 and 39
+     * chars
+     *
+     * @param string $ownerId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $conferenceSchedule
+     * @param integer $account
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceResponseType
+     */
+    public function createConference($ownerId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $conferenceSchedule = null,
+        $account = null
+    ) {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest(
+            $this->getEnvironment(),
+            $ownerId,
+            $conferenceDetails,
+            $conferenceSchedule,
+            $account
+        );
+
+        $result = $this->getSoapClient()->createConference(array(
+            'createConferenceRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * commits the given conference
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CommitConferenceResponse
+     */
+    public function commitConference($conferenceId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_CommitConferenceRequest(
+            $this->getEnvironment(),
+            $conferenceId
+        );
+
+        $result = $this->getSoapClient()->commitConference(array(
+            'commitConferenceRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * updates a conference with the given parameter
+     *
+     * @param string $conferenceId
+     * @param string $ownerId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $conferenceSchedule
+     * @param string $account
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public function updateConference(
+        $conferenceId,
+        $ownerId = null,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails = null,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $conferenceSchedule = null,
+        $account = null
+    ) {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceRequest(
+            $this->getEnvironment(),
+            $conferenceId,
+            $ownerId,
+            $conferenceDetails,
+            $conferenceSchedule,
+            $account
+        );
+
+        $result = $this->getSoapClient()->updateConference(array(
+            'updateConferenceRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * get conference status details
+     *
+     * @param string $conferenceId
+     * @param integer $what
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceStatusResponseType
+     */
+    public function getConferenceStatus($conferenceId, $what = 0)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceStatusRequest(
+            $this->getEnvironment(),
+            $conferenceId,
+            $what
+        );
+
+        $result = $this->getSoapClient()->getConferenceStatus(array(
+            'getConferenceStatusRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * returns the conferenceId of the running conference instance for a planned
+     * recurring conference or the current conferenceId
+     *
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_GetRunningConferenceResponseType
+     */
+    public function getRunningConference($conferenceId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_GetRunningConferenceRequest(
+            $this->getEnvironment(),
+            $conferenceId
+        );
+
+        $result = $this->getSoapClient()->getRunningConference(array(
+            'getRunningConferenceRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * remove a conference
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public function removeConference($conferenceId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceRequest(
+            $this->getEnvironment(),
+            $conferenceId
+        );
+
+        $result = $this->getSoapClient()->removeConference(array(
+            'removeConferenceRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * returns a list of conferences
+     *
+     * @param integer $what
+     * @param string $ownerId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceListResponseType
+     */
+    public function getConferenceList($what = 0, $ownerId = null)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceListRequest(
+            $this->getEnvironment(),
+            $what,
+            $ownerId
+        );
+
+        $result = $this->getSoapClient()->getConferenceList(array(
+            'getConferenceListRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * adds a new participant to the given conference
+     *
+     * @param string $conferenceId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_NewParticipantResponseType
+     */
+    public function newParticipant(
+        $conferenceId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+    ) {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_NewParticipantRequest(
+            $this->getEnvironment(),
+            $conferenceId,
+            $participant
+        );
+
+        $result = $this->getSoapClient()->newParticipant(array(
+            'newParticipantRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * fetches the participant details for the given conferenceId
+     *
+     * @param string $conferenceId
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_GetParticipantStatusResponseType
+     */
+    public function getParticipantStatus($conferenceId, $participantId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_GetParticipantStatusRequest(
+            $this->getEnvironment(),
+            $conferenceId,
+            $participantId
+        );
+
+        $result = $this->getSoapClient()->getParticipantStatus(array(
+            'getParticipantStatusRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * removes the given participant from the conference
+     *
+     * @param string $conferenceId
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public function removeParticipant($conferenceId, $participantId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveParticipantRequest(
+            $this->getEnvironment(),
+            $conferenceId,
+            $participantId
+        );
+
+        $result = $this->getSoapClient()->removeParticipant(array(
+            'removeParticipantRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * updates the participant in the given conference
+     *
+     * @param string $conferenceId
+     * @param string $participantId
+     * @param integer $action
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public function updateParticipant(
+        $conferenceId,
+        $participantId,
+        $action = null,
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant = null
+    ) {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateParticipantRequest(
+            $this->getEnvironment(),
+            $conferenceId,
+            $participantId,
+            $action,
+            $participant
+        );
+
+        $result = $this->getSoapClient()->updateParticipant(array(
+            'updateParticipantRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * creates a new conference template
+     *
+     * @param string $ownerId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails
+     * @param array $participants
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceTemplateResponseType
+     */
+    public function createConferenceTemplate(
+        $ownerId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails,
+        array $participants = null
+    ) {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceTemplateRequest(
+            $this->getEnvironment(),
+            $ownerId,
+            $conferenceDetails,
+            $participants
+        );
+
+        $result = $this->getSoapClient()->createConferenceTemplate(array(
+            'createConferenceTemplateRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * get a specific template
+     *
+     * @param string $templateId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateResponseType
+     */
+    public function getConferenceTemplate($templateId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateRequest(
+            $this->getEnvironment(),
+            $templateId
+        );
+
+        $result = $this->getSoapClient()->getConferenceTemplate(array(
+            'getConferenceTemplateRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * updates a conference template
+     *
+     * @param string $templateId
+     * @param string $initiatorId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public function updateConferenceTemplate(
+        $templateId,
+        $initiatorId = null,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails = null
+    ) {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateRequest(
+            $this->getEnvironment(),
+            $templateId,
+            $initiatorId,
+            $conferenceDetails
+        );
+
+        $result = $this->getSoapClient()->updateConferenceTemplate(array(
+            'updateConferenceTemplateRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * remove a conference template
+     *
+     * @param string $templateId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public function removeConferenceTemplate($templateId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceTemplateRequest(
+            $this->getEnvironment(),
+            $templateId
+        );
+
+        $result = $this->getSoapClient()->removeConferenceTemplate(array(
+            'removeConferenceTemplateRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * lists all available conference templates for the given owner
+     *
+     * @param string $ownerId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateListResponseType
+     */
+    public function getConferenceTemplateList($ownerId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateListRequest(
+            $this->getEnvironment(),
+            $ownerId
+        );
+
+        $result = $this->getSoapClient()->getConferenceTemplateList(array(
+            'getConferenceTemplateListRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * adds a new participants to the template
+     *
+     * @param string $templateId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_AddConferenceTemplateParticipantResponseType
+     */
+    public function addConferenceTemplateParticipant(
+        $templateId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+    ) {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_AddConferenceTemplateParticipantRequest(
+            $this->getEnvironment(),
+            $templateId,
+            $participant
+        );
+
+        $result = $this->getSoapClient()->addConferenceTemplateParticipant(array(
+            'addConferenceTemplateParticipantRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * returns a praticipant for the given templateId
+     *
+     * @param string $templateId
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateParticipantResponseType
+     */
+    public function getConferenceTemplateParticipant($templateId, $participantId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateParticipantRequest(
+            $this->getEnvironment(),
+            $templateId,
+            $participantId
+        );
+
+        $result = $this->getSoapClient()->getConferenceTemplateParticipant(array(
+            'getConferenceTemplateParticipantRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * updates the participants details
+     *
+     * @param string $templateId
+     * @param string $participantId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public function updateConferenceTemplateParticipant(
+        $templateId,
+        $participantId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+    ) {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateParticipantRequest(
+            $this->getEnvironment(),
+            $templateId,
+            $participantId,
+            $participant
+        );
+
+        $result = $this->getSoapClient()->updateConferenceTemplateParticipant(array(
+            'updateConferenceTemplateParticipantRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+
+    /**
+     * removes a praticipant from the given templateId
+     *
+     * @param string $templateId
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public function removeConferenceTemplateParticipant($templateId, $participantId)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceTemplateParticipantRequest(
+            $this->getEnvironment(),
+            $templateId,
+            $participantId
+        );
+
+        $result = $this->getSoapClient()->removeConferenceTemplateParticipant(array(
+            'removeConferenceTemplateParticipantRequest' => $request
+        ));
+
+        return $result->parse();
+    }
+}

+ 62 - 0
library/Zend/Service/DeveloperGarden/ConferenceCall/ConferenceAccount.php

@@ -0,0 +1,62 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_ConferenceCall_ConferenceAccount
+{
+    /**
+     * type of billing
+     *
+     * @var string
+     */
+    public $billingtype = null;
+
+    /**
+     * account id
+     *
+     * @var integer
+     */
+    public $account = null;
+
+    /**
+     * @return integer
+     */
+    public function getAccount()
+    {
+        return $this->account;
+    }
+
+    /**
+     * @return string
+     */
+    public function getBillingType()
+    {
+        return $this->billingtype;
+    }
+}

+ 129 - 0
library/Zend/Service/DeveloperGarden/ConferenceCall/ConferenceDetail.php

@@ -0,0 +1,129 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+{
+    /**
+     * name of this conference
+     *
+     * @var string
+     */
+    public $name = null;
+
+    /**
+     * description of this conference
+     *
+     * @var string
+     */
+    public $description = null;
+
+    /**
+     * duration in seconds of this conference
+     *
+     * @var integer
+     */
+    public $duration = null;
+
+    /**
+     * create object
+     *
+     * @param string $name
+     * @param string $description
+     * @param integer $duration
+     *
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public function __construct($name, $description, $duration)
+    {
+        $this->setName($name);
+        $this->setDescription($description);
+        $this->setDuration($duration);
+    }
+
+    /**
+     * sets new duration for this conference in seconds
+     *
+     * @param integer $duration
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public function setDuration($duration)
+    {
+        $this->duration = $duration;
+        return $this;
+    }
+
+    /**
+     * @return string
+     */
+    public function getDuration()
+    {
+        return $this->duration;
+    }
+
+    /**
+     * set the description of this conference
+     *
+     * @param $description the $description to set
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public function setDescription($description)
+    {
+        $this->description = $description;
+        return $this;
+    }
+
+    /**
+     * @return string
+     */
+    public function getDescription()
+    {
+        return $this->description;
+    }
+
+    /**
+     * sets the name of this conference
+     *
+     * @param string $name
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public function setName($name)
+    {
+        $this->name = $name;
+        return $this;
+    }
+
+    /**
+     * @return string
+     */
+    public function getName()
+    {
+        return $this->name;
+    }
+}

+ 262 - 0
library/Zend/Service/DeveloperGarden/ConferenceCall/ConferenceSchedule.php

@@ -0,0 +1,262 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+{
+    /**
+     * @var integer
+     */
+    public $minute = null;
+
+    /**
+     * @var integer
+     */
+    public $hour = null;
+
+    /**
+     * @var integer
+     */
+    public $dayOfMonth = null;
+
+    /**
+     * @var integer
+     */
+    public $month = null;
+
+    /**
+     * @var integer
+     */
+    public $year = null;
+
+    /**
+     * @var integer
+     */
+    public $recurring = 0;
+
+    /**
+     * @var integer
+     */
+    public $notify = 0;
+
+    /**
+     * possible recurring values
+     *
+     * @var array
+     */
+    private $_recurringValues = array(
+        0 => 'no recurring',
+        1 => 'hourly',
+        2 => 'daily',
+        3 => 'weekly',
+        4 => 'monthly',
+    );
+
+    /**
+     * constructor for schedule object, all times are in UTC
+     *
+     * @param integer $minute
+     * @param integer $hour
+     * @param integer $dayOfMonth
+     * @param integer $month
+     * @param integer $year
+     * @param integer $recurring
+     * @param integer $notify
+     */
+    public function __construct($minute, $hour, $dayOfMonth, $month, $year, $recurring = 0, $notify = 0)
+    {
+        $this->setMinute($minute)
+             ->setHour($hour)
+             ->setDayOfMonth($dayOfMonth)
+             ->setMonth($month)
+             ->setYear($year)
+             ->setRecurring($recurring)
+             ->setNotify($notify);
+    }
+
+    /**
+     * returns the value of $minute
+     *
+     * @return integer
+     */
+    public function getMinute()
+    {
+        return $this->minute;
+    }
+
+    /**
+     * sets $minute
+     *
+     * @param integer $minute
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public function setMinute($minute)
+    {
+        $this->minute = $minute;
+        return $this;
+    }
+
+    /**
+     * returns the value of $hour
+     *
+     * @return integer
+     */
+    public function getHour()
+    {
+        return $this->hour;
+    }
+
+    /**
+     * sets $hour
+     *
+     * @param integer $hour
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public function setHour($hour)
+    {
+        $this->hour = $hour;
+        return $this;
+    }
+
+    /**
+     * returns the value of $dayOfMonth
+     *
+     * @return integer
+     */
+    public function getDayOfMonth()
+    {
+        return $this->dayOfMonth;
+    }
+
+    /**
+     * sets $dayOfMonth
+     *
+     * @param integer $dayOfMonth
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public function setDayOfMonth($dayOfMonth)
+    {
+        $this->dayOfMonth = $dayOfMonth;
+        return $this;
+    }
+
+    /**
+     * returns the value of $month
+     *
+     * @return integer
+     */
+    public function getMonth()
+    {
+        return $this->month;
+    }
+
+    /**
+     * sets $month
+     *
+     * @param integer $month
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public function setMonth($month)
+    {
+        $this->month = $month;
+        return $this;
+    }
+
+    /**
+     * returns the value of $year
+     *
+     * @return integer
+     */
+    public function getYear()
+    {
+        return $this->year;
+    }
+
+    /**
+     * sets $year
+     *
+     * @param integer $year
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public function setYear($year)
+    {
+        $this->year = $year;
+        return $this;
+    }
+
+    /**
+     * returns the value of $recurring
+     *
+     * @return integer
+     */
+    public function getRecurring()
+    {
+        return $this->recurring;
+    }
+
+    /**
+     * sets $recurring
+     *
+     * @param integer $recurring
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public function setRecurring($recurring)
+    {
+        if (!array_key_exists($recurring, $this->_recurringValues)) {
+            require_once 'Zend/Service/DeveloperGarden/ConferenceCall/Exception.php';
+            throw new Zend_Service_DeveloperGarden_ConferenceCall_Exception(
+                'Unknown ConferenceCall recurring mode.'
+            );
+        }
+        $this->recurring = $recurring;
+        return $this;
+    }
+
+    /**
+     * returns the value of $notify
+     *
+     * @return integer
+     */
+    public function getNotify()
+    {
+        return $this->notify;
+    }
+
+    /**
+     * sets $notify
+     *
+     * @param integer $notify
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public function setNotify($notify)
+    {
+        $this->notify = $notify;
+        return $this;
+    }
+}

+ 38 - 0
library/Zend/Service/DeveloperGarden/ConferenceCall/Exception.php

@@ -0,0 +1,38 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * Zend_Service_Exception
+ */
+require_once 'Zend/Service/DeveloperGarden/Exception.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_ConferenceCall_Exception extends Zend_Service_DeveloperGarden_Exception
+{
+}

+ 84 - 0
library/Zend/Service/DeveloperGarden/ConferenceCall/Participant.php

@@ -0,0 +1,84 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Validate_Ip
+ */
+require_once 'Zend/Validate/Ip.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_ConferenceCall_Participant
+{
+    /**
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public $detail = null;
+
+    /**
+     * @var string
+     */
+    public $participantId = null;
+
+    /**
+     * @var array
+     */
+    public $status = null;
+
+    /**
+     * participant details
+     *
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function getDetail()
+    {
+        return $this->detail;
+    }
+
+    /**
+     * participant id
+     *
+     * @return string
+     */
+    public function getParticipantId()
+    {
+        return $this->participantId;
+    }
+
+    /**
+     * get the status
+     * returns an
+     * array of Zend_Service_DeveloperGarden_ConferenceCall_ParticipantStatus
+     *
+     * @return array
+     */
+    public function getStatus()
+    {
+        return $this->status;
+    }
+}

+ 195 - 0
library/Zend/Service/DeveloperGarden/ConferenceCall/ParticipantDetail.php

@@ -0,0 +1,195 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+/**
+ * @see Zend_Validate_EmailAddress
+ */
+require_once 'Zend/Validate/EmailAddress.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+{
+    /**
+     * @var string
+     */
+    public $firstName = null;
+
+    /**
+     * @var string
+     */
+    public $lastName = null;
+
+    /**
+     * @var string
+     */
+    public $number = null;
+
+    /**
+     * @var string
+     */
+    public $email = null;
+
+    /**
+     * @var integer
+     */
+    public $flags = null;
+
+    /**
+     * constructor for participant object
+     *
+     * @param string $firstName
+     * @param string $lastName
+     * @param string $number
+     * @param string $email
+     * @param integer $isInitiator
+     */
+    public function __construct($firstName, $lastName, $number, $email, $isInitiator = false)
+    {
+        $this->setFirstName($firstName)
+             ->setLastName($lastName)
+             ->setNumber($number)
+             ->setEmail($email)
+             ->setFlags((int) $isInitiator);
+    }
+
+    /**
+     * returns the value of $firstName
+     *
+     * @return string
+     */
+    public function getFirstName()
+    {
+        return $this->firstName;
+    }
+
+    /**
+     * sets $firstName
+     *
+     * @param string $firstName
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function setFirstName($firstName)
+    {
+        $this->firstName = $firstName;
+        return $this;
+    }
+
+    /**
+     * returns the value of $lastName
+     *
+     * @return string
+     */
+    public function getLastName()
+    {
+        return $this->lastName;
+    }
+
+    /**
+     * sets $lastName
+     *
+     * @param string $lastName
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function setLastName($lastName)
+    {
+        $this->lastName = $lastName;
+        return $this;
+    }
+
+    /**
+     * returns the value of $number
+     *
+     * @return string
+     */
+    public function getNumber()
+    {
+        return $this->number;
+    }
+
+    /**
+     * sets $number
+     *
+     * @param string $number
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function setNumber($number)
+    {
+        $this->number = $number;
+        return $this;
+    }
+
+    /**
+     * returns the value of $email
+     *
+     * @return string
+     */
+    public function getEmail()
+    {
+        return $this->email;
+    }
+
+    /**
+     * sets $email
+     *
+     * @param string email
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function setEmail($email)
+    {
+        $validator = new Zend_Validate_EmailAddress();
+
+        if (!$validator->isValid($email)) {
+            require_once 'Zend/Service/DeveloperGarden/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Exception('Not a valid e-mail address.');
+        }
+        $this->email = $email;
+        return $this;
+    }
+
+    /**
+     * returns the value of $flags
+     *
+     * @return integer
+     */
+    public function getFlags()
+    {
+        return $this->flags;
+    }
+
+    /**
+     * sets $flags (ie, initiator flag)
+     *
+     * @param integer $flags
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function setFlags($flags)
+    {
+        $this->flags = $flags;
+        return $this;
+    }
+}

+ 103 - 0
library/Zend/Service/DeveloperGarden/ConferenceCall/ParticipantStatus.php

@@ -0,0 +1,103 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Validate_Ip
+ */
+require_once 'Zend/Validate/Ip.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_ConferenceCall_ParticipantStatus
+{
+    /**
+     * @var string
+     */
+    public $name = null;
+
+    /**
+     * @var string
+     */
+    public $value = null;
+
+    /**
+     * constructor for participant status object
+     *
+     * @param string $vame
+     * @param string $value
+     */
+    public function __construct($name, $value = null)
+    {
+        $this->setName($name)
+             ->setValue($value);
+    }
+
+    /**
+     * returns the value of $name
+     *
+     * @return string
+     */
+    public function getName()
+    {
+        return $this->name;
+    }
+
+    /**
+     * sets $name
+     *
+     * @param string $name
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantStatus
+     */
+    public function setName($name)
+    {
+        $this->name = $name;
+        return $this;
+    }
+
+    /**
+     * returns the value of $value
+     *
+     * @return string
+     */
+    public function getValue()
+    {
+        return $this->value;
+    }
+
+    /**
+     * sets $value
+     *
+     * @param string $value
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantStatus
+     */
+    public function setValue($value = null)
+    {
+        $this->value = $value;
+        return $this;
+    }
+}

+ 186 - 0
library/Zend/Service/DeveloperGarden/Credential.php

@@ -0,0 +1,186 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Credential
+{
+    /**
+     * Service Auth Username
+     *
+     * @var string
+     */
+    protected $_username = null;
+
+    /**
+     * Service Password
+     *
+     * @var string
+     */
+    protected $_password = null;
+
+    /**
+     * Service Realm - default t-online.de
+     *
+     * @var string
+     */
+    protected $_realm = 't-online.de';
+
+    /**
+     * constructor to init the internal data
+     *
+     * @param string $username
+     * @param string $password
+     * @param string $realm
+     * @return Zend_Service_DeveloperGarden_Credential
+     */
+    public function __construct($username = null, $password = null, $realm = null)
+    {
+        if (!empty($username)) {
+            $this->setUsername($username);
+        }
+        if (!empty($password)) {
+            $this->setPassword($password);
+        }
+        if (!empty($realm)) {
+            $this->setRealm($realm);
+        }
+    }
+
+    /**
+     * split the password into an array
+     *
+     * @param string $password
+     * @throws Zend_Service_DeveloperGarden_Client_Exception
+     * @return Zend_Service_DeveloperGarden_Client_ClientAbstract
+     */
+    public function setPassword($password = null)
+    {
+        if (empty($password)) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception('Empty password not permitted.');
+        }
+
+        if (!is_string($password)) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception('Password must be a string.');
+        }
+
+        $this->_password = $password;
+        return $this;
+    }
+
+    /**
+     * returns the current configured password
+     *
+     * @return string
+     */
+    public function getPassword()
+    {
+        return $this->_password;
+    }
+
+    /**
+     * set the new login
+     *
+     * @param string $username
+     * @throws Zend_Service_DeveloperGarden_Client_Exception
+     * @return Zend_Service_DeveloperGarden_Client_ClientAbstract
+     */
+    public function setUsername($username = null)
+    {
+        if (empty($username)) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception('Empty username not permitted.');
+        }
+
+        if (!is_string($username)) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception('Username must be a string.');
+        }
+
+        $this->_username = $username;
+        return $this;
+    }
+
+    /**
+     * returns the username
+     *
+     * if $withRealm == true we combine username and realm like
+     * username@realm
+     *
+     * @param $boolean withRealm
+     * @return string|null
+     */
+    public function getUsername($withRealm = false)
+    {
+        $retValue = $this->_username;
+        if ($withRealm) {
+            $retValue = sprintf(
+                '%s@%s',
+                $this->_username,
+                $this->_realm
+            );
+        }
+        return $retValue;
+    }
+
+    /**
+     * set the new realm
+     *
+     * @param string $realm
+     * @throws Zend_Service_DeveloperGarden_Client_Exception
+     * @return Zend_Service_DeveloperGarden_Client_ClientAbstract
+     */
+    public function setRealm($realm = null)
+    {
+        if (empty($realm)) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception('Empty realm not permitted.');
+        }
+
+        if (!is_string($realm)) {
+            require_once 'Zend/Service/DeveloperGarden/Client/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Client_Exception('Realm must be a string.');
+        }
+
+        $this->_realm = $realm;
+        return $this;
+    }
+
+    /**
+     * returns the realm
+     *
+     * @return string|null
+     */
+    public function getRealm()
+    {
+        return $this->_realm;
+    }
+}
+

+ 38 - 0
library/Zend/Service/DeveloperGarden/Exception.php

@@ -0,0 +1,38 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * Zend_Service_Exception
+ */
+require_once 'Zend/Service/Exception.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Exception extends Zend_Service_Exception
+{
+}

+ 120 - 0
library/Zend/Service/DeveloperGarden/IpLocation.php

@@ -0,0 +1,120 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Client_ClientAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Client/ClientAbstract.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_IpLocation_LocateIPResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/IpLocation/LocateIPResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_IpLocation_LocateIPResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/IpLocation/LocateIPResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_IpLocation_IPAddressLocationType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/IpLocation/IPAddressLocationType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_IpLocation_RegionType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/IpLocation/RegionType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_IpLocation_GeoCoordinatesType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/IpLocation/GeoCoordinatesType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_IpLocation_CityType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/IpLocation/CityType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_IpLocation_LocateIPRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/IpLocation/LocateIPRequest.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_IpLocation 
+    extends Zend_Service_DeveloperGarden_Client_ClientAbstract
+{
+    /**
+     * wsdl file
+     *
+     * @var string
+     */
+    protected $_wsdlFile = 'https://gateway.developer.telekom.com/p3gw-mod-odg-iplocation/services/IPLocation?wsdl';
+
+    /**
+     * wsdl file local
+     *
+     * @var string
+     */
+    protected $_wsdlFileLocal = 'Wsdl/IPLocation.wsdl';
+
+    /**
+     * Response, Request Classmapping
+     *
+     * @var array
+     *
+     */
+    protected $_classMap = array(
+        'LocateIPResponseType'  => 'Zend_Service_DeveloperGarden_Response_IpLocation_LocateIPResponseType',
+        'IPAddressLocationType' => 'Zend_Service_DeveloperGarden_Response_IpLocation_IPAddressLocationType',
+        'RegionType'            => 'Zend_Service_DeveloperGarden_Response_IpLocation_RegionType',
+        'GeoCoordinatesType'    => 'Zend_Service_DeveloperGarden_Response_IpLocation_GeoCoordinatesType',
+        'CityType'              => 'Zend_Service_DeveloperGarden_Response_IpLocation_CityType',
+    );
+
+    /**
+     * locate the given Ip address or array of addresses
+     *
+     * @param Zend_Service_DeveloperGarden_IpLocation_IpAddress|string $ip
+     * @return Zend_Service_DeveloperGarden_Response_IpLocation_LocateIPResponse
+     */
+    public function locateIP($ip)
+    {
+        $request = new Zend_Service_DeveloperGarden_Request_IpLocation_LocateIPRequest(
+            $this->getEnvironment(),
+            $ip
+        );
+
+        $result = $this->getSoapClient()->locateIP($request);
+
+        $response = new Zend_Service_DeveloperGarden_Response_IpLocation_LocateIPResponse($result);
+        return $response->parse();
+    }
+}

+ 130 - 0
library/Zend/Service/DeveloperGarden/IpLocation/IpAddress.php

@@ -0,0 +1,130 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Validate_Ip
+ */
+require_once 'Zend/Validate/Ip.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_IpLocation_IpAddress
+{
+    /**
+     * the ip version
+     * ip v4 = 4
+     * ip v6 = 6
+     *
+     * @var integer
+     */
+    private $_version = 4;
+
+    /**
+     * currently supported versions
+     *
+     * @var array
+     */
+    private $_versionSupported = array(
+        4,
+        //6, not supported yet
+    );
+
+    private $_address = null;
+
+    /**
+     * create ipaddress object
+     *
+     * @param string $ip
+     * @param integer $version
+     *
+     * @return Zend_Service_Developergarde_IpLocation_IpAddress
+     */
+    public function __construct($ip, $version = 4)
+    {
+        $this->setIp($ip)
+             ->setVersion($version);
+    }
+
+    /**
+     * sets new ip address
+     *
+     * @param string $ip
+     * @throws Zend_Service_DeveloperGarden_Exception
+     * @return Zend_Service_DeveloperGarden_IpLocation_IpAddress
+     */
+    public function setIp($ip)
+    {
+        $validator = new Zend_Validate_Ip();
+
+        if (!$validator->isValid($ip)) {
+            $message = $validator->getMessages();
+            require_once 'Zend/Service/DeveloperGarden/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Exception($message['notIpAddress']);
+        }
+        $this->_address = $ip;
+        return $this;
+    }
+
+    /**
+     * returns the current address
+     *
+     * @return string
+     */
+    public function getIp()
+    {
+        return $this->_address;
+    }
+
+    /**
+     * sets new ip version
+     *
+     * @param integer $version
+     * @throws Zend_Service_DeveloperGarden_Exception
+     * @return Zend_Service_DeveloperGarden_IpLocation_IpAddress
+     */
+    public function setVersion($version)
+    {
+        if (!in_array($version, $this->_versionSupported)) {
+            require_once 'Zend/Service/DeveloperGarden/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Exception('Ip Version ' . (int)$version . ' is not supported.');
+        }
+
+        $this->_version = $version;
+        return $this;
+    }
+
+    /**
+     * returns the ip version
+     *
+     * @return integer
+     */
+    public function getVersion()
+    {
+        return $this->_version;
+    }
+}

+ 105 - 0
library/Zend/Service/DeveloperGarden/LocalSearch.php

@@ -0,0 +1,105 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Client_ClientAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Client/ClientAbstract.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_LocalSearch_LocalSearchResponseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/LocalSearch/LocalSearchResponseType.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_LocalSearch_LocalSearchRequest
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/LocalSearch/LocalSearchRequest.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_LocalSearch_LocalSearchResponse
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/LocalSearch/LocalSearchResponse.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+ */
+require_once 'Zend/Service/DeveloperGarden/LocalSearch/SearchParameters.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_LocalSearch
+    extends Zend_Service_DeveloperGarden_Client_ClientAbstract
+{
+    /**
+     * wsdl file
+     *
+     * @var string
+     */
+    protected $_wsdlFile = 'https://gateway.developer.telekom.com/p3gw-mod-odg-localsearch/services/localsearch?wsdl';
+
+    /**
+     * wsdl file local
+     *
+     * @var string
+     */
+    protected $_wsdlFileLocal = 'Wsdl/localsearch.wsdl';
+
+    /**
+     * Response, Request Classmapping
+     *
+     * @var array
+     *
+     */
+    protected $_classMap = array(
+        'LocalSearchResponseType' => 'Zend_Service_DeveloperGarden_Response_LocalSearch_LocalSearchResponseType'
+    );
+
+    /**
+     * localSearch with the given parameters
+     *
+     * @param Zend_Service_DeveloperGarden_LocalSearch_SearchParameters $searchParameters
+     * @param integer $account
+     * @return Zend_Service_DeveloperGarden_Response_LocalSearch_LocalSearchResponseType
+     */
+    public function localSearch(
+        Zend_Service_DeveloperGarden_LocalSearch_SearchParameters $searchParameters,
+        $account = null
+    ) {
+        $request = new Zend_Service_DeveloperGarden_Request_LocalSearch_LocalSearchRequest(
+            $this->getEnvironment(),
+            $searchParameters,
+            $account
+        );
+
+        $result = $this->getSoapClient()->localSearch($request);
+
+        $response = new Zend_Service_DeveloperGarden_Response_LocalSearch_LocalSearchResponse($result);
+        return $response->parse();
+    }
+}

+ 38 - 0
library/Zend/Service/DeveloperGarden/LocalSearch/Exception.php

@@ -0,0 +1,38 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * Zend_Service_Exception
+ */
+require_once 'Zend/Service/DeveloperGarden/Exception.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_LocalSearch_Exception extends Zend_Service_DeveloperGarden_Exception
+{
+}

+ 536 - 0
library/Zend/Service/DeveloperGarden/LocalSearch/SearchParameters.php

@@ -0,0 +1,536 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+{
+    /**
+     * possible search parameters, incl. default values
+     *
+     * @var array
+     */
+    private $_parameters = array(
+        'what'             => null,
+        'dymwhat'          => null,
+        'dymrelated'       => null,
+        'hits'             => null,
+        'collapse'         => null,
+        'where'            => null,
+        'dywhere'          => null,
+        'radius'           => null,
+        'lx'               => null,
+        'ly'               => null,
+        'rx'               => null,
+        'ry'               => null,
+        'transformgeocode' => null,
+        'sort'             => null,
+        'spatial'          => null,
+        'sepcomm'          => null,
+        'filter'           => null, // can be ONLINER or OFFLINER
+        'openingtime'      => null, // can be now or HH::MM
+        'kategorie'        => null, // @see http://www.suchen.de/kategorie-katalog
+        'site'             => null,
+        'typ'              => null,
+        'name'             => null,
+        'page'             => null,
+        'city'             => null,
+        'plz'              => null,
+        'strasse'          => null,
+        'bundesland'       => null,
+    );
+
+    /**
+     * possible collapse values
+     *
+     * @var array
+     */
+    private $_possibleCollapseValues = array(
+        true,
+        false,
+        'ADDRESS_COMPANY',
+        'DOMAIN'
+    );
+
+    /**
+     * sets a new search word
+     * alias for setWhat
+     *
+     * @param string $searchValue
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setSearchValue($searchValue)
+    {
+        return $this->setWhat($searchValue);
+    }
+
+    /**
+     * sets a new search word
+     *
+     * @param string $searchValue
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setWhat($searchValue)
+    {
+        $this->_parameters['what'] = $searchValue;
+        return $this;
+    }
+
+    /**
+     * enable the did you mean what feature
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function enableDidYouMeanWhat()
+    {
+        $this->_parameters['dymwhat'] = 'true';
+        return $this;
+    }
+
+    /**
+     * disable the did you mean what feature
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function disableDidYouMeanWhat()
+    {
+        $this->_parameters['dymwhat'] = 'false';
+        return $this;
+    }
+
+    /**
+     * enable the did you mean where feature
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function enableDidYouMeanWhere()
+    {
+        $this->_parameters['dymwhere'] = 'true';
+        return $this;
+    }
+
+    /**
+     * disable the did you mean where feature
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function disableDidYouMeanWhere()
+    {
+        $this->_parameters['dymwhere'] = 'false';
+        return $this;
+    }
+
+    /**
+     * enable did you mean related, if true Kihno will be corrected to Kino
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function enableDidYouMeanRelated()
+    {
+        $this->_parameters['dymrelated'] = 'true';
+        return $this;
+    }
+
+    /**
+     * diable did you mean related, if false Kihno will not be corrected to Kino
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function disableDidYouMeanRelated()
+    {
+        $this->_parameters['dymrelated'] = 'true';
+        return $this;
+    }
+
+    /**
+     * set the max result hits for this search
+     *
+     * @param integer $hits
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setHits($hits = 10)
+    {
+        require_once 'Zend/Validate/Between.php';
+        $validator = new Zend_Validate_Between(0, 1000);
+        if (!$validator->isValid($hits)) {
+            $message = $validator->getMessages();
+            require_once 'Zend/Service/DeveloperGarden/LocalSearch/Exception.php';
+            throw new Zend_Service_DeveloperGarden_LocalSearch_Exception(current($message));
+        }
+        $this->_parameters['hits'] = $hits;
+        return $this;
+    }
+
+    /**
+     * If true, addresses will be collapsed for a single domain, common values
+     * are:
+     * ADDRESS_COMPANY – to collapse by address
+     * DOMAIN – to collapse by domain (same like collapse=true)
+     * false
+     *
+     * @param mixed $value
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setCollapse($value)
+    {
+        if (!in_array($value, $this->_possibleCollapseValues, true)) {
+            require_once 'Zend/Service/DeveloperGarden/LocalSearch/Exception.php';
+            throw new Zend_Service_DeveloperGarden_LocalSearch_Exception('Not a valid value provided.');
+        }
+        $this->_parameters['collapse'] = $value;
+        return $this;
+    }
+
+    /**
+     * set a specific search location
+     * examples:
+     * +47°54’53.10”, 11° 10’ 56.76”
+     * 47°54’53.10;11°10’56.76”
+     * 47.914750,11.182533
+     * +47.914750 ; +11.1824
+     * Darmstadt
+     * Berlin
+     *
+     * @param string $where
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setWhere($where)
+    {
+        require_once 'Zend/Validate/NotEmpty.php';
+
+        $validator = new Zend_Validate_NotEmpty();
+        if (!$validator->isValid($where)) {
+            $message = $validator->getMessages();
+            require_once 'Zend/Service/DeveloperGarden/LocalSearch/Exception.php';
+            throw new Zend_Service_DeveloperGarden_LocalSearch_Exception(current($message));
+        }
+        $this->_parameters['where'] = $where;
+        return $this;
+    }
+
+    /**
+     * returns the defined search location (ie city, country)
+     *
+     * @return string
+     */
+    public function getWhere()
+    {
+        return $this->_parameters['where'];
+    }
+
+    /**
+     * enable the spatial search feature
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function enableSpatial()
+    {
+        $this->_parameters['spatial'] = 'true';
+        return $this;
+    }
+
+    /**
+     * disable the spatial search feature
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function disableSpatial()
+    {
+        $this->_parameters['spatial'] = 'false';
+        return $this;
+    }
+
+    /**
+     * sets spatial and the given radius for a circle search
+     *
+     * @param integer $radius
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setRadius($radius)
+    {
+        require_once 'Zend/Validate/Int.php';
+
+        $validator = new Zend_Validate_Int();
+        if (!$validator->isValid($radius)) {
+            $message = $validator->getMessages();
+            require_once 'Zend/Service/DeveloperGarden/LocalSearch/Exception.php';
+            throw new Zend_Service_DeveloperGarden_LocalSearch_Exception(current($message));
+        }
+        $this->_parameters['radius'] = $radius;
+        $this->_parameters['transformgeocode'] = 'false';
+
+        return $this;
+    }
+
+    /**
+     * sets the values for a rectangle search
+     * lx = longitude left top
+     * ly = latitude left top
+     * rx = longitude right bottom
+     * ry = latitude right bottom
+     *
+     * @param $lx
+     * @param $ly
+     * @param $rx
+     * @param $ry
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setRectangle($lx, $ly, $rx, $ry)
+    {
+        $this->_parameters['lx'] = $lx;
+        $this->_parameters['ly'] = $ly;
+        $this->_parameters['rx'] = $rx;
+        $this->_parameters['ry'] = $ry;
+
+        return $this;
+    }
+
+    /**
+     * if set, the service returns the zipcode for the result
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setTransformGeoCode()
+    {
+        $this->_parameters['transformgeocode'] = 'true';
+        $this->_parameters['radius']           = null;
+
+        return $this;
+    }
+
+    /**
+     * sets the sort value
+     * possible values are: 'relevance' and 'distance' (only with spatial enabled)
+     *
+     * @param string $sort
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setSort($sort)
+    {
+        if (!in_array($sort, array('relevance', 'distance'))) {
+            require_once 'Zend/Service/DeveloperGarden/LocalSearch/Exception.php';
+            throw new Zend_Service_DeveloperGarden_LocalSearch_Exception('Not a valid sort value provided.');
+        }
+
+        $this->_parameters['sort'] = $sort;
+        return $this;
+    }
+
+    /**
+     * enable the separation of phone numbers
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function enablePhoneSeparation()
+    {
+        $this->_parameters['sepcomm'] = 'true';
+        return $this;
+    }
+
+    /**
+     * disable the separation of phone numbers
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function disablePhoneSeparation()
+    {
+        $this->_parameters['sepcomm'] = 'true';
+        return $this;
+    }
+
+    /**
+     * if this filter is set, only results with a website are returned
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setFilterOnliner()
+    {
+        $this->_parameters['filter'] = 'ONLINER';
+        return $this;
+    }
+
+    /**
+     * if this filter is set, only results without a website are returned
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setFilterOffliner()
+    {
+        $this->_parameters['filter'] = 'OFFLINER';
+        return $this;
+    }
+
+
+    /**
+     * removes the filter value
+     *
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function disableFilter()
+    {
+        $this->_parameters['filter'] = null;
+        return $this;
+    }
+
+    /**
+     * set a filter to get just results who are open at the given time
+     * possible values:
+     * now = open right now
+     * HH:MM = at the given time (ie 20:00)
+     *
+     * @param string $time
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setOpeningTime($time = null)
+    {
+        $this->_parameters['openingtime'] = $time;
+        return $this;
+    }
+
+    /**
+     * sets a category filter
+     *
+     * @see http://www.suchen.de/kategorie-katalog
+     * @param $category
+     * @return unknown_type
+     */
+    public function setCategory($category = null)
+    {
+        $this->_parameters['kategorie'] = $category;
+        return $this;
+    }
+
+    /**
+     * sets the site filter
+     * ie: www.developergarden.com
+     *
+     * @param string $site
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setSite($site)
+    {
+        $this->_parameters['site'] = $site;
+        return $this;
+    }
+
+    /**
+     * sets a filter to the given document type
+     * ie: pdf, html
+     *
+     * @param string $type
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setDocumentType($type)
+    {
+        $this->_parameters['typ'] = $type;
+        return $this;
+    }
+
+    /**
+     * sets a filter for the company name
+     * ie: Deutsche Telekom
+     *
+     * @param string $name
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setName($name)
+    {
+        $this->_parameters['name'] = $name;
+        return $this;
+    }
+
+    /**
+     * sets a filter for the zip code
+     *
+     * @param string $zip
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setZipCode($zip)
+    {
+        $this->_parameters['plz'] = $zip;
+        return $this;
+    }
+
+    /**
+     * sets a filter for the street
+     *
+     * @param string $street
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setStreet($street)
+    {
+        $this->_parameters['strasse'] = $street;
+        return $this;
+    }
+
+    /**
+     * sets a filter for the county
+     *
+     * @param string $county
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function setCounty($county)
+    {
+        $this->_parameters['bundesland'] = $county;
+        return $this;
+    }
+
+    /**
+     * sets a raw parameter with the value
+     *
+     * @param string $key
+     * @param mixed $value
+     * @return unknown_type
+     */
+    public function setRawParameter($key, $value)
+    {
+        $this->_parameters[$key] = $value;
+        return $this;
+    }
+
+    /**
+     * returns the parameters as an array
+     *
+     * @return array
+     */
+    public function getSearchParameters()
+    {
+        $retVal = array();
+        foreach ($this->_parameters as $key => $value) {
+            if (is_null($value)) {
+                continue;
+            }
+            $param = array(
+                'parameter' => $key,
+                'value' => $value
+            );
+            $retVal[] = $param;
+        }
+        return $retVal;
+    }
+}

+ 103 - 0
library/Zend/Service/DeveloperGarden/Request/BaseUserService/ChangeQuotaPool.php

@@ -0,0 +1,103 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_BaseUserService_ChangeQuotaPool
+{
+    /**
+     * string module id
+     *
+     * @var string
+     */
+    public $moduleId = null;
+
+    /**
+     * integer >= 0 to set new user quota
+     *
+     * @var integer
+     */
+    public $quotaMax = 0;
+
+    /**
+     * constructor give them the module id
+     *
+     * @param string $moduleId
+     * @param integer $quotaMax
+     * @return Zend_Service_Developergarde_Request_ChangeQuotaPool
+     */
+    public function __construct($moduleId = null, $quotaMax = 0)
+    {
+        $this->setModuleId($moduleId)
+             ->setQuotaMax($quotaMax);
+    }
+
+    /**
+     * sets a new moduleId
+     *
+     * @param integer $moduleId
+     * @return Zend_Service_Developergarde_Request_ChangeQuotaPool
+     */
+    public function setModuleId($moduleId = null)
+    {
+        $this->moduleId = $moduleId;
+        return $this;
+    }
+
+    /**
+     * returns the moduleId
+     *
+     * @return string
+     */
+    public function getModuleId()
+    {
+        return $this->moduleId;
+    }
+
+    /**
+     * sets new QuotaMax value
+     *
+     * @param integer $quotaMax
+     * @return Zend_Service_Developergarde_Request_ChangeQuotaPool
+     */
+    public function setQuotaMax($quotaMax = 0)
+    {
+        $this->quotaMax = $quotaMax;
+        return $this;
+    }
+
+    /**
+     * returns the quotaMax value
+     *
+     * @return integer
+     */
+    public function getQuotaMax()
+    {
+        return $this->quotaMax;
+    }
+}

+ 72 - 0
library/Zend/Service/DeveloperGarden/Request/BaseUserService/GetAccountBalance.php

@@ -0,0 +1,72 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_BaseUserService_GetAccountBalance
+{
+    /**
+     * array of accounts
+     *
+     * @var array
+     */
+    public $Account = array();
+
+    /**
+     * constructor give them the account ids or an empty array
+     *
+     * @param array $Account
+     * @return Zend_Service_DeveloperGarden_Request_GetAccountBalance
+     */
+    public function __construct(array $Account = array())
+    {
+        $this->setAccount($Account);
+    }
+
+    /**
+     * sets a new Account array
+     *
+     * @param array $Account
+     * @return Zend_Service_DeveloperGarden_Request_BaseUserService
+     */
+    public function setAccount(array $Account = array())
+    {
+        $this->Account = $Account;
+        return $this;
+    }
+
+    /**
+     * returns the moduleId
+     *
+     * @return string
+     */
+    public function getAccount()
+    {
+        return $this->Account;
+    }
+}

+ 72 - 0
library/Zend/Service/DeveloperGarden/Request/BaseUserService/GetQuotaInformation.php

@@ -0,0 +1,72 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_BaseUserService_GetQuotaInformation
+{
+    /**
+     * string module id
+     *
+     * @var string
+     */
+    public $moduleId = null;
+
+    /**
+     * constructor give them the module id
+     *
+     * @param string $moduleId
+     * @return Zend_Service_DeveloperGarden_Request_BaseUserService
+     */
+    public function __construct($moduleId = null)
+    {
+        $this->setModuleId($moduleId);
+    }
+
+    /**
+     * sets a new moduleId
+     *
+     * @param integer $moduleId
+     * @return Zend_Service_DeveloperGarden_Request_BaseUserService
+     */
+    public function setModuleId($moduleId = null)
+    {
+        $this->moduleId = $moduleId;
+        return $this;
+    }
+
+    /**
+     * returns the moduleId
+     *
+     * @return string
+     */
+    public function getModuleId()
+    {
+        return $this->moduleId;
+    }
+}

+ 91 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/AddConferenceTemplateParticipantRequest.php

@@ -0,0 +1,91 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_AddConferenceTemplateParticipantRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the template id
+     *
+     * @var string
+     */
+    public $templateId = null;
+
+    /**
+     * the participant details
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public $participant = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $templateId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     */
+    public function __construct($environment, $templateId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant = null
+    ) {
+        parent::__construct($environment);
+        $this->setTemplateId($templateId)
+             ->setParticipant($participant);
+    }
+
+    /**
+     * set the template id
+     *
+     * @param string $templateId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_AddConferenceTemplateParticipantRequest
+     */
+    public function setTemplateId($templateId)
+    {
+        $this->templateId = $templateId;
+        return $this;
+    }
+
+    /**
+     * sets new participant
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_AddConferenceTemplateParticipantRequest
+     */
+    public function setParticipant(Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant)
+    {
+        $this->participant = $participant;
+        return $this;
+    }
+}

+ 69 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/CommitConferenceRequest.php

@@ -0,0 +1,69 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_CommitConferenceRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the conference id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $conferenceId
+     */
+    public function __construct($environment, $conferenceId)
+    {
+        parent::__construct($environment);
+        $this->setConferenceId($conferenceId);
+    }
+
+    /**
+     * set the conference id
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CommitConferenceRequest
+     */
+    public function setConferenceId($conferenceId)
+    {
+        $this->conferenceId = $conferenceId;
+        return $this;
+    }
+}

+ 136 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/CreateConferenceRequest.php

@@ -0,0 +1,136 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * account to be used for this conference
+     *
+     * @var integer
+     */
+    public $account = null;
+
+    /**
+     * unique owner id
+     *
+     * @var string
+     */
+    public $ownerId = null;
+
+    /**
+     * object with details for this conference
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public $detail = null;
+
+    /**
+     * object with schedule for this conference
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public $schedule = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $ownerId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $conferenceSchedule
+     * @param integer $account
+     */
+    public function __construct($environment, $ownerId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $conferenceSchedule = null,
+        $account = null
+    ) {
+        parent::__construct($environment);
+        $this->setOwnerId($ownerId)
+             ->setDetail($conferenceDetails)
+             ->setSchedule($conferenceSchedule)
+             ->setAccount($account);
+    }
+
+    /**
+     * sets $schedule
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $schedule
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+     */
+    public function setSchedule(
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $schedule = null
+    ) {
+        $this->schedule = $schedule;
+        return $this;
+    }
+
+    /**
+     * sets $detail
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $detail
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+     */
+    public function setDetail(Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $detail)
+    {
+        $this->detail = $detail;
+        return $this;
+    }
+
+    /**
+     * sets $ownerId
+     *
+     * @param string $ownerId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+     */
+    public function setOwnerId($ownerId)
+    {
+        $this->ownerId = $ownerId;
+        return $this;
+    }
+
+    /**
+     * sets $account
+     *
+     * @param $account
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+     */
+    public function setAccount($account = null)
+    {
+        $this->account = $account;
+        return $this;
+    }
+}

+ 113 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/CreateConferenceTemplateRequest.php

@@ -0,0 +1,113 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceTemplateRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * unique owner id
+     *
+     * @var string
+     */
+    public $ownerId = null;
+
+    /**
+     * object with details for this conference
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public $detail = null;
+
+    /**
+     * array with Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail elements
+     *
+     * @var array
+     */
+    public $participants = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $ownerId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails
+     * @param array $conferenceParticipants
+     */
+    public function __construct($environment, $ownerId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails,
+        array $conferenceParticipants = null
+    ) {
+        parent::__construct($environment);
+        $this->setOwnerId($ownerId)
+             ->setDetail($conferenceDetails)
+             ->setParticipants($conferenceParticipants);
+    }
+
+    /**
+     * sets $participants
+     *
+     * @param array $participants
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceTemplateRequest
+     */
+    public function setParticipants(array $participants = null)
+    {
+        $this->participants = $participants;
+        return $this;
+    }
+
+    /**
+     * sets $detail
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $detail
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceTemplateRequest
+     */
+    public function setDetail(Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $detail)
+    {
+        $this->detail = $detail;
+        return $this;
+    }
+
+    /**
+     * sets $ownerId
+     *
+     * @param string $ownerId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceTemplateRequest
+     */
+    public function setOwnerId($ownerId)
+    {
+        $this->ownerId = $ownerId;
+        return $this;
+    }
+}

+ 104 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceListRequest.php

@@ -0,0 +1,104 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceListRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * @var integer
+     */
+    public $what = null;
+
+    /**
+     * possible what values
+     *
+     * @var array
+     */
+    private $_whatValues = array(
+        0 => 'all conferences',
+        1 => 'just ad-hoc conferences',
+        2 => 'just planned conferences',
+        3 => 'just failed conferences',
+    );
+
+    /**
+     * unique owner id
+     *
+     * @var string
+     */
+    public $ownerId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param integer $what
+     * @param string $ownerId
+     */
+    public function __construct($environment, $what = 0, $ownerId = null)
+    {
+        parent::__construct($environment);
+        $this->setWhat($what)
+             ->setOwnerId($ownerId);
+    }
+
+    /**
+     * sets $what
+     *
+     * @param integer $what
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceListRequest
+     */
+    public function setWhat($what)
+    {
+        if (!array_key_exists($what, $this->_whatValues)) {
+            require_once 'Zend/Service/DeveloperGarden/Request/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Request_Exception('What value not allowed.');
+        }
+        $this->what = $what;
+        return $this;
+    }
+
+    /**
+     * sets $ownerId
+     *
+     * @param $ownerId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceListRequest
+     */
+    public function setOwnerId($ownerId)
+    {
+        $this->ownerId = $ownerId;
+        return $this;
+    }
+}

+ 106 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceStatusRequest.php

@@ -0,0 +1,106 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceStatusRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the conference id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * what
+     *
+     * @var integer
+     */
+    public $what = null;
+
+    /**
+     * possible what values
+     *
+     * @var array
+     */
+    private $_whatValues = array(
+        0 => 'all conferences',
+        1 => 'just detail, acc and startTime',
+        2 => 'just participants',
+        3 => 'just schedule',
+    );
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $conferenceId
+     * @param integer $what
+     */
+    public function __construct($environment, $conferenceId, $what)
+    {
+        parent::__construct($environment);
+        $this->setConferenceId($conferenceId)
+             ->setWhat($what);
+    }
+
+    /**
+     * set the conference id
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceStatusRequest
+     */
+    public function setConferenceId($conferenceId)
+    {
+        $this->conferenceId = $conferenceId;
+        return $this;
+    }
+
+    /**
+     * sets $what
+     *
+     * @param integer $what
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceStatusRequest
+     */
+    public function setWhat($what)
+    {
+        if (!array_key_exists($what, $this->_whatValues)) {
+            require_once 'Zend/Service/DeveloperGarden/Request/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Request_Exception('What value not allowed.');
+        }
+        $this->what = $what;
+        return $this;
+    }
+}

+ 69 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceTemplateListRequest.php

@@ -0,0 +1,69 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateListRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * unique owner id
+     *
+     * @var string
+     */
+    public $ownerId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $ownerId
+     */
+    public function __construct($environment, $ownerId = null)
+    {
+        parent::__construct($environment);
+        $this->setOwnerId($ownerId);
+    }
+
+    /**
+     * sets $ownerId
+     *
+     * @param $ownerId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateListRequest
+     */
+    public function setOwnerId($ownerId)
+    {
+        $this->ownerId = $ownerId;
+        return $this;
+    }
+}

+ 90 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceTemplateParticipantRequest.php

@@ -0,0 +1,90 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateParticipantRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the template id
+     *
+     * @var string
+     */
+    public $templateId = null;
+
+    /**
+     * the participant id
+     *
+     * @var string
+     */
+    public $participantId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $templateId
+     * @param string $participantId
+     */
+    public function __construct($environment, $templateId, $participantId)
+    {
+        parent::__construct($environment);
+        $this->setTemplateId($templateId)
+             ->setParticipantId($participantId);
+    }
+
+    /**
+     * set the template id
+     *
+     * @param string $templateId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateParticipantRequest
+     */
+    public function setTemplateId($templateId)
+    {
+        $this->templateId = $templateId;
+        return $this;
+    }
+
+    /**
+     * set the participant id
+     *
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateParticipantRequest
+     */
+    public function setParticipantId($participantId)
+    {
+        $this->participantId = $participantId;
+        return $this;
+    }
+}

+ 69 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetConferenceTemplateRequest.php

@@ -0,0 +1,69 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the template id
+     *
+     * @var string
+     */
+    public $templateId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $templateId
+     */
+    public function __construct($environment, $templateId)
+    {
+        parent::__construct($environment);
+        $this->setTemplateId($templateId);
+    }
+
+    /**
+     * set the template id
+     *
+     * @param string $templateId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetConferenceTemplateRequest
+     */
+    public function setTemplateId($templateId)
+    {
+        $this->templateId = $templateId;
+        return $this;
+    }
+}

+ 90 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetParticipantStatusRequest.php

@@ -0,0 +1,90 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_GetParticipantStatusRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the conference id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * the participant id
+     *
+     * @var string
+     */
+    public $participantId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $conferenceId
+     * @param string $participantId
+     */
+    public function __construct($environment, $conferenceId, $participantId)
+    {
+        parent::__construct($environment);
+        $this->setConferenceId($conferenceId)
+             ->setParticipantId($participantId);
+    }
+
+    /**
+     * set the conference id
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetParticipantStatusRequest
+     */
+    public function setConferenceId($conferenceId)
+    {
+        $this->conferenceId = $conferenceId;
+        return $this;
+    }
+
+    /**
+     * set the participant id
+     *
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetParticipantStatusRequest
+     */
+    public function setParticipantId($participantId)
+    {
+        $this->participantId = $participantId;
+        return $this;
+    }
+}

+ 69 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/GetRunningConferenceRequest.php

@@ -0,0 +1,69 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_GetRunningConferenceRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the conference id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $conferenceId
+     */
+    public function __construct($environment, $conferenceId)
+    {
+        parent::__construct($environment);
+        $this->setConferenceId($conferenceId);
+    }
+
+    /**
+     * set the conference id
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_GetRunningConferenceRequest
+     */
+    public function setConferenceId($conferenceId)
+    {
+        $this->conferenceId = $conferenceId;
+        return $this;
+    }
+}

+ 91 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/NewParticipantRequest.php

@@ -0,0 +1,91 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_NewParticipantRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the conference id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * conference participant
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public $participant = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $conferenceId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     */
+    public function __construct($environment, $conferenceId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant)
+    {
+        parent::__construct($environment);
+        $this->setConferenceId($conferenceId)
+             ->setParticipant($participant);
+    }
+
+    /**
+     * set the conference id
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_NewParticipantRequest
+     */
+    public function setConferenceId($conferenceId)
+    {
+        $this->conferenceId = $conferenceId;
+        return $this;
+    }
+
+    /**
+     * sets new participant
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_NewParticipantRequest
+     */
+    public function setParticipant(Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant)
+    {
+        $this->participant = $participant;
+        return $this;
+    }
+}

+ 69 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveConferenceRequest.php

@@ -0,0 +1,69 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the conference id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $conferenceId
+     */
+    public function __construct($environment, $conferenceId)
+    {
+        parent::__construct($environment);
+        $this->setConferenceId($conferenceId);
+    }
+
+    /**
+     * set the conference id
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceRequest
+     */
+    public function setConferenceId($conferenceId)
+    {
+        $this->conferenceId = $conferenceId;
+        return $this;
+    }
+}

+ 90 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveConferenceTemplateParticipantRequest.php

@@ -0,0 +1,90 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceTemplateParticipantRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the template id
+     *
+     * @var string
+     */
+    public $templateId = null;
+
+    /**
+     * the participant id
+     *
+     * @var string
+     */
+    public $participantId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $templateId
+     * @param string $participantId
+     */
+    public function __construct($environment, $templateId, $participantId)
+    {
+        parent::__construct($environment);
+        $this->setTemplateId($templateId)
+             ->setParticipantId($participantId);
+    }
+
+    /**
+     * set the template id
+     *
+     * @param string $templateId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceTemplateParticipantRequest
+     */
+    public function setTemplateId($templateId)
+    {
+        $this->templateId = $templateId;
+        return $this;
+    }
+
+    /**
+     * set the participant id
+     *
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceTemplateParticipantRequest
+     */
+    public function setParticipantId($participantId)
+    {
+        $this->participantId = $participantId;
+        return $this;
+    }
+}

+ 69 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveConferenceTemplateRequest.php

@@ -0,0 +1,69 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceTemplateRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the template id
+     *
+     * @var string
+     */
+    public $templateId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $templateId
+     */
+    public function __construct($environment, $templateId)
+    {
+        parent::__construct($environment);
+        $this->setTemplateId($templateId);
+    }
+
+    /**
+     * set the template id
+     *
+     * @param string $templateId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveConferenceTemplateRequest
+     */
+    public function setTemplateId($templateId)
+    {
+        $this->templateId = $templateId;
+        return $this;
+    }
+}

+ 90 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/RemoveParticipantRequest.php

@@ -0,0 +1,90 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveParticipantRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the conference id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * the participant id
+     *
+     * @var string
+     */
+    public $participantId = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $conferenceId
+     * @param string $participantId
+     */
+    public function __construct($environment, $conferenceId, $participantId)
+    {
+        parent::__construct($environment);
+        $this->setConferenceId($conferenceId)
+             ->setParticipantId($participantId);
+    }
+
+    /**
+     * set the conference id
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveParticipantRequest
+     */
+    public function setConferenceId($conferenceId)
+    {
+        $this->conferenceId = $conferenceId;
+        return $this;
+    }
+
+    /**
+     * set the participant id
+     *
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_RemoveParticipantRequest
+     */
+    public function setParticipantId($participantId)
+    {
+        $this->participantId = $participantId;
+        return $this;
+    }
+}

+ 158 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateConferenceRequest.php

@@ -0,0 +1,158 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * conference id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * account to be used for this conference
+     *
+     * @var integer
+     */
+    public $account = null;
+
+    /**
+     * unique owner id
+     *
+     * @var string
+     */
+    public $ownerId = null;
+
+    /**
+     * object with details for this conference
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public $detail = null;
+
+    /**
+     * object with schedule for this conference
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public $schedule = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $conferenceId
+     * @param string $ownerId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $conferenceSchedule
+     * @param integer $account
+     */
+    public function __construct($environment, $conferenceId, $ownerId = null,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails = null,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $conferenceSchedule = null,
+        $account = null
+    ) {
+        parent::__construct($environment);
+        $this->setConferenceId($conferenceId)
+             ->setOwnerId($ownerId)
+             ->setDetail($conferenceDetails)
+             ->setSchedule($conferenceSchedule)
+             ->setAccount($account);
+    }
+
+    /**
+     * sets $conferenceId
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceRequest
+     */
+    public function setConferenceId($conferenceId)
+    {
+        $this->conferenceId= $conferenceId;
+        return $this;
+    }
+
+    /**
+     * sets $schedule
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $schedule
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+     */
+    public function setSchedule(
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule $schedule = null
+    ) {
+        $this->schedule = $schedule;
+        return $this;
+    }
+
+    /**
+     * sets $detail
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $detail
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+     */
+    public function setDetail(
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $detail = null
+    ) {
+        $this->detail = $detail;
+        return $this;
+    }
+
+    /**
+     * sets $ownerId
+     *
+     * @param string $ownerId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+     */
+    public function setOwnerId($ownerId = null)
+    {
+        $this->ownerId = $ownerId;
+        return $this;
+    }
+
+    /**
+     * sets $account
+     *
+     * @param $account
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_CreateConferenceRequest
+     */
+    public function setAccount($account = null)
+    {
+        $this->account = $account;
+        return $this;
+    }
+}

+ 113 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateConferenceTemplateParticipantRequest.php

@@ -0,0 +1,113 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateParticipantRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the template id
+     *
+     * @var string
+     */
+    public $templateId = null;
+
+    /**
+     * the participant id
+     *
+     * @var string
+     */
+    public $participantId = null;
+
+    /**
+     * the participant details
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public $participant = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $templateId
+     * @param string $participantId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     */
+    public function __construct($environment, $templateId, $participantId,
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant = null
+    ) {
+        parent::__construct($environment);
+        $this->setTemplateId($templateId)
+             ->setParticipantId($participantId)
+             ->setParticipant($participant);
+    }
+
+    /**
+     * set the template id
+     *
+     * @param string $templateId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateParticipantRequest
+     */
+    public function setTemplateId($templateId)
+    {
+        $this->templateId = $templateId;
+        return $this;
+    }
+
+    /**
+     * set the participant id
+     *
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateParticipantRequest
+     */
+    public function setParticipantId($participantId)
+    {
+        $this->participantId = $participantId;
+        return $this;
+    }
+
+    /**
+     * sets new participant
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateParticipantRequest
+     */
+    public function setParticipant(
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+    ) {
+        $this->participant = $participant;
+        return $this;
+    }
+}

+ 113 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateConferenceTemplateRequest.php

@@ -0,0 +1,113 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the template id
+     *
+     * @var string
+     */
+    public $templateId = null;
+
+    /**
+     * the initiator id
+     *
+     * @var string
+     */
+    public $initiatorId = null;
+
+    /**
+     * the details
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public $detail = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $templateId
+     * @param string $initiatorId
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails
+     */
+    public function __construct($environment, $templateId, $initiatorId = null,
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $conferenceDetails = null
+    ) {
+        parent::__construct($environment);
+        $this->setTemplateId($templateId)
+             ->setInitiatorId($initiatorId)
+             ->setDetail($conferenceDetails);
+    }
+
+    /**
+     * set the template id
+     *
+     * @param string $templateId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateRequest
+     */
+    public function setTemplateId($templateId)
+    {
+        $this->templateId = $templateId;
+        return $this;
+    }
+
+    /**
+     * set the initiator id
+     *
+     * @param string $initiatorId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateRequest
+     */
+    public function setInitiatorId($initiatorId)
+    {
+        $this->initiatorId = $initiatorId;
+        return $this;
+    }
+
+    /**
+     * sets $detail
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $detail
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateConferenceTemplateRequest
+     */
+    public function setDetail(
+        Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail $detail = null
+    ) {
+        $this->detail = $detail;
+        return $this;
+    }
+}

+ 138 - 0
library/Zend/Service/DeveloperGarden/Request/ConferenceCall/UpdateParticipantRequest.php

@@ -0,0 +1,138 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateParticipantRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the conference id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * the participant id
+     *
+     * @var string
+     */
+    public $participantId = null;
+
+    /**
+     * conference participant
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public $participant = null;
+
+    /**
+     * possible action
+     *
+     * @var integer
+     */
+    public $action = null;
+
+    /**
+     * constructor
+     *
+     * @param integer $environment
+     * @param string $conferenceId
+     * @param string $participantId
+     * @param integer $action
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     */
+    public function __construct($environment, $conferenceId, $participantId,
+        $action = null,
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant = null
+    ) {
+        parent::__construct($environment);
+        $this->setConferenceId($conferenceId)
+             ->setParticipantId($participantId)
+             ->setAction($action)
+             ->setParticipant($participant);
+    }
+
+    /**
+     * set the conference id
+     *
+     * @param string $conferenceId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateParticipantRequest
+     */
+    public function setConferenceId($conferenceId)
+    {
+        $this->conferenceId = $conferenceId;
+        return $this;
+    }
+
+    /**
+     * set the participant id
+     *
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateParticipantRequest
+     */
+    public function setParticipantId($participantId)
+    {
+        $this->participantId = $participantId;
+        return $this;
+    }
+
+    /**
+     * sets new action
+     *
+     * @param integer $action
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateParticipantRequest
+     */
+    public function setAction($action = null)
+    {
+        if ($action !== null) {
+            Zend_Service_DeveloperGarden_ConferenceCall::checkParticipantAction($action);
+        }
+        $this->action = $action;
+        return $this;
+    }
+
+    /**
+     * sets new participant
+     *
+     * @param Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant
+     * @return Zend_Service_DeveloperGarden_Request_ConferenceCall_UpdateParticipantRequest
+     */
+    public function setParticipant(
+        Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail $participant = null
+    ) {
+        $this->participant = $participant;
+        return $this;
+    }
+}

+ 39 - 0
library/Zend/Service/DeveloperGarden/Request/Exception.php

@@ -0,0 +1,39 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * Zend_Service_DeveloperGarden_Exception
+ */
+require_once 'Zend/Service/DeveloperGarden/Exception.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_Exception
+    extends Zend_Service_DeveloperGarden_Exception
+{
+}

+ 114 - 0
library/Zend/Service/DeveloperGarden/Request/IpLocation/LocateIPRequest.php

@@ -0,0 +1,114 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @see Zend_Service_DeveloperGarden_IpLocation_IpAddress
+ */
+require_once 'Zend/Service/DeveloperGarden/IpLocation/IpAddress.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_IpLocation_LocateIPRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the ip addresses to lookup for
+     *
+     * @var Zend_Service_DeveloperGarden_Request_IpLocation_IpAddress
+     */
+    public $address = null;
+
+    /**
+     * the account
+     *
+     * @var string
+     */
+    public $account = null;
+
+    /**
+     * constructor give them the environment
+     *
+     * @param integer $environment
+     * @param Zend_Service_DeveloperGarden_IpLocation_IpAddress|array $ip
+     *
+     * @return Zend_Service_DeveloperGarden_Request_RequestAbstract
+     */
+    public function __construct($environment, $ip = null)
+    {
+        parent::__construct($environment);
+
+        if ($ip !== null) {
+            $this->setIp($ip);
+        }
+    }
+
+    /**
+     * sets new ip or array of ips
+     *
+     * @param Zend_Service_DeveloperGarden_IpLocation_IpAddress|array $ip
+     *
+     * @return Zend_Service_DeveloperGarden_Request_IpLocation_LocateIPRequest
+     */
+    public function setIp($ip)
+    {
+        if ($ip instanceof Zend_Service_DeveloperGarden_IpLocation_IpAddress) {
+            $this->address[] = array(
+                'ipType'    => $ip->getVersion(),
+                'ipAddress' => $ip->getIp(),
+            );
+            return $this;
+        }
+
+        if (is_array($ip)) {
+            foreach ($ip as $ipObject) {
+                if (!$ipObject instanceof Zend_Service_DeveloperGarden_IpLocation_IpAddress
+                    && !is_string($ipObject)
+                ) {
+                    require_once 'Zend/Service/DeveloperGarden/Request/Exception.php';
+                    throw new Zend_Service_DeveloperGarden_Request_Exception(
+                        'Not a valid Ip Address object found.'
+                    );
+                }
+                $this->setIp($ipObject);
+            }
+            return $this;
+        }
+
+        if (!is_string($ip)) {
+            require_once 'Zend/Service/DeveloperGarden/Request/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Request_Exception('Not a valid Ip Address object found.');
+        }
+
+        return $this->setIp(new Zend_Service_DeveloperGarden_IpLocation_IpAddress($ip));
+    }
+}

+ 113 - 0
library/Zend/Service/DeveloperGarden/Request/LocalSearch/LocalSearchRequest.php

@@ -0,0 +1,113 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_LocalSearch_LocalSearchRequest
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * array of search parameters
+     *
+     * @var array
+     */
+    public $searchParameters = null;
+
+    /**
+     * original object
+     *
+     * @var Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    private $_searchParameters = null;
+
+    /**
+     * account id
+     *
+     * @var integer
+     */
+    public $account = null;
+
+    /**
+     * constructor give them the environment and the sessionId
+     *
+     * @param integer $environment
+     * @param Zend_Service_DeveloperGarden_LocalSearch_SearchParameters $searchParameters
+     * @param integer $account
+     * @return Zend_Service_DeveloperGarden_Request_RequestAbstract
+     */
+    public function __construct($environment, 
+        Zend_Service_DeveloperGarden_LocalSearch_SearchParameters $searchParameters, 
+        $account = null
+    ) {
+        parent::__construct($environment);
+        $this->setSearchParameters($searchParameters)
+             ->setAccount($account);
+    }
+
+    /**
+     * @param integer $account
+     */
+    public function setAccount($account = null)
+    {
+        $this->account = $account;
+        return $this;
+    }
+
+    /**
+     * @return integer
+     */
+    public function getAccount()
+    {
+        return $this->account;
+    }
+
+    /**
+     * @param Zend_Service_DeveloperGarden_LocalSearch_SearchParameters $searchParameters
+     */
+    public function setSearchParameters(
+        Zend_Service_DeveloperGarden_LocalSearch_SearchParameters $searchParameters
+    ) {
+        $this->searchParameters  = $searchParameters->getSearchParameters();
+        $this->_searchParameters = $searchParameters;
+        return $this;
+    }
+
+    /**
+     * @return Zend_Service_DeveloperGarden_LocalSearch_SearchParameters
+     */
+    public function getSearchParameters()
+    {
+        return $this->_searchParameters;
+    }
+
+}

+ 72 - 0
library/Zend/Service/DeveloperGarden/Request/RequestAbstract.php

@@ -0,0 +1,72 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+abstract class Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * environment value
+     *
+     * @var integer
+     */
+    public $environment = null;
+
+    /**
+     * constructor give them the environment
+     *
+     * @param integer $environment
+     * @return Zend_Service_DeveloperGarden_Request_RequestAbstract
+     */
+    public function __construct($environment)
+    {
+        $this->setEnvironment($environment);
+    }
+
+    /**
+     * sets a new moduleId
+     *
+     * @param integer $environment
+     * @return Zend_Service_DeveloperGarden_Request_RequestAbstract
+     */
+    public function setEnvironment($environment)
+    {
+        $this->environment = $environment;
+        return $this;
+    }
+
+    /**
+     * the current configured environment value
+     *
+     * @return integer
+     */
+    public function getEnvironment()
+    {
+        return $this->environment;
+    }
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Request/SendSms/SendFlashSMS.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/SendSms/SendSmsAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_SendSms_SendFlashSMS
+    extends Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+{
+    /**
+     * this is the sms type
+     * 2 = FlashSMS
+     *
+     * @var integer
+     */
+    protected $_smsType = 2;
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Request/SendSms/SendSMS.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/SendSms/SendSmsAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_SendSms_SendSMS
+    extends Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+{
+    /**
+     * this is the sms type
+     * 1 = normal SMS
+     *
+     * @var integer
+     */
+    protected $_smsType = 1;
+}

+ 281 - 0
library/Zend/Service/DeveloperGarden/Request/SendSms/SendSmsAbstract.php

@@ -0,0 +1,281 @@
+<?php
+
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+abstract class Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the number or numbers to receive this sms
+     *
+     * @var string
+     */
+    public $number = null;
+
+    /**
+     * the message of this sms
+     *
+     * @var string
+     */
+    public $message = null;
+
+    /**
+     * name of the sender
+     *
+     * @var string
+     */
+    public $originator = null;
+
+    /**
+     * account
+     *
+     * @var integer
+     */
+    public $account = null;
+
+    /**
+     * array of special chars that are used for counting
+     * message length
+     *
+     * @var array
+     */
+    private $_specialChars = array(
+        '|', 
+        '^', 
+        '{', 
+        '}', 
+        '[', 
+        ']', 
+        '~', 
+        '\\', 
+        "\n",
+        // '€', removed because its counted in utf8 correctly
+    );
+
+    /**
+     * what SMS type is it
+     *
+     * 1 = SMS
+     * 2 = FlashSMS
+     *
+     * @var integer
+     */
+    protected $_smsType = 1;
+
+    /**
+     * the counter for increasing message count
+     * if more than this 160 chars we send a 2nd or counting
+     * sms message
+     *
+     * @var integer
+     */
+    protected $_smsLength = 153;
+
+    /**
+     * maximum length of an sms message
+     *
+     * @var integer
+     */
+    protected $_maxLength = 765;
+
+    /**
+     * the maximum numbers to send an sms
+     *
+     * @var integer
+     */
+    protected $_maxNumbers = 10;
+
+    /**
+     * returns the assigned numbers
+     *
+     * @return string $number
+     */
+    public function getNumber()
+    {
+        return $this->number;
+    }
+
+    /**
+     * set a new number(s)
+     *
+     * @param string $number
+     * @throws Zend_Service_DeveloperGarden_Request_Exception
+     *
+     * @return Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+     */
+    public function setNumber($number)
+    {
+        $this->number = $number;
+        if ($this->getNumberCount() > $this->_maxNumbers) {
+            require_once 'Zend/Service/DeveloperGarden/Request/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Request_Exception('The message is too long.');
+        }
+        return $this;
+    }
+
+    /**
+     * returns the current message
+     *
+     * @return string $message
+     */
+    public function getMessage()
+    {
+        return $this->message;
+    }
+
+    /**
+     * sets a new message
+     *
+     * @param string $message
+     * @throws Zend_Service_DeveloperGarden_Request_Exception
+     *
+     * @return Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+     */
+    public function setMessage($message)
+    {
+        $this->message = $message;
+        if ($this->getMessageLength() > $this->_maxLength) {
+            require_once 'Zend/Service/DeveloperGarden/Request/Exception.php';
+            throw new Zend_Service_DeveloperGarden_Request_Exception('The message is too long.');
+        }
+        return $this;
+    }
+
+    /**
+     * returns the originator
+     *
+     * @return the $originator
+     */
+    public function getOriginator()
+    {
+        return $this->originator;
+    }
+
+    /**
+     * the originator name
+     *
+     * @param string $originator
+     * @return Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+     */
+    public function setOriginator($originator)
+    {
+        $this->originator = $originator;
+        return $this;
+    }
+
+    /**
+     * the account
+     * @return integer $account
+     */
+    public function getAccount()
+    {
+        return $this->account;
+    }
+
+    /**
+     * sets a new accounts
+     *
+     * @param $account the $account to set
+     * @return Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+     */
+    public function setAccount($account)
+    {
+        $this->account = $account;
+        return $this;
+    }
+
+    /**
+     * returns the calculated message length
+     *
+     * @return integer
+     */
+    public function getMessageLength()
+    {
+        $message = $this->getMessage();
+        $length  = strlen($message);
+
+        foreach ($this->_specialChars as $char) {
+            $c = (substr_count($message, $char) * 2) - 1;
+            if ($c > 0) {
+                $length += $c;
+            }
+        }
+
+        return $length;
+    }
+
+    /**
+     * returns the count of sms messages that would be send
+     *
+     * @return integer
+     */
+    public function getMessageCount()
+    {
+        $smsLength = $this->getMessageLength();
+        $retValue = 1;
+        if ($smsLength > 160) {
+            $retValue = ceil($smsLength / $this->_smsLength);
+        }
+        return $retValue;
+    }
+
+    /**
+     * returns the count of numbers in this sms
+     *
+     * @return integer
+     */
+    public function getNumberCount()
+    {
+        $number   = $this->getNumber();
+        $retValue = 0;
+        if (!empty($number)) {
+            $retValue = count(split(',', $number));
+        }
+        return $retValue;
+    }
+
+    /**
+     * returns the sms type
+     * currently we have
+     * 1 = Sms
+     * 2 = FlashSms
+     *
+     * @return integer
+     */
+    public function getSmsType()
+    {
+        return $this->_smsType;
+    }
+}

+ 39 - 0
library/Zend/Service/DeveloperGarden/Request/SmsValidation/GetValidatedNumbers.php

@@ -0,0 +1,39 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_SmsValidation_GetValidatedNumbers
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+}

+ 80 - 0
library/Zend/Service/DeveloperGarden/Request/SmsValidation/Invalidate.php

@@ -0,0 +1,80 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_SmsValidation_Invalidate
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the number
+     *
+     * @var string
+     */
+    public $number = null;
+
+    /**
+     * create the class for validation a sms keyword
+     *
+     * @param integer $environment
+     * @param string $keyword
+     * @param string $number
+     */
+    public function __construct($environment, $number = null)
+    {
+        parent::__construct($environment);
+        $this->setNumber($number);
+    }
+
+    /**
+     * returns the number
+     *
+     * @return string $number
+     */
+    public function getNumber()
+    {
+        return $this->number;
+    }
+
+    /**
+     * set a new number
+     *
+     * @param string $number
+     * @return Zend_Service_DeveloperGarden_Request_SmsValidation_Validate
+     */
+    public function setNumber($number)
+    {
+        $this->number = $number;
+        return $this;
+    }
+}

+ 39 - 0
library/Zend/Service/DeveloperGarden/Request/SmsValidation/SendValidationKeyword.php

@@ -0,0 +1,39 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/SendSms/SendSmsAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_SmsValidation_SendValidationKeyword
+    extends Zend_Service_DeveloperGarden_Request_SendSms_SendSmsAbstract
+{
+}

+ 110 - 0
library/Zend/Service/DeveloperGarden/Request/SmsValidation/Validate.php

@@ -0,0 +1,110 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_SmsValidation_Validate
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+    /**
+     * the keyword to be used for validation
+     *
+     * @var string
+     */
+    public $keyword = null;
+
+    /**
+     * the number
+     *
+     * @var string
+     */
+    public $number = null;
+
+    /**
+     * returns the keyword
+     *
+     * @return string $keyword
+     */
+    public function getKeyword ()
+    {
+        return $this->keyword;
+    }
+
+    /**
+     * create the class for validation a sms keyword
+     *
+     * @param integer $environment
+     * @param string $keyword
+     * @param string $number
+     */
+    public function __construct($environment, $keyword = null, $number = null)
+    {
+        parent::__construct($environment);
+        $this->setKeyword($keyword)
+             ->setNumber($number);
+    }
+
+    /**
+     * set a new keyword
+     *
+     * @param string $keyword
+     * @return Zend_Service_DeveloperGarden_Request_SmsValidation_Validate
+     */
+    public function setKeyword($keyword)
+    {
+        $this->keyword = $keyword;
+        return $this;
+    }
+
+    /**
+     * returns the number
+     *
+     * @return string $number
+     */
+    public function getNumber()
+    {
+        return $this->number;
+    }
+
+    /**
+     * set a new number
+     *
+     * @param string $number
+     * @return Zend_Service_DeveloperGarden_Request_SmsValidation_Validate
+     */
+    public function setNumber($number)
+    {
+        $this->number = $number;
+        return $this;
+    }
+}

+ 100 - 0
library/Zend/Service/DeveloperGarden/Request/VoiceButler/CallStatus.php

@@ -0,0 +1,100 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_VoiceButler_VoiceButlerAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/VoiceButler/VoiceButlerAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_VoiceButler_CallStatus
+    extends Zend_Service_DeveloperGarden_Request_VoiceButler_VoiceButlerAbstract
+{
+    /**
+     * extend the keep alive for this call
+     *
+     * @var integer
+     */
+    public $keepAlive = null;
+
+    /**
+     * constructor give them the environment and the sessionId
+     *
+     * @param integer $environment
+     * @param string $sessionId
+     * @param integer $keepAlive
+     * @return Zend_Service_DeveloperGarden_Request_RequestAbstract
+     */
+    public function __construct($environment, $sessionId, $keepAlive = null)
+    {
+        parent::__construct($environment);
+        $this->setSessionId($sessionId)
+             ->setKeepAlive($keepAlive);
+    }
+
+    /**
+     * @return string
+     */
+    public function getSessionId()
+    {
+        return $this->sessionId;
+    }
+
+    /**
+     * sets new sessionId
+     *
+     * @param string $sessionId
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_CallStatus
+     */
+    public function setSessionId($sessionId)
+    {
+        $this->sessionId = $sessionId;
+        return $this;
+    }
+
+    /**
+     * @return integer
+     */
+    public function getKeepAlive()
+    {
+        return $this->keepAlive;
+    }
+
+    /**
+     * sets new keepAlive flag
+     *
+     * @param integer $keepAlive
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_CallStatus
+     */
+    public function setKeepAlive($keepAlive)
+    {
+        $this->keepAlive = $keepAlive;
+        return $this;
+    }
+}

+ 238 - 0
library/Zend/Service/DeveloperGarden/Request/VoiceButler/NewCall.php

@@ -0,0 +1,238 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_VoiceButler_VoiceButlerAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/VoiceButler/VoiceButlerAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+    extends Zend_Service_DeveloperGarden_Request_VoiceButler_VoiceButlerAbstract
+{
+    /**
+     * the first number to be called
+     *
+     * @var string
+     */
+    public $aNumber = null;
+
+    /**
+     * the second number to be called
+     *
+     * @var string
+     */
+    public $bNumber = null;
+
+    /**
+     * Calling Line Identity Restriction (CLIR) disabled for $aNumber
+     *
+     * @var boolean
+     */
+    public $privacyA = null;
+
+    /**
+     * Calling Line Identity Restriction (CLIR) disabled for $bNumber
+     *
+     * @var boolean
+     */
+    public $privacyB = null;
+
+    /**
+     * time in seconds to wait for $aNumber
+     *
+     * @var integer
+     */
+    public $expiration = null;
+
+    /**
+     * max duration for this call in seconds
+     *
+     * @var integer
+     */
+    public $maxDuration = null;
+
+    /**
+     * param not used right now
+     *
+     * @var string
+     */
+    public $greeter = null;
+
+    /**
+     * Account Id which will be pay for this call
+     *
+     * @var integer
+     */
+    public $account = null;
+
+    /**
+     * @return string
+     */
+    public function getANumber()
+    {
+        return $this->aNumber;
+    }
+
+    /**
+     * @param string $aNumber
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+     */
+    public function setANumber($aNumber)
+    {
+        $this->aNumber = $aNumber;
+        return $this;
+    }
+
+    /**
+     * @return string
+     */
+    public function getBNumber()
+    {
+        return $this->bNumber;
+    }
+
+    /**
+     * @param string $bNumber
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+     */
+    public function setBNumber($bNumber)
+    {
+        $this->bNumber = $bNumber;
+        return $this;
+    }
+
+    /**
+     * @return boolean
+     */
+    public function getPrivacyA()
+    {
+        return $this->privacyA;
+    }
+
+    /**
+     * @param boolean $privacyA
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+     */
+    public function setPrivacyA($privacyA)
+    {
+        $this->privacyA = $privacyA;
+        return $this;
+    }
+
+    /**
+     * @return boolean
+     */
+    public function getPrivacyB()
+    {
+        return $this->privacyB;
+    }
+
+    /**
+     * @param boolean $privacyB
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+     */
+    public function setPrivacyB($privacyB)
+    {
+        $this->privacyB = $privacyB;
+        return $this;
+    }
+
+    /**
+     * @return integer
+     */
+    public function getExpiration()
+    {
+        return $this->expiration;
+    }
+
+    /**
+     * @param integer $expiration
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+     */
+    public function setExpiration($expiration)
+    {
+        $this->expiration = $expiration;
+        return $this;
+    }
+
+    /**
+     * @return integer
+     */
+    public function getMaxDuration()
+    {
+        return $this->maxDuration;
+    }
+
+    /**
+     * @param integer $maxDuration
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+     */
+    public function setMaxDuration($maxDuration)
+    {
+        $this->maxDuration = $maxDuration;
+        return $this;
+    }
+
+    /**
+     * @return string
+     */
+    public function getGreeter()
+    {
+        return $this->greeter;
+    }
+
+    /**
+     * @param string $greeter
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+     */
+    public function setGreeter($greeter)
+    {
+        $this->greeter = $greeter;
+        return $this;
+    }
+
+    /**
+     * @return string
+     */
+    public function getAccount()
+    {
+        return $this->account;
+    }
+
+    /**
+     * @param integer $account
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+     */
+    public function setAccount($account)
+    {
+        $this->account = $account;
+        return $this;
+    }
+}

+ 92 - 0
library/Zend/Service/DeveloperGarden/Request/VoiceButler/NewCallSequenced.php

@@ -0,0 +1,92 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_VoiceButler_NewCall
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/VoiceButler/NewCall.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_VoiceButler_NewCallSequenced
+    extends Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+{
+    /**
+     * array of second numbers to be called sequenced
+     *
+     * @var array
+     */
+    public $bNumber = null;
+
+    /**
+     * max wait value to wait for new number to be called
+     *
+     * @var integer
+     */
+    public $maxWait = null;
+
+    /**
+     * @return array
+     */
+    public function getBNumber()
+    {
+        return $this->bNumber;
+    }
+
+    /**
+     * @param array $bNumber
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCall
+     */
+    /*public function setBNumber(array $bNumber)
+    {
+        $this->bNumber = $bNumber;
+        return $this;
+    }*/
+
+    /**
+     * returns the max wait value
+     *
+     * @return integer
+     */
+    public function getMaxWait()
+    {
+        return $this->maxWait;
+    }
+
+    /**
+     * sets new max wait value for next number call
+     *
+     * @param integer $maxWait
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_NewCallSequenced
+     */
+    public function setMaxWait($maxWait)
+    {
+        $this->maxWait = $maxWait;
+        return $this;
+    }
+}

+ 78 - 0
library/Zend/Service/DeveloperGarden/Request/VoiceButler/TearDownCall.php

@@ -0,0 +1,78 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_VoiceButler_VoiceButlerAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/VoiceButler/VoiceButlerAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Request_VoiceButler_TearDownCall
+    extends Zend_Service_DeveloperGarden_Request_VoiceButler_VoiceButlerAbstract
+{
+    /**
+     * the session id
+     *
+     * @var string
+     */
+    public $sessionId = null;
+
+    /**
+     * constructor give them the environment and the sessionId
+     *
+     * @param integer $environment
+     * @param string $sessionId
+     * @return Zend_Service_DeveloperGarden_Request_RequestAbstract
+     */
+    public function __construct($environment, $sessionId)
+    {
+        parent::__construct($environment);
+        $this->setSessionId($sessionId);
+    }
+
+    /**
+     * @return string
+     */
+    public function getSessionId()
+    {
+        return $this->sessionId;
+    }
+
+    /**
+     * sets new sessionId
+     *
+     * @param string $sessionId
+     * @return Zend_Service_DeveloperGarden_Request_VoiceButler_TearDownCall
+     */
+    public function setSessionId($sessionId)
+    {
+        $this->sessionId = $sessionId;
+        return $this;
+    }
+}

+ 39 - 0
library/Zend/Service/DeveloperGarden/Request/VoiceButler/VoiceButlerAbstract.php

@@ -0,0 +1,39 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Request_RequestAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Request/RequestAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+abstract class Zend_Service_DeveloperGarden_Request_VoiceButler_VoiceButlerAbstract
+    extends Zend_Service_DeveloperGarden_Request_RequestAbstract
+{
+}

+ 140 - 0
library/Zend/Service/DeveloperGarden/Response/BaseType.php

@@ -0,0 +1,140 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ResponseAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ResponseAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_BaseType
+    extends Zend_Service_DeveloperGarden_Response_ResponseAbstract
+{
+    /**
+     * the status code
+     *
+     * @var string
+     */
+    public $statusCode = null;
+
+    /**
+     * the status message
+     *
+     * @var string
+     */
+    public $statusMessage = null;
+
+    /**
+     * parse the result
+     *
+     * @throws Zend_Service_DeveloperGarden_Response_Exception
+     * @return Zend_Service_DeveloperGarden_Response_ResponseAbstract
+     */
+    public function parse()
+    {
+        if ($this->hasError()) {
+            throw new Zend_Service_DeveloperGarden_Response_Exception(
+                $this->getStatusMessage(),
+                $this->getStatusCode()
+            );
+        }
+
+        return $this;
+    }
+
+    /**
+     * returns the error code
+     *
+     * @return string|null
+     */
+    public function getStatusCode()
+    {
+        return $this->statusCode;
+    }
+
+    /**
+     * returns the error message
+     *
+     * @return string
+     */
+    public function getStatusMessage()
+    {
+        return $this->statusMessage;
+    }
+
+    /**
+     * returns true if the errorCode is not null and not 0000
+     *
+     * @return boolean
+     */
+    public function isValid()
+    {
+        return ($this->statusCode === null
+             || $this->statusCode == '0000');
+    }
+
+    /**
+     * returns true if we have a error situation
+     *
+     * @return boolean
+     */
+    public function hasError()
+    {
+        return ($this->statusCode !== null
+             && $this->statusCode != '0000');
+    }
+
+    /**
+     * returns the error code (statusCode)
+     *
+     * @return string|null
+     */
+    public function getErrorCode()
+    {
+        if (empty($this->errorCode)) {
+            return $this->statusCode;
+        } else {
+            return $this->errorCode;
+        }
+    }
+
+    /**
+     * returns the error message
+     *
+     * @return string
+     */
+    public function getErrorMessage()
+    {
+        if (empty($this->errorMessage)) {
+            return $this->statusMessage;
+        } else {
+            return $this->errorMessage;
+        }
+    }
+}

+ 39 - 0
library/Zend/Service/DeveloperGarden/Response/BaseUserService/ChangeQuotaPoolResponse.php

@@ -0,0 +1,39 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ResponseAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ResponseAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_BaseUserService_ChangeQuotaPoolResponse
+    extends Zend_Service_DeveloperGarden_Response_ResponseAbstract
+{
+}

+ 39 - 0
library/Zend/Service/DeveloperGarden/Response/BaseUserService/GetAccountBalanceResponse.php

@@ -0,0 +1,39 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ResponseAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ResponseAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_BaseUserService_GetAccountBalanceResponse
+    extends Zend_Service_DeveloperGarden_Response_ResponseAbstract
+{
+}

+ 90 - 0
library/Zend/Service/DeveloperGarden/Response/BaseUserService/GetQuotaInformationResponse.php

@@ -0,0 +1,90 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ResponseAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ResponseAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_BaseUserService_GetQuotaInformationResponse
+    extends Zend_Service_DeveloperGarden_Response_ResponseAbstract
+{
+    /**
+     * System defined limit of quota points per day
+     *
+     * @var integer
+     */
+    public $maxQuota = null;
+
+    /**
+     * User specific limit of quota points per day
+     * cant be more than $maxQuota
+     *
+     * @var integer
+     */
+    public $maxUserQuota = null;
+
+    /**
+     * Used quota points for the current day
+     *
+     * @var integer
+     */
+    public $quotaLevel = null;
+
+    /**
+     * returns the quotaLevel
+     *
+     * @return integer
+     */
+    public function getQuotaLevel()
+    {
+        return $this->quotaLevel;
+    }
+
+    /**
+     * returns the maxUserQuota
+     *
+     * @return integer
+     */
+    public function getMaxUserQuota()
+    {
+        return $this->maxUserQuota;
+    }
+
+    /**
+     * return the maxQuota
+     *
+     * @return integer
+     */
+    public function getMaxQuota()
+    {
+        return $this->maxQuota;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/AddConferenceTemplateParticipantResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_AddConferenceTemplateParticipantResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_AddConferenceTemplateParticipantResponseType
+     */
+    public $addConferenceTemplateParticipantResponse = null;
+}

+ 55 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/AddConferenceTemplateParticipantResponseType.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_AddConferenceTemplateParticipantResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * the participant Id
+     *
+     * @var string
+     */
+    public $participantId = null;
+
+    /**
+     * return the participant id
+     *
+     * @return string
+     */
+    public function getParticipantId()
+    {
+        return $this->participantId;
+    }
+}

+ 39 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CCSResponseType.php

@@ -0,0 +1,39 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CommitConferenceResponse.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_CommitConferenceResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @codingStandardsIgnoreFile
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public $CCSResponse = null;
+}

+ 75 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php

@@ -0,0 +1,75 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+abstract class Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * returns the response object or null
+     *
+     * @return mixed
+     */
+    public function getResponse()
+    {
+        $r = new ReflectionClass($this);
+        foreach ($r->getProperties() as $p) {
+            $name = $p->getName();
+            if (strpos($name, 'Response') !== false) {
+                return $p->getValue($this);
+            }
+        }
+        return null;
+    }
+
+    /**
+     * parse the response data and throws exceptions
+     *
+     * @throws Zend_Service_DeveloperGarden_Response_Exception
+     * @return mixed
+     */
+    public function parse()
+    {
+        $retVal = $this->getResponse();
+        if ($retVal === null) {
+            $this->statusCode    = 9999;
+            $this->statusMessage = 'Internal response property not found.';
+        } else {
+            $this->statusCode    = $retVal->getStatusCode();
+            $this->statusMessage = $retVal->getStatusMessage();
+        }
+        parent::parse();
+        return $retVal;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceResponseType
+     */
+    public $createConferenceResponse = null;
+}

+ 55 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceResponseType.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * the conference Id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * return the conference id
+     *
+     * @return string
+     */
+    public function getConferenceId()
+    {
+        return $this->conferenceId;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceTemplateResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceTemplateResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceTemplateResponseType
+     */
+    public $createConferenceTemplateResponse = null;
+}

+ 55 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/CreateConferenceTemplateResponseType.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_CreateConferenceTemplateResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * the template Id
+     *
+     * @var string
+     */
+    public $templateId = null;
+
+    /**
+     * return the template id
+     *
+     * @return string
+     */
+    public function getTemplateId()
+    {
+        return $this->templateId;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceListResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceListResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceListResponseType
+     */
+    public $getConferenceListResponse = null;
+}

+ 55 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceListResponseType.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceListResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * array with conferences ids
+     *
+     * @var array
+     */
+    public $conferenceIds = array();
+
+    /**
+     * array with conference ids
+     *
+     * @return array
+     */
+    public function getConferenceIds()
+    {
+        return (array) $this->conferenceIds;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceStatusResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceStatusResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceStatusResponseType
+     */
+    public $getConferenceStatusResponse = null;
+}

+ 148 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceStatusResponseType.php

@@ -0,0 +1,148 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceStatusResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * details
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public $detail = null;
+
+    /**
+     * conference starttime
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public $schedule = null;
+
+    /**
+     * the starttime as longint
+     *
+     * @var integer
+     */
+    public $startTime = null;
+
+    /**
+     * array of Zend_Service_DeveloperGarden_ConferenceCall_Participant
+     *
+     * @var array
+     */
+    public $participants = null;
+
+    /**
+     * the account object
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceAccount
+     */
+    public $acc = null;
+
+    /**
+     * returns the details object
+     *
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public function getDetail()
+    {
+        return $this->detail;
+    }
+
+    /**
+     * returns the starttime
+     *
+     * @return integer
+     */
+    public function getStartTime()
+    {
+        return $this->startTime;
+    }
+
+    /**
+     * returns the schedule object
+     *
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceSchedule
+     */
+    public function getSchedule()
+    {
+        return $this->schedule;
+    }
+
+    /**
+     * returns array with all participants
+     * Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     *
+     * @return array of Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function getParticipants()
+    {
+        if ($this->participants instanceof Zend_Service_DeveloperGarden_ConferenceCall_Participant) {
+            $this->participants = array(
+                $this->participants
+            );
+        }
+        return $this->participants;
+    }
+
+    /**
+     * returns the participant object if found in the response
+     *
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function getParticipantById($participantId)
+    {
+        $participants = $this->getParticipants();
+        if ($participants !== null) {
+            foreach ($participants as $participant) {
+                if (strcmp($participant->getParticipantId(), $participantId) == 0) {
+                    return $participant;
+                }
+            }
+        }
+        return null;
+    }
+
+    /**
+     * returns the conference account details
+     *
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceAccount
+     */
+    public function getAccount()
+    {
+        return $this->acc;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateListResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateListResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateListResponseType
+     */
+    public $getConferenceTemplateListResponse = null;
+}

+ 55 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateListResponseType.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateListResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * array with template ids
+     *
+     * @var array
+     */
+    public $templateIds = array();
+
+    /**
+     * array with template ids
+     *
+     * @return array
+     */
+    public function getTemplateIds()
+    {
+        return (array)$this->templateIds;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateParticipantResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateParticipantResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateParticipantResponseType
+     */
+    public $getConferenceTemplateParticipantResponse = null;
+}

+ 55 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateParticipantResponseType.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateParticipantResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * the participant
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_Participant
+     */
+    public $participant = null;
+
+    /**
+     * returns the participant details
+     *
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function getParticipant()
+    {
+        return $this->participant;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateResponseType
+     */
+    public $getConferenceTemplateResponse = null;
+}

+ 97 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetConferenceTemplateResponseType.php

@@ -0,0 +1,97 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetConferenceTemplateResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * details
+     *
+     * @var Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public $detail = null;
+
+    /**
+     * array of Zend_Service_DeveloperGarden_ConferenceCall_Participant
+     *
+     * @var array
+     */
+    public $participants = null;
+
+    /**
+     * returns the details object
+     *
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_ConferenceDetail
+     */
+    public function getDetail()
+    {
+        return $this->detail;
+    }
+
+    /**
+     * returns array with all participants
+     * Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     *
+     * @return array of Zend_Service_DeveloperGarden_ConferenceCall_ParticipantDetail
+     */
+    public function getParticipants()
+    {
+        if ($this->participants instanceof Zend_Service_DeveloperGarden_ConferenceCall_Participant) {
+            $this->participants = array(
+                $this->participants
+            );
+        }
+        return $this->participants;
+    }
+
+    /**
+     * returns the participant object if found in the response
+     *
+     * @param string $participantId
+     * @return Zend_Service_DeveloperGarden_ConferenceCall_Participant
+     */
+    public function getParticipantById($participantId)
+    {
+        $participants = $this->getParticipants();
+        if ($participants !== null) {
+            foreach ($participants as $participant) {
+                if (strcmp($participant->getParticipantId(), $participantId) == 0) {
+                    return $participant;
+                }
+            }
+        }
+        return null;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetParticipantStatusResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetParticipantStatusResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_GetParticipantStatusResponseType
+     */
+    public $getParticipantStatusResponse = null;
+}

+ 55 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetParticipantStatusResponseType.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetParticipantStatusResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * @var array
+     */
+    public $status = null;
+
+    /**
+     * returns the status array
+     * a array of
+     * Zend_Service_DeveloperGarden_ConferenceCall_ParticipantStatus
+     *
+     * @return array
+     */
+    public function getStatus()
+    {
+        return $this->status;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetRunningConferenceResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetRunningConferenceResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_GetRunningConferenceResponseType
+     */
+    public $getRunningConferenceResponse = null;
+}

+ 55 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/GetRunningConferenceResponseType.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_GetRunningConferenceResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * the conference Id
+     *
+     * @var string
+     */
+    public $conferenceId = null;
+
+    /**
+     * return the conference id
+     *
+     * @return string
+     */
+    public function getConferenceId()
+    {
+        return $this->conferenceId;
+    }
+}

+ 45 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/NewParticipantResponse.php

@@ -0,0 +1,45 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_NewParticipantResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_NewParticipantResponseType
+     */
+    public $newParticipantResponse = null;
+}

+ 55 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/NewParticipantResponseType.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_NewParticipantResponseType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * the participant Id
+     *
+     * @var string
+     */
+    public $participantId = null;
+
+    /**
+     * return the participant id
+     *
+     * @return string
+     */
+    public function getParticipantId()
+    {
+        return $this->participantId;
+    }
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveConferenceResponse.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveConferenceResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @codingStandardsIgnoreFile
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public $CCSResponse = null;
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveConferenceTemplateParticipantResponse.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveConferenceTemplateParticipantResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @codingStandardsIgnoreFile
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public $CCSResponse = null;
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveConferenceTemplateResponse.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveConferenceTemplateResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @codingStandardsIgnoreFile
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public $CCSResponse = null;
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/RemoveParticipantResponse.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_RemoveParticipantResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @codingStandardsIgnoreFile
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public $CCSResponse = null;
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateConferenceResponse.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateConferenceResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @codingStandardsIgnoreFile
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public $CCSResponse = null;
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateConferenceTemplateParticipantResponse.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateConferenceTemplateParticipantResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @codingStandardsIgnoreFile
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public $CCSResponse = null;
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateConferenceTemplateResponse.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateConferenceTemplateResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @codingStandardsIgnoreFile
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public $CCSResponse = null;
+}

+ 46 - 0
library/Zend/Service/DeveloperGarden/Response/ConferenceCall/UpdateParticipantResponse.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/ConferenceCall/ConferenceCallAbstract.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_ConferenceCall_UpdateParticipantResponse
+    extends Zend_Service_DeveloperGarden_Response_ConferenceCall_ConferenceCallAbstract
+{
+    /**
+     * response data
+     *
+     * @codingStandardsIgnoreFile
+     * @var Zend_Service_DeveloperGarden_Response_ConferenceCall_CCSResponseType
+     */
+    public $CCSResponse = null;
+}

+ 39 - 0
library/Zend/Service/DeveloperGarden/Response/Exception.php

@@ -0,0 +1,39 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * Zend_Service_DeveloperGarden_Exception
+ */
+require_once 'Zend/Service/DeveloperGarden/Exception.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_Exception
+    extends Zend_Service_DeveloperGarden_Exception
+{
+}

+ 77 - 0
library/Zend/Service/DeveloperGarden/Response/IpLocation/CityType.php

@@ -0,0 +1,77 @@
+<?php
+/**
+ * Zend Framework
+ *
+ * LICENSE
+ *
+ * This source file is subject to the new BSD license that is bundled
+ * with this package in the file LICENSE.txt.
+ * It is also available through the world-wide-web at this URL:
+ * http://framework.zend.com/license/new-bsd
+ * If you did not receive a copy of the license and are unable to
+ * obtain it through the world-wide-web, please send an email
+ * to license@zend.com so we can send you a copy immediately.
+ *
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ * @version    $Id$
+ */
+
+/**
+ * @see Zend_Service_DeveloperGarden_Response_BaseType
+ */
+require_once 'Zend/Service/DeveloperGarden/Response/BaseType.php';
+
+/**
+ * @category   Zend
+ * @package    Zend_Service
+ * @subpackage DeveloperGarden
+ * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
+ * @author     Marco Kaiser
+ * @license    http://framework.zend.com/license/new-bsd     New BSD License
+ */
+class Zend_Service_DeveloperGarden_Response_IpLocation_CityType
+    extends Zend_Service_DeveloperGarden_Response_BaseType
+{
+    /**
+     * @var string
+     */
+    public $countryCode = null;
+
+    /**
+     * @var string
+     */
+    public $cityCode = null;
+
+    /**
+     * @var string
+     */
+    public $cityName = null;
+
+    /**
+     * @return string
+     */
+    public function getCountryCode()
+    {
+        return $this->countryCode;
+    }
+
+    /**
+     * @return string
+     */
+    public function getCityCode()
+    {
+        return $this->cityCode;
+    }
+
+    /**
+     * @return string
+     */
+    public function getCityName()
+    {
+        return $this->cityName;
+    }
+}

Некоторые файлы не были показаны из-за большого количества измененных файлов