<!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.5.0_22) on Fri Jan 20 11:50:46 EST 2012 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Uses of Interface org.apache.cxf.ws.rm.RetransmissionStatus (Apache CXF Bundle Jar 2.5.2 API)
</TITLE>


<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="Uses of Interface org.apache.cxf.ws.rm.RetransmissionStatus (Apache CXF Bundle Jar 2.5.2 API)";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">


<!-- ========= 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="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-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>
Apache CXF API</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../../index.html?org/apache/cxf/ws/rm/class-use/RetransmissionStatus.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="RetransmissionStatus.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>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<CENTER>
<H2>
<B>Uses of Interface<br>org.apache.cxf.ws.rm.RetransmissionStatus</B></H2>
</CENTER>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
Packages that use <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><A HREF="#org.apache.cxf.ws.rm"><B>org.apache.cxf.ws.rm</B></A></TD>
<TD>&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><A HREF="#org.apache.cxf.ws.rm.soap"><B>org.apache.cxf.ws.rm.soap</B></A></TD>
<TD>&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<P>
<A NAME="org.apache.cxf.ws.rm"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
Uses of <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A> in <A HREF="../../../../../../org/apache/cxf/ws/rm/package-summary.html">org.apache.cxf.ws.rm</A></FONT></TH>
</TR>
</TABLE>
&nbsp;
<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../org/apache/cxf/ws/rm/package-summary.html">org.apache.cxf.ws.rm</A> that return <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A></CODE></FONT></TD>
<TD><CODE><B>RetransmissionQueue.</B><B><A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionQueue.html#getRetransmissionStatus(org.apache.cxf.ws.rm.SourceSequence, long)">getRetransmissionStatus</A></B>(<A HREF="../../../../../../org/apache/cxf/ws/rm/SourceSequence.html" title="class in org.apache.cxf.ws.rm">SourceSequence</A>&nbsp;seq,
                        long&nbsp;num)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the retransmission status for the specified message.</TD>
</TR>
</TABLE>
&nbsp;
<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../org/apache/cxf/ws/rm/package-summary.html">org.apache.cxf.ws.rm</A> that return types with arguments of type <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A>&lt;<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Long.html" title="class or interface in java.lang">Long</A>,<A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A>&gt;</CODE></FONT></TD>
<TD><CODE><B>RetransmissionQueue.</B><B><A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionQueue.html#getRetransmissionStatuses(org.apache.cxf.ws.rm.SourceSequence)">getRetransmissionStatuses</A></B>(<A HREF="../../../../../../org/apache/cxf/ws/rm/SourceSequence.html" title="class in org.apache.cxf.ws.rm">SourceSequence</A>&nbsp;seq)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the retransmission status of all the messages assigned to the sequence.</TD>
</TR>
</TABLE>
&nbsp;
<P>
<A NAME="org.apache.cxf.ws.rm.soap"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
Uses of <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A> in <A HREF="../../../../../../org/apache/cxf/ws/rm/soap/package-summary.html">org.apache.cxf.ws.rm.soap</A></FONT></TH>
</TR>
</TABLE>
&nbsp;
<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2">Classes in <A HREF="../../../../../../org/apache/cxf/ws/rm/soap/package-summary.html">org.apache.cxf.ws.rm.soap</A> that implement <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;class</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/cxf/ws/rm/soap/RetransmissionQueueImpl.ResendCandidate.html" title="class in org.apache.cxf.ws.rm.soap">RetransmissionQueueImpl.ResendCandidate</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Represents a candidate for resend, i.e.</TD>
</TR>
</TABLE>
&nbsp;
<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../org/apache/cxf/ws/rm/soap/package-summary.html">org.apache.cxf.ws.rm.soap</A> that return <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A></CODE></FONT></TD>
<TD><CODE><B>RetransmissionQueueImpl.</B><B><A HREF="../../../../../../org/apache/cxf/ws/rm/soap/RetransmissionQueueImpl.html#getRetransmissionStatus(org.apache.cxf.ws.rm.SourceSequence, long)">getRetransmissionStatus</A></B>(<A HREF="../../../../../../org/apache/cxf/ws/rm/SourceSequence.html" title="class in org.apache.cxf.ws.rm">SourceSequence</A>&nbsp;seq,
                        long&nbsp;num)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../org/apache/cxf/ws/rm/soap/package-summary.html">org.apache.cxf.ws.rm.soap</A> that return types with arguments of type <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A>&lt;<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Long.html" title="class or interface in java.lang">Long</A>,<A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm">RetransmissionStatus</A>&gt;</CODE></FONT></TD>
<TD><CODE><B>RetransmissionQueueImpl.</B><B><A HREF="../../../../../../org/apache/cxf/ws/rm/soap/RetransmissionQueueImpl.html#getRetransmissionStatuses(org.apache.cxf.ws.rm.SourceSequence)">getRetransmissionStatuses</A></B>(<A HREF="../../../../../../org/apache/cxf/ws/rm/SourceSequence.html" title="class in org.apache.cxf.ws.rm">SourceSequence</A>&nbsp;seq)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<P>
<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="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../org/apache/cxf/ws/rm/RetransmissionStatus.html" title="interface in org.apache.cxf.ws.rm"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-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>
Apache CXF API</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../../index.html?org/apache/cxf/ws/rm/class-use/RetransmissionStatus.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="RetransmissionStatus.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>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Apache CXF
</BODY>
</HTML>
