1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/* 2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Written by Doug Lea with assistance from members of JCP JSR-166 3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Expert Group and released to the public domain, as explained at 4a807b4d808d2591894daf13aab179b2e9c46a2f5Jesse Wilson * http://creativecommons.org/publicdomain/zero/1.0/ 5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpackage java.util.concurrent; 8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/** 10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Exception thrown when attempting to retrieve the result of a task 11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * that aborted by throwing an exception. This exception can be 12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * inspected using the {@link #getCause()} method. 13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @see Future 15adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @since 1.5 16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @author Doug Lea 17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 18adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic class ExecutionException extends Exception { 19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project private static final long serialVersionUID = 7830266012832686185L; 20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 2291770798d8b9280d48d30df2ed7f63b3ed9b036fCalin Juravle * Constructs an {@code ExecutionException} with no detail message. 23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * The cause is not initialized, and may subsequently be 24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * initialized by a call to {@link #initCause(Throwable) initCause}. 25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected ExecutionException() { } 27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 2991770798d8b9280d48d30df2ed7f63b3ed9b036fCalin Juravle * Constructs an {@code ExecutionException} with the specified detail 30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * message. The cause is not initialized, and may subsequently be 31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * initialized by a call to {@link #initCause(Throwable) initCause}. 32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @param message the detail message 34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 35adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected ExecutionException(String message) { 36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project super(message); 37adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 39adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 4091770798d8b9280d48d30df2ed7f63b3ed9b036fCalin Juravle * Constructs an {@code ExecutionException} with the specified detail 41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * message and cause. 42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @param message the detail message 44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @param cause the cause (which is saved for later retrieval by the 45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * {@link #getCause()} method) 46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public ExecutionException(String message, Throwable cause) { 48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project super(message, cause); 49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 5291770798d8b9280d48d30df2ed7f63b3ed9b036fCalin Juravle * Constructs an {@code ExecutionException} with the specified cause. 53a807b4d808d2591894daf13aab179b2e9c46a2f5Jesse Wilson * The detail message is set to {@code (cause == null ? null : 54a807b4d808d2591894daf13aab179b2e9c46a2f5Jesse Wilson * cause.toString())} (which typically contains the class and 5591770798d8b9280d48d30df2ed7f63b3ed9b036fCalin Juravle * detail message of {@code cause}). 56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @param cause the cause (which is saved for later retrieval by the 58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * {@link #getCause()} method) 59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public ExecutionException(Throwable cause) { 61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project super(cause); 62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project} 64