php-doc-en/reference/sam/functions/SAM-Connection-receive.xml
Daniel Egeberg 96c9d88bad Converted to utf-8
git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@297028 c90b9560-bf6c-de11-be94-00142212c4b1
2010-03-28 22:10:10 +00:00

187 lines
4.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id='function.samconnection-receive' xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>SAMConnection->receive</refname>
<refpurpose>
Receive a message from a queue or subscription.
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<classsynopsis>
<ooclass><classname>SAMConnection</classname></ooclass>
<methodsynopsis>
<type>SAMMessage</type><methodname>receive</methodname>
<methodparam><type>string</type><parameter>target</parameter></methodparam>
<methodparam choice='opt'><type>array</type><parameter>properties</parameter></methodparam>
</methodsynopsis>
</classsynopsis>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>target</parameter></term>
<listitem>
<para>
The identity of the queue, topic or subscription from which to receive
the message.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>properties</parameter></term>
<listitem>
<para>
An optional associative array of properties describing other
parameters to control the receive operation.
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Property name</entry>
<entry>Possible values</entry>
</row>
</thead>
<tbody>
<row>
<entry>SAM_CORRELID</entry>
<entry>
Used to request selection of the message to receive based upon
the correlation id string of the message.
</entry>
</row>
<row>
<entry>SAM_MESSAGEID</entry>
<entry>
Used to request selection of the message to receive based upon
the message id string of the message.
</entry>
</row>
<row>
<entry>SAM_WAIT</entry>
<entry>
Timeout value in milliseconds to control how long the request
should block waiting to receive a message before returning with
a failure if no message is available on the queue or topic. The
default value is 0 meaning wait indefinitely and should be used
with caution as the request may wait until the overall PHP script
processing time limit has expired if no message becomes available.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
This method returns a SAMMessage object or &false; if an error occurs.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Receiving a message from a queue</title>
<programlisting role="php">
<![CDATA[
<?php
$msg = $conn->receive('queue://receive/test');
if (!$msg) {
// The receive failed!
echo "Receive failed ($conn->errno) $conn->error";
}
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Receiving a message from a queue with options</title>
<para>
In this example the SAM_CORRELID option is used to specify a correlation
id string to be used to identify the message to receive. A wait timeout
of 10 seconds is also specified.
</para>
<programlisting role="php">
<![CDATA[
<?php
$msg = $conn->receive('queue://receive/test', array(SAM_CORRELID => $token, SAM_WAIT => 10000));
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Receiving a message from a subscription</title>
<para>
In this example we show how to receive a message from a subscription id.
</para>
<programlisting role="php">
<![CDATA[
<?php
$msg = $conn->receive($subscriptionName);
if (!$msg) {
// The receive failed!
echo "Receive failed ($conn->errno) $conn->error";
}
?>
]]>
</programlisting>
<para>
Please note that $subscriptionName is a subscription id returned from an
earlier subscribe call.
</para>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><xref linkend="function.samconnection-send" /></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->