Coverage Summary for Class: UncheckedExecutionException (com.google.common.util.concurrent)

Class Class, % Method, % Line, %
UncheckedExecutionException 0% (0/1) 0% (0/4) 0% (0/4)


1 /* 2  * Copyright (C) 2011 The Guava Authors 3  * 4  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except 5  * in compliance with the License. You may obtain a copy of the License at 6  * 7  * http://www.apache.org/licenses/LICENSE-2.0 8  * 9  * Unless required by applicable law or agreed to in writing, software distributed under the License 10  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 11  * or implied. See the License for the specific language governing permissions and limitations under 12  * the License. 13  */ 14  15 package com.google.common.util.concurrent; 16  17 import com.google.common.annotations.GwtCompatible; 18 import javax.annotation.CheckForNull; 19  20 /** 21  * Unchecked variant of {@link java.util.concurrent.ExecutionException}. As with {@code 22  * ExecutionException}, the exception's {@linkplain #getCause() cause} comes from a failed task, 23  * possibly run in another thread. 24  * 25  * <p>{@code UncheckedExecutionException} is intended as an alternative to {@code 26  * ExecutionException} when the exception thrown by a task is an unchecked exception. However, it 27  * may also wrap a checked exception in some cases. 28  * 29  * <p>When wrapping an {@code Error} from another thread, prefer {@link ExecutionError}. When 30  * wrapping a checked exception, prefer {@code ExecutionException}. 31  * 32  * @author Charles Fry 33  * @since 10.0 34  */ 35 @GwtCompatible 36 @ElementTypesAreNonnullByDefault 37 public class UncheckedExecutionException extends RuntimeException { 38  /* 39  * Ideally, this class would have exposed only constructors that require a non-null cause. We 40  * might try to move in that direction, but there are complications. See 41  * https://github.com/jspecify/nullness-checker-for-checker-framework/blob/61aafa4ae52594830cfc2d61c8b113009dbdb045/src/main/java/com/google/jspecify/nullness/NullSpecTransfer.java#L789 42  */ 43  44  /** Creates a new instance with {@code null} as its detail message. */ 45  protected UncheckedExecutionException() {} 46  47  /** Creates a new instance with the given detail message. */ 48  protected UncheckedExecutionException(@CheckForNull String message) { 49  super(message); 50  } 51  52  /** Creates a new instance with the given detail message and cause. */ 53  public UncheckedExecutionException(@CheckForNull String message, @CheckForNull Throwable cause) { 54  super(message, cause); 55  } 56  57  /** Creates a new instance with the given cause. */ 58  public UncheckedExecutionException(@CheckForNull Throwable cause) { 59  super(cause); 60  } 61  62  private static final long serialVersionUID = 0; 63 }