Class CalDavUnreachableException

All Implemented Interfaces:
Serializable

public class CalDavUnreachableException extends CalDavException
The conversation never reached the calendar server: the transport failed outright, or a gateway standing in front of the server answered that it could not reach it either (502, 503, 504).

Distinguished from its parent CalDavException for the same reason CalDavAuthenticationException is — the caller reacts differently. A plain CalDavException says this call did not work; this one says the server is not there, which is a property of the server and not of the call, and is therefore known after one attempt. A sequence of independent steps — the connect sequence, one synchronisation pass — must abandon its remaining steps rather than let each of them discover the same absence on its own: a CalDAV server may auto-ban a source address after repeated failed requests, and such bans are persistent and silent (a banned address has its connections dropped without a reply, which reads as a broken server rather than a block).

Deliberately not a signal to retry or to back off. There is no retry logic in this client and none is wanted; the answer to an absent server is fewer requests, not more.

500 is deliberately absent from the list: BlueMind answers 500 for an absent object, a quirk this add-on already accommodates, so treating it as "the server is not there" would abandon passes against a perfectly present server.

See Also:
  • Constructor Details

    • CalDavUnreachableException

      public CalDavUnreachableException(String message)
      An unreachable server explained by its message alone — a gateway status naming the method and URI it answered.
      Parameters:
      message - what went wrong, in server-and-URL terms
    • CalDavUnreachableException

      public CalDavUnreachableException(String message, Throwable cause)
      An unreachable server wrapping the transport failure that proved it.
      Parameters:
      message - what went wrong, in server-and-URL terms
      cause - the underlying transport failure