Net-Z3950-AsyncZ

 view release on metacpan or  search on metacpan

doc/AsyncZ.html  view on Meta::CPAN

<pre>
        [$errors[$index]-&gt;[0], $errors[$index]-&gt;[1]]</pre>
</dd>
<dd>
<p>$index is the index of the server in the <code>servers=&gt;\@servers</code> array.</p>
</dd>
<dd>
<p>See <a href="#item_net%3a%3az3950%3a%3aasyncz%3a%3ageterrors"><code>Net::Z3950::AsyncZ::getErrors</code></a>.</p>
</dd>
<dt><strong><a name="item_getmaxerrors">getMaxErrors</a></strong><br />
</dt>
<dd>
<pre>
        $error_number = $asnycZ-&gt;getMaxErrors();</pre>
</dd>
<dd>
<p>the maximum possible errors encountered: some of these may not if fact be errors and therefore
will not test <code>true</code> in <a href="#item_isz_error"><code>isZ_Error($err)</code></a></p>
</dd>
<dd>
<p>See <a href="#item_net%3a%3az3950%3a%3aasyncz%3a%3agetmaxerrors"><code>Net::Z3950::AsyncZ::getMaxErrors</code></a></p>
</dd>
<dt><strong><a name="item_isz_error">isZ_Error</a></strong><br />
</dt>
<dd>
<pre>
        $retv = isZ_Error($err)</pre>
</dd>
<dd>
<p>See <a href="#item_net%3a%3az3950%3a%3aasyncz%3a%3aisz_error"><code>Net::Z3950::AsyncZ::isZ_Error</code></a></p>
</dd>
<dt><strong><a name="item_isz_nonretryable">isZ_nonRetryable</a></strong><br />
</dt>
<dd>
<pre>
        $bool = isZ_nonRetryable(isZ_Error($err))</pre>
</dd>
<dd>
<p>See <a href="#item_net%3a%3az3950%3a%3aasyncz%3a%3aisz_nonretryable"><code>Net::Z3950::AsyncZ::isZ_nonRetryable</code></a></p>
</dd>
</dl>
<p>
</p>
<h3><a name="net::z3950::asyncz::errmsg_methods_for_errmsg_handling">Net::Z3950::AsyncZ::ErrMsg methods for ErrMsg Handling</a></h3>
<p><code>Net::Z3950::AsyncZ::ErrMsg</code> supplies eight object methods, which
enable you to determine the general category under which an
error falls and how serious it is. 
They all return <code>true</code> or <code>false</code>.</p>
<p>The basic syntax for all of these methods is:</p>
<pre>
        $err-&gt;method();</pre>
<dl>
<dt><strong><a name="item_issystem">isSystem</a></strong><br />
</dt>
<dd>
These are ususally errors reported back from Perl or C library
routines.  For instance:
</dd>
<dd>
<pre>
           Device or resource busy      
           Too many users
           Permission denied
           Software caused connection abort
           Invalid argument</pre>
</dd>
<dd>
<p>An ``Invalid argument'' will often come back when a query
fails and a library routine attempts to do
something which can't be done without the return value</p>
</dd>
<p></p>
<dt><strong><a name="item_isnetwork">isNetwork</a></strong><br />
</dt>
<dd>
These can be various problems, for instance:
</dd>
<dd>
<pre>
        Connection timed out
        Network is down
        Network is unreachable  
        Connection refused</pre>
</dd>
<p></p>
<dt><strong><a name="item_istryagain">isTryAgain</a></strong><br />
</dt>
<dd>
<table cellspacing="0" cellpadding="0"><tr><td>This applies to two cases:
<tr><td><td>[1] EAGAIN: the system error which returns a ``try again'' message 
<tr><td><td>[2] a process which has been created but never gets far enough to
<tr><td><td>    return an exit code, presumably because it has timed out.</table>
</dd>
<p></p>
<dt><strong><a name="item_issuccess">isSuccess</a></strong><br />
</dt>
<dd>
An error which answers <code>true</code> to <a href="#item_issuccess"><code>isSuccess</code></a> is one for which the
exit code is 0, i.e. one in which the process ended without an
error but did not return any records.
</dd>
<p></p>
<dt><strong><a name="item_isunspecified">isUnspecified</a></strong><br />
</dt>
<dd>
An Unspecified error is generally one which has been reported by the system
but which I have not included among the errors worth reporting
back to ordinary users. (You will, however, find them reported in the log file.)
Even some of the errors which I do list might not be worth
reporting back to the user (usually those answer <code>true</code> to <a href="#item_isz_nonretryable"><code>isZ_nonRetryable</code></a>.)
</dd>
<p></p>
<dt><strong><a name="item_isz3950">isZ3950</a></strong><br />
</dt>
<dd>
These are error messages returned from the Z3950 module.
</dd>
<p></p>
<dt><strong><a name="item_doretry">doRetry</a></strong><br />
</dt>
<dd>



( run in 1.134 second using v1.01-cache-2.11-cpan-39bf76dae61 )