Renamed @binding.ws and @binding.wsdl to @binding.soap.

Fixed some line length problems.
Updated the description of getService to reflect the new parameters.


git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@237747 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
Graham Charters 2007-06-15 08:04:43 +00:00
parent 460fc9bed4
commit dc283a2faa
2 changed files with 64 additions and 32 deletions

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.2 $ -->
<!-- $Revision: 1.3 $ -->
<!-- Generated by xml_proto.php v2.2. Found in /scripts directory of phpdoc. -->
<refentry id="function.SCA-getService">
<refnamediv>
@ -17,12 +17,22 @@
<type>string</type>
<parameter>target</parameter>
</methodparam>
<methodparam choice="opt">
<type>string</type>
<parameter>binding</parameter>
</methodparam>
<methodparam choice="opt">
<type>array</type>
<parameter>config</parameter>
</methodparam>
</methodsynopsis>
&warn.experimental.func;
<para> Examine the target and initialise and return a proxy of the appropriate sort. If the target is for a local PHP component the returned proxy will be an SCA_LocalProxy. If the
target is for a WSDL file, the returned proxy will be a SCA_SoapProxy.</para>
<para> Examine the target and initialise and return a proxy of the appropriate
sort. If the target is for a local PHP component the returned proxy will be an
SCA_LocalProxy. If the target is for a WSDL file, the returned proxy will be a
SCA_SoapProxy.</para>
</refsect1>
<refsect1 role="parameters">
@ -34,8 +44,37 @@
<parameter>target</parameter>
</term>
<listitem>
<para> An absolute or relative path to the PHP component, or to the WSDL file. A relative path, if specified, is resolved relative to the location of the script issuing the
getService call, and not against the include_path or current working directory.</para>
<para> An absolute or relative path to the target service or service
description (e.g. a URL to a json-rpc service description, a PHP
component, a WSDL file, and so on.). A relative path, if specified,
is resolved relative to the location of the script issuing the
<function>getService</function> call, and not against the include_path
or current working directory.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>binding</parameter>
</term>
<listitem>
<para> The binding (i.e. protocol) to use to communicate with the service
(e.g binding.jsonrpc for a json-rpc service). Note, some service types
can be deduced from the target parameter (e.g. if the target parameter
ends in .wsdl then SCA will assume binding.soap). Any binding which
can be specified in an annotation can be specified here. For example
'binding.soap' is equivalent to the '@binding.soap' annotation.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>config</parameter>
</term>
<listitem>
<para> Any additional configuration prioperties for the binding (e.g.
array('location' => 'http://example.org')). Any binding configuration
which can be specified in an annotation can be specified here. For
example, 'location' is equivalent to the '@location' annotation to
configure the location of a target soap service. </para>
</listitem>
</varlistentry>
</variablelist>
@ -83,36 +122,29 @@
-->
<!-- Use when examples exist
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>A <function>SDO_DAS_ChangeSummary::beginLogging</function> example</title>
<title>An <function>SCA::getService</function> example</title>
<para>
Any text that describes the purpose of the example, or
what goes on in the example should go here (inside the
<example> tag, not out
This example shows how to get a proxy to an email soap service described
by <filename>EmailService.wsdl</filename> and located at
<filename>http://example.org</filename>.
</para>
<programlisting role="php">
<![CDATA[
<?php
if ($anexample === true) {
echo 'Use the PEAR Coding Standards';
}
include 'SCA/SCA.php';
$service = SCA::getService('EmailService.wsdl', 'binding.soap', array('location' => 'http://example.org'));
$service->send(...);
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
Use the PEAR Coding Standards
]]>
</screen>
</example>
</para>
</refsect1>
-->
<!-- Use when adding See Also links

View file

@ -1,5 +1,5 @@
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- $Revision: 1.2 $ -->
<!-- $Revision: 1.3 $ -->
<!-- Purpose: xml -->
<!-- Membership: pecl -->
<!-- State: experimental -->
@ -85,7 +85,7 @@ include "SCA/SCA.php";
* Calculate a stock price for a given ticker symbol in a given currency.
*
* @service
* @binding.ws
* @binding.soap
*/
class ConvertedStockQuote {
@ -101,7 +101,7 @@ class ConvertedStockQuote {
* The stock quote service to use.
*
* @reference
* @binding.wsdl ../StockQuote/StockQuote.wsdl
* @binding.soap ../StockQuote/StockQuote.wsdl
*/
public $stock_quote;
@ -354,9 +354,9 @@ class ConvertedStockQuote {
<para>
The @binding annotation has two forms @binding.php and
@@binding.ws, and indicates that the proxy is either for a local
@binding.soap, and indicates that the proxy is either for a local
component or for a Web service respectively. For both @binding.php
and @binding.ws, the annotation gives a target URI.
and @binding.soap, the annotation gives a target URI.
</para>
<para>
@ -426,7 +426,7 @@ class ConvertedStockQuote {
* The stock quote service to use.
*
* @reference
* @binding.wsdl ../StockQuote/StockQuote.wsdl
* @binding.soap ../StockQuote/StockQuote.wsdl
*/
public $stock_quote;
?>
@ -585,7 +585,7 @@ $rate = $exchange_rate->getRate($currency);
service component, so that it can be easily deployed and exposed as a
Web service. To provide SCA with the information it needs to
generate the WSDL, it is necessary to add the annotation
@binding.ws under the @service annotation and to specify the
@binding.soap under the @service annotation and to specify the
parameters and return values of the methods using the @param and
@return annotations. These annotations will be read when WSDL is
generated, and the order and types of the parameters determine the
@ -624,7 +624,7 @@ include "SCA/SCA.php";
* Scaffold implementation for a remote StockQuote Web service.
*
* @service
* @binding.ws
* @binding.soap
*
*/
class StockQuote {
@ -745,7 +745,7 @@ class StockQuote {
<para>
SCA components that expose a Web service interface (i.e. have
an @binding.ws annotation) will return their WSDL definition in
an @binding.soap annotation) will return their WSDL definition in
response to an HTTP request with a get parameter of "wsdl". The usual
way to obtain this is with "?wsdl" on the end of a URL. The example
below uses
@ -783,7 +783,7 @@ $service = SCA::getService('service.wsdl');
<title> Understanding how the WSDL is generated </title>
<para>
SCA for PHP generates WSDL for components which contain an
@binding.ws annotation after the @service annotation. To
@binding.soap annotation after the @service annotation. To
generate WSDL, the SCA runtime reflects on the component and
examines the @param and @return annotations for each public
method, as well as any @types annotations within the component. The
@ -1035,7 +1035,7 @@ include 'SCA/SCA.php';
* Manage the portfolio for a customer.
*
* @service
* @binding.ws
* @binding.soap
*
* @types http://www.example.org/Portfolio PortfolioTypes.xsd
*
@ -1167,7 +1167,7 @@ $address_book;
<?php
/**
* @service
* @binding.ws
* @binding.soap
* @types http://addressbook ../AddressBook/AddressBook.xsd
*/
class AddressBook {
@ -1453,7 +1453,7 @@ $address = SCA::createDataObject('http://addressbook','addressType');
<function>getService</function> is called with the target of a
WSDL file, a SOAP proxy is returned. A SOAP proxy is also injected
into the instance variables of a component that are defined with an
@reference and an @binding.ws anotations. When the script or
@reference and an @binding.soap anotations. When the script or
component makes calls on the SOAP proxy, they are formed into Web
service SOAP requests and passed on to the target component, with
the help of the PHP Soap extension.