1 /*
2  *  Licensed to the Apache Software Foundation (ASF) under one or more
3  *  contributor license agreements.  See the NOTICE file distributed with
4  *  this work for additional information regarding copyright ownership.
5  *  The ASF licenses this file to You under the Apache License, Version 2.0
6  *  (the "License"); you may not use this file except in compliance with
7  *  the License.  You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  *  Unless required by applicable law or agreed to in writing, software
12  *  distributed under the License is distributed on an "AS IS" BASIS,
13  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  *  See the License for the specific language governing permissions and
15  *  limitations under the License.
16  */
17 
18 package java.lang;
19 
20 /**
21  * Thrown when an unsupported operation is attempted.
22  */
23 public class UnsupportedOperationException extends RuntimeException {
24 
25     private static final long serialVersionUID = -1242599979055084673L;
26 
27     /**
28      * Constructs a new {@code UnsupportedOperationException} that includes the
29      * current stack trace.
30      */
UnsupportedOperationException()31     public UnsupportedOperationException() {
32     }
33 
34     /**
35      * Constructs a new {@code UnsupportedOperationException} with the current
36      * stack trace and the specified detail message.
37      *
38      * @param detailMessage
39      *            the detail message for this exception.
40      */
UnsupportedOperationException(String detailMessage)41     public UnsupportedOperationException(String detailMessage) {
42         super(detailMessage);
43     }
44 
45     /**
46      * Constructs a new {@code UnsupportedOperationException} with the current
47      * stack trace, the specified detail message and the specified cause.
48      *
49      * @param message
50      *            the detail message for this exception.
51      * @param cause
52      *            the optional cause of this exception, may be {@code null}.
53      * @since 1.5
54      */
UnsupportedOperationException(String message, Throwable cause)55     public UnsupportedOperationException(String message, Throwable cause) {
56         super(message, cause);
57     }
58 
59     /**
60      * Constructs a new {@code UnsupportedOperationException} with the current
61      * stack trace and the specified cause.
62      *
63      * @param cause
64      *            the optional cause of this exception, may be {@code null}.
65      * @since 1.5
66      */
UnsupportedOperationException(Throwable cause)67     public UnsupportedOperationException(Throwable cause) {
68         super((cause == null ? null : cause.toString()), cause);
69     }
70 }
71