javax.portlet
Class UnavailableException

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by javax.portlet.PortletException
              extended by javax.portlet.UnavailableException
All Implemented Interfaces:
java.io.Serializable

public class UnavailableException
extends PortletException

The portlet should throw the UnavailableException when the portlet is either temporarily or permanently unavailable to handle requests.

See Also:
Serialized Form

Constructor Summary
UnavailableException(java.lang.String text)
          Constructs a new exception with a descriptive message indicating that the portlet is permanently unavailable.
UnavailableException(java.lang.String text, int seconds)
          Constructs a new exception with a descriptive message indicating that the portlet is temporarily unavailable and giving an estimate of how long it will be unavailable.
 
Method Summary
 int getUnavailableSeconds()
          Returns the time in seconds for which the portlet can be expected to be unavailable.
 boolean isPermanent()
          Returns a boolean indicating whether the portlet is permanently unavailable.
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

UnavailableException

public UnavailableException(java.lang.String text)
Constructs a new exception with a descriptive message indicating that the portlet is permanently unavailable.

Parameters:
text - a String specifying the descriptive message

UnavailableException

public UnavailableException(java.lang.String text,
                            int seconds)
Constructs a new exception with a descriptive message indicating that the portlet is temporarily unavailable and giving an estimate of how long it will be unavailable.

In some cases, the portlet cannot make an estimate. For example, the portlet might know that a server it needs is not running, but it might not be able to report how long it will take to be restored to functionality. This can be indicated with a negative or zero value for the seconds argument.

Parameters:
text - a String specifying the descriptive message. This message can be written to a log file or displayed for the user.
seconds - an integer specifying the number of seconds for which the portlet expects to be unavailable; if this is zero or negative, it indicates that the portlet cannot make an estimate.
Method Detail

isPermanent

public boolean isPermanent()
Returns a boolean indicating whether the portlet is permanently unavailable. If so, something is wrong with the portlet, and the system administrator must take some corrective action.

Returns:
true if the portlet is permanently unavailable; false if the portlet is temporarily unavailable.

getUnavailableSeconds

public int getUnavailableSeconds()
Returns the time in seconds for which the portlet can be expected to be unavailable.

If the portlet is called again while it is still unavailable, it indicates the same time estimate. No effort is made to correct for the time elapsed since the exception was first reported.

If this method returns zero or a negative number, the portlet is permanently unavailable or cannot provide an estimate of how long it will be unavailable.

Returns:
an integer specifying the number of seconds the portlet will be temporarily unavailable, or zero or a negative number if the portlet is permanently unavailable or cannot make an estimate.