CallConfig.java |
/* * $Id: CallConfig.java,v 1.30 2010/09/29 17:21:48 agoubard Exp $ * * See the COPYRIGHT file for redistribution and use restrictions. */ package org.xins.common.service; import java.io.Serializable; /** * Configuration for a service call. Objects of this type specify certain * aspects of <em>how</em> a call is executed. For example, for an HTTP * service caller, a <code>CallConfig</code> object could specify what HTTP * method (GET, POST, etc.) to use. * * <p>This base class only specifies the property <em>failOverAllowed</em>, * which indicates whether fail-over is unconditionally allowed, even if the * request was already received or even processed by the other end. * * <p>This class is not thread safe</p> * * @version $Revision: 1.30 $ $Date: 2010/09/29 17:21:48 $ * @author <a href="mailto:ernst@ernstdehaan.com">Ernst de Haan</a> * @author <a href="mailto:anthony.goubard@japplis.com">Anthony Goubard</a> * * @since XINS 1.1.0 * * @see ServiceCaller * @see CallRequest */ public class CallConfig implements Serializable { /** * Flag that indicates whether fail-over is unconditionally allowed. */ private boolean _failOverAllowed; /** * Describes this configuration. * * <p>The implementation of this method in class {@link CallConfig} returns * a descriptive string that contains the <em>failOverAllowed</em> setting. * * @return * the description of this configuration, should never be <code>null</code>. */ public String describe() { String description = "Call config with fail over "; if (!_failOverAllowed) { description += "not "; } description += "allowed."; return description; } /** * Returns a textual presentation of this object. * * <p>The implementation of this method in class {@link CallRequest} * returns {@link #describe()}. * * @return * a textual presentation of this object, should never be * <code>null</code>. */ public final String toString() { return describe(); } /** * Determines whether fail-over is unconditionally allowed. * * @return * <code>true</code> if fail-over is unconditionally allowed, even if * the request was already received or even processed by the other end, * <code>false</code> otherwise. */ public final boolean isFailOverAllowed() { return _failOverAllowed; } /** * Configures whether fail-over is unconditionally allowed. * * @param allowed * <code>true</code> if fail-over is unconditionally allowed, even if * the request was already received or even processed by the other end, * <code>false</code> otherwise. */ public final void setFailOverAllowed(boolean allowed) { _failOverAllowed = allowed; } }