1 | /*- | |
2 | * #%L | |
3 | * io.earcam.unexceptional | |
4 | * %% | |
5 | * Copyright (C) 2016 - 2017 earcam | |
6 | * %% | |
7 | * SPDX-License-Identifier: (BSD-3-Clause OR EPL-1.0 OR Apache-2.0 OR MIT) | |
8 | * | |
9 | * You <b>must</b> choose to accept, in full - any individual or combination of | |
10 | * the following licenses: | |
11 | * <ul> | |
12 | * <li><a href="https://opensource.org/licenses/BSD-3-Clause">BSD-3-Clause</a></li> | |
13 | * <li><a href="https://www.eclipse.org/legal/epl-v10.html">EPL-1.0</a></li> | |
14 | * <li><a href="https://www.apache.org/licenses/LICENSE-2.0">Apache-2.0</a></li> | |
15 | * <li><a href="https://opensource.org/licenses/MIT">MIT</a></li> | |
16 | * </ul> | |
17 | * #L% | |
18 | */ | |
19 | package io.earcam.unexceptional; | |
20 | ||
21 | /** | |
22 | * Unchecked exception holding {@link InterruptedException}. It <b>resets</b> the interrupt flag. | |
23 | * | |
24 | * @since 0.2.0 | |
25 | */ | |
26 | public class UncheckedInterruptException extends UncheckedException { | |
27 | ||
28 | private static final long serialVersionUID = 5410904583469754965L; | |
29 | ||
30 | ||
31 | /** | |
32 | * This constructor also sets the interrupt flag | |
33 | * | |
34 | * see {@link UncheckedException#UncheckedException(Throwable)} | |
35 | * | |
36 | * @param cause the underlying cause | |
37 | */ | |
38 | public UncheckedInterruptException(InterruptedException cause) | |
39 | { | |
40 | super(cause); | |
41 |
1
1. |
Thread.currentThread().interrupt(); |
42 | } | |
43 | } | |
Mutations | ||
41 |
1.1 |