View Javadoc
1   /*
2      Copyright 2010 Atlassian
3   
4      Licensed under the Apache License, Version 2.0 (the "License");
5      you may not use this file except in compliance with the License.
6      You may obtain a copy of the License at
7   
8          http://www.apache.org/licenses/LICENSE-2.0
9   
10     Unless required by applicable law or agreed to in writing, software
11     distributed under the License is distributed on an "AS IS" BASIS,
12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13     See the License for the specific language governing permissions and
14     limitations under the License.
15   */
16  package io.atlassian.fugue.retry;
17  
18  /**
19   * Takes action when an Exception is thrown. Examples include placing a delay in
20   * execution when performing back-offs and logging errors when exceptions are
21   * encountered.
22   *
23   * @see ExceptionHandlers for some predefined handlers
24   */
25  public interface ExceptionHandler {
26    /**
27     * Act on an exception, this method should be called by clients when an
28     * exception occurs in wrapped code.
29     *
30     * @param exception the exception to handle
31     */
32    void handle(RuntimeException exception);
33  }