blob: 10c995c3767b012c3e4a58392c7220d1fb9f4d9b [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_13) on Mon Dec 07 14:17:37 IST 2009 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
AsyncEndpoint (Apache Axis2 - Transport - Root 1.0.0 API)
</TITLE>
<META NAME="date" CONTENT="2009-12-07">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AsyncEndpoint (Apache Axis2 - Transport - Root 1.0.0 API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AsyncEndpoint.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpointAdapter.html" title="class in org.apache.axis2.transport.testkit.endpoint"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../../index.html?org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="AsyncEndpoint.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.axis2.transport.testkit.endpoint</FONT>
<BR>
Interface AsyncEndpoint&lt;M&gt;</H2>
<DL>
<DT><DT><B>Type Parameters:</B><DD><CODE>M</CODE> - </DL>
<DL>
<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpointAdapter.html" title="class in org.apache.axis2.transport.testkit.endpoint">AsyncEndpointAdapter</A>, <A HREF="../../../../../../org/apache/axis2/transport/testkit/axis2/endpoint/AxisAsyncEndpoint.html" title="class in org.apache.axis2.transport.testkit.axis2.endpoint">AxisAsyncEndpoint</A>, <A HREF="../../../../../../org/apache/axis2/transport/testkit/http/JettyAsyncEndpoint.html" title="class in org.apache.axis2.transport.testkit.http">JettyAsyncEndpoint</A>, <A HREF="../../../../../../org/apache/axis2/transport/testkit/http/JettyByteArrayAsyncEndpoint.html" title="class in org.apache.axis2.transport.testkit.http">JettyByteArrayAsyncEndpoint</A>, <A HREF="../../../../../../org/apache/axis2/transport/testkit/http/JettyRESTAsyncEndpoint.html" title="class in org.apache.axis2.transport.testkit.http">JettyRESTAsyncEndpoint</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public interface <B>AsyncEndpoint&lt;M&gt;</B></DL>
</PRE>
<P>
Interface implemented by in-only test endpoints.
<p>
The endpoint must be ready to receive messages immediately after it
has been set up. In particular implementations must not make the
assumption that messages are only during a call to <A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html#waitForMessage(int)"><CODE>waitForMessage(int)</CODE></A>.
Indeed, a typical test case will set up the endpoint, send a message and only
afterwards call <A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html#waitForMessage(int)"><CODE>waitForMessage(int)</CODE></A>.
<p>
There are two strategies to guarantee this behavior:
<ul>
<li>The underlying transport internally queues incoming messages.
In that case <A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html#waitForMessage(int)"><CODE>waitForMessage(int)</CODE></A> should simply poll
for new messages. An example of this type of transport is
the mail transport.</li>
<li>The underlying transport requires that incoming messages are
processed immediately. In that case the implementation should
set up the required receiver or message processor and add
incoming messages to an internal queue that is polled
when <A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html#waitForMessage(int)"><CODE>waitForMessage(int)</CODE></A> is called. An example of
this kind of transport is HTTP. Implementations can use
<A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/InOnlyEndpointSupport.html" title="class in org.apache.axis2.transport.testkit.endpoint"><CODE>InOnlyEndpointSupport</CODE></A> to manage the message queue.</li>
</ul>
<P>
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/package-summary.html"><CODE>org.apache.axis2.transport.testkit.endpoint</CODE></A></DL>
<HR>
<P>
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html#clear()">clear</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Discard any pending messages.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../../org/apache/axis2/transport/testkit/message/IncomingMessage.html" title="class in org.apache.axis2.transport.testkit.message">IncomingMessage</A>&lt;<A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html" title="type parameter in AsyncEndpoint">M</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html#waitForMessage(int)">waitForMessage</A></B>(int&nbsp;timeout)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="clear()"><!-- --></A><H3>
clear</H3>
<PRE>
void <B>clear</B>()
throws java.lang.Exception</PRE>
<DL>
<DD>Discard any pending messages.
<P>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE>java.lang.Exception</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="waitForMessage(int)"><!-- --></A><H3>
waitForMessage</H3>
<PRE>
<A HREF="../../../../../../org/apache/axis2/transport/testkit/message/IncomingMessage.html" title="class in org.apache.axis2.transport.testkit.message">IncomingMessage</A>&lt;<A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html" title="type parameter in AsyncEndpoint">M</A>&gt; <B>waitForMessage</B>(int&nbsp;timeout)
throws java.lang.Throwable</PRE>
<DL>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE>java.lang.Throwable</CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AsyncEndpoint.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../../../org/apache/axis2/transport/testkit/endpoint/AsyncEndpointAdapter.html" title="class in org.apache.axis2.transport.testkit.endpoint"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../../index.html?org/apache/axis2/transport/testkit/endpoint/AsyncEndpoint.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="AsyncEndpoint.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2004-2009 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>