blob: 66df40df84935a0194e0a0ef0200271a8c3c97bf [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.5.0_22) on Thu Jan 19 13:48:22 EST 2012 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
LoadDistributorTargetSelector (Apache CXF Bundle Jar 2.3.9 API)
</TITLE>
<META NAME="keywords" CONTENT="org.apache.cxf.clustering.LoadDistributorTargetSelector class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="LoadDistributorTargetSelector (Apache CXF Bundle Jar 2.3.9 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="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LoadDistributorTargetSelector.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>
Apache CXF API</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/cxf/clustering/LoadDistributorFeature.html" title="class in org.apache.cxf.clustering"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/cxf/clustering/RandomStrategy.html" title="class in org.apache.cxf.clustering"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/apache/cxf/clustering/LoadDistributorTargetSelector.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="LoadDistributorTargetSelector.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;<A HREF="#nested_classes_inherited_from_class_org.apache.cxf.clustering.FailoverTargetSelector">NESTED</A>&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.cxf.clustering.FailoverTargetSelector">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&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.cxf.clustering</FONT>
<BR>
Class LoadDistributorTargetSelector</H2>
<PRE>
<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">java.lang.Object</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/apache/cxf/endpoint/AbstractConduitSelector.html" title="class in org.apache.cxf.endpoint">org.apache.cxf.endpoint.AbstractConduitSelector</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html" title="class in org.apache.cxf.clustering">org.apache.cxf.clustering.FailoverTargetSelector</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.cxf.clustering.LoadDistributorTargetSelector</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../org/apache/cxf/endpoint/ConduitSelector.html" title="interface in org.apache.cxf.endpoint">ConduitSelector</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>LoadDistributorTargetSelector</B><DT>extends <A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector</A></DL>
</PRE>
<P>
<DL>
<DT><B>Author:</B></DT>
<DD>jtalbut
The LoadDistributorTargetSelector attempts to do the same job as the
FailoverTargetSelector, but to choose an alternate target on every request
rather than just when a fault occurs.
The LoadDistributorTargetSelector uses the same FailoverStrategy interface as
the FailoverTargetSelector, but has a few significant limitations:
1. Because the LoadDistributorTargetSelector needs to maintain a list of targets
between calls it has to obtain that list without reference to a Message.
Most FailoverStrategy classes can support this for addresses, but it cannot
be supported for endpoints.
If the list of targets cannot be obtained without reference to a Message then
the list will still be obtained but it will be specific to the Message and thus
discarded after this message has been processed. As a consequence, if the
strategy chosen is a simple sequential one the first item in the list will
be chosen every time.
Conclusion: Be aware that if you are working with targets that are
dependent on the Message the process will be less efficient and that the
SequentialStrategy will not distribute the load at all.
2. The AbstractStaticFailoverStrategy base class excludes the 'default' endpoint
from the list of alternate endpoints.
If alternate endpoints (as opposed to alternate addresses) are to be used
you should probably ensure that your FailoverStrategy overrides getAlternateEndpoints
and calls getEndpoints with acceptCandidatesWithSameAddress = true.</DD>
</DL>
<HR>
<P>
<!-- ======== NESTED CLASS SUMMARY ======== -->
<A NAME="nested_class_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>Nested Class Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="nested_classes_inherited_from_class_org.apache.cxf.clustering.FailoverTargetSelector"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Nested classes/interfaces inherited from class org.apache.cxf.clustering.<A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.InvocationContext.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector.InvocationContext</A>, <A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.InvocationKey.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector.InvocationKey</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_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>Field Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.cxf.clustering.FailoverTargetSelector"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.cxf.clustering.<A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#failoverStrategy">failoverStrategy</A>, <A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#inProgress">inProgress</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.cxf.endpoint.AbstractConduitSelector"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.cxf.endpoint.<A HREF="../../../../org/apache/cxf/endpoint/AbstractConduitSelector.html" title="class in org.apache.cxf.endpoint">AbstractConduitSelector</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/cxf/endpoint/AbstractConduitSelector.html#endpoint">endpoint</A>, <A HREF="../../../../org/apache/cxf/endpoint/AbstractConduitSelector.html#selectedConduit">selectedConduit</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_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>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/apache/cxf/clustering/LoadDistributorTargetSelector.html#LoadDistributorTargetSelector()">LoadDistributorTargetSelector</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Normal constructor.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/apache/cxf/clustering/LoadDistributorTargetSelector.html#LoadDistributorTargetSelector(org.apache.cxf.transport.Conduit)">LoadDistributorTargetSelector</A></B>(<A HREF="../../../../org/apache/cxf/transport/Conduit.html" title="interface in org.apache.cxf.transport">Conduit</A>&nbsp;c)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor, allowing a specific conduit to override normal selection.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== 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>protected &nbsp;<A HREF="../../../../org/apache/cxf/endpoint/Endpoint.html" title="interface in org.apache.cxf.endpoint">Endpoint</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/cxf/clustering/LoadDistributorTargetSelector.html#getFailoverTarget(org.apache.cxf.message.Exchange, org.apache.cxf.clustering.FailoverTargetSelector.InvocationContext)">getFailoverTarget</A></B>(<A HREF="../../../../org/apache/cxf/message/Exchange.html" title="interface in org.apache.cxf.message">Exchange</A>&nbsp;exchange,
<A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.InvocationContext.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector.InvocationContext</A>&nbsp;invocation)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the failover target endpoint, if a suitable one is available.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/logging/Logger.html" title="class or interface in java.util.logging">Logger</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/cxf/clustering/LoadDistributorTargetSelector.html#getLogger()">getLogger</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/cxf/clustering/LoadDistributorTargetSelector.html#isFailover()">isFailover</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/cxf/clustering/LoadDistributorTargetSelector.html#requiresFailover(org.apache.cxf.message.Exchange)">requiresFailover</A></B>(<A HREF="../../../../org/apache/cxf/message/Exchange.html" title="interface in org.apache.cxf.message">Exchange</A>&nbsp;exchange)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Check if the exchange is suitable for a failover.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/cxf/transport/Conduit.html" title="interface in org.apache.cxf.transport">Conduit</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/cxf/clustering/LoadDistributorTargetSelector.html#selectConduit(org.apache.cxf.message.Message)">selectConduit</A></B>(<A HREF="../../../../org/apache/cxf/message/Message.html" title="interface in org.apache.cxf.message">Message</A>&nbsp;message)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Called when a Conduit is actually required.</TD>
</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/cxf/clustering/LoadDistributorTargetSelector.html#setFailover(boolean)">setFailover</A></B>(boolean&nbsp;failover)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.cxf.clustering.FailoverTargetSelector"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.cxf.clustering.<A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#complete(org.apache.cxf.message.Exchange)">complete</A>, <A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#getStrategy()">getStrategy</A>, <A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#overrideAddressProperty(java.util.Map)">overrideAddressProperty</A>, <A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#prepare(org.apache.cxf.message.Message)">prepare</A>, <A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#setStrategy(org.apache.cxf.clustering.FailoverStrategy)">setStrategy</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.cxf.endpoint.AbstractConduitSelector"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.cxf.endpoint.<A HREF="../../../../org/apache/cxf/endpoint/AbstractConduitSelector.html" title="class in org.apache.cxf.endpoint">AbstractConduitSelector</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/cxf/endpoint/AbstractConduitSelector.html#getEndpoint()">getEndpoint</A>, <A HREF="../../../../org/apache/cxf/endpoint/AbstractConduitSelector.html#getSelectedConduit(org.apache.cxf.message.Message)">getSelectedConduit</A>, <A HREF="../../../../org/apache/cxf/endpoint/AbstractConduitSelector.html#setEndpoint(org.apache.cxf.endpoint.Endpoint)">setEndpoint</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_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>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="LoadDistributorTargetSelector()"><!-- --></A><H3>
LoadDistributorTargetSelector</H3>
<PRE>
public <B>LoadDistributorTargetSelector</B>()</PRE>
<DL>
<DD>Normal constructor.
<P>
</DL>
<HR>
<A NAME="LoadDistributorTargetSelector(org.apache.cxf.transport.Conduit)"><!-- --></A><H3>
LoadDistributorTargetSelector</H3>
<PRE>
public <B>LoadDistributorTargetSelector</B>(<A HREF="../../../../org/apache/cxf/transport/Conduit.html" title="interface in org.apache.cxf.transport">Conduit</A>&nbsp;c)</PRE>
<DL>
<DD>Constructor, allowing a specific conduit to override normal selection.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>c</CODE> - specific conduit</DL>
</DL>
<!-- ============ 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="isFailover()"><!-- --></A><H3>
isFailover</H3>
<PRE>
public boolean <B>isFailover</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setFailover(boolean)"><!-- --></A><H3>
setFailover</H3>
<PRE>
public void <B>setFailover</B>(boolean&nbsp;failover)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getLogger()"><!-- --></A><H3>
getLogger</H3>
<PRE>
protected <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/logging/Logger.html" title="class or interface in java.util.logging">Logger</A> <B>getLogger</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#getLogger()">getLogger</A></CODE> in class <CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>the logger to use</DL>
</DD>
</DL>
<HR>
<A NAME="selectConduit(org.apache.cxf.message.Message)"><!-- --></A><H3>
selectConduit</H3>
<PRE>
public <A HREF="../../../../org/apache/cxf/transport/Conduit.html" title="interface in org.apache.cxf.transport">Conduit</A> <B>selectConduit</B>(<A HREF="../../../../org/apache/cxf/message/Message.html" title="interface in org.apache.cxf.message">Message</A>&nbsp;message)</PRE>
<DL>
<DD>Called when a Conduit is actually required.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/cxf/endpoint/ConduitSelector.html#selectConduit(org.apache.cxf.message.Message)">selectConduit</A></CODE> in interface <CODE><A HREF="../../../../org/apache/cxf/endpoint/ConduitSelector.html" title="interface in org.apache.cxf.endpoint">ConduitSelector</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#selectConduit(org.apache.cxf.message.Message)">selectConduit</A></CODE> in class <CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>message</CODE> -
<DT><B>Returns:</B><DD>the Conduit to use for mediation of the message</DL>
</DD>
</DL>
<HR>
<A NAME="getFailoverTarget(org.apache.cxf.message.Exchange, org.apache.cxf.clustering.FailoverTargetSelector.InvocationContext)"><!-- --></A><H3>
getFailoverTarget</H3>
<PRE>
protected <A HREF="../../../../org/apache/cxf/endpoint/Endpoint.html" title="interface in org.apache.cxf.endpoint">Endpoint</A> <B>getFailoverTarget</B>(<A HREF="../../../../org/apache/cxf/message/Exchange.html" title="interface in org.apache.cxf.message">Exchange</A>&nbsp;exchange,
<A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.InvocationContext.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector.InvocationContext</A>&nbsp;invocation)</PRE>
<DL>
<DD>Get the failover target endpoint, if a suitable one is available.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#getFailoverTarget(org.apache.cxf.message.Exchange, org.apache.cxf.clustering.FailoverTargetSelector.InvocationContext)">getFailoverTarget</A></CODE> in class <CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>exchange</CODE> - the current Exchange<DD><CODE>invocation</CODE> - the current InvocationContext
<DT><B>Returns:</B><DD>a failover endpoint if one is available
Note: The only difference between this and the super implementation is
that the current (failed) address is removed from the list set of alternates,
it could be argued that that change should be in the super implementation
but I'm not sure of the impact.</DL>
</DD>
</DL>
<HR>
<A NAME="requiresFailover(org.apache.cxf.message.Exchange)"><!-- --></A><H3>
requiresFailover</H3>
<PRE>
protected boolean <B>requiresFailover</B>(<A HREF="../../../../org/apache/cxf/message/Exchange.html" title="interface in org.apache.cxf.message">Exchange</A>&nbsp;exchange)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#requiresFailover(org.apache.cxf.message.Exchange)">FailoverTargetSelector</A></CODE></B></DD>
<DD>Check if the exchange is suitable for a failover.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html#requiresFailover(org.apache.cxf.message.Exchange)">requiresFailover</A></CODE> in class <CODE><A HREF="../../../../org/apache/cxf/clustering/FailoverTargetSelector.html" title="class in org.apache.cxf.clustering">FailoverTargetSelector</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>exchange</CODE> - the current Exchange
<DT><B>Returns:</B><DD>boolean true if a failover should be attempted</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/LoadDistributorTargetSelector.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>
Apache CXF API</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/cxf/clustering/LoadDistributorFeature.html" title="class in org.apache.cxf.clustering"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/cxf/clustering/RandomStrategy.html" title="class in org.apache.cxf.clustering"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/apache/cxf/clustering/LoadDistributorTargetSelector.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="LoadDistributorTargetSelector.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;<A HREF="#nested_classes_inherited_from_class_org.apache.cxf.clustering.FailoverTargetSelector">NESTED</A>&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.cxf.clustering.FailoverTargetSelector">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Apache CXF
</BODY>
</HTML>