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 18package org.apache.harmony.javax.security.auth.callback; 19 20/** 21 * Thrown when a {@link CallbackHandler} does not support a particular {@link 22 * Callback}. 23 */ 24public class UnsupportedCallbackException extends Exception { 25 26 private static final long serialVersionUID = -6873556327655666839L; 27 28 private Callback callback; 29 30 /** 31 * Creates a new exception instance and initializes it with just the 32 * unsupported {@code Callback}, but no error message. 33 * 34 * @param callback 35 * the {@code Callback} 36 */ 37 public UnsupportedCallbackException(Callback callback) { 38 super(); 39 this.callback = callback; 40 } 41 42 /** 43 * Creates a new exception instance and initializes it with both the 44 * unsupported {@code Callback} and an error message. 45 * 46 * @param callback 47 * the {@code Callback} 48 * @param message 49 * the error message 50 */ 51 public UnsupportedCallbackException(Callback callback, String message) { 52 super(message); 53 this.callback = callback; 54 } 55 56 /** 57 * Returns the unsupported {@code Callback} that triggered this exception. 58 * 59 * @return the {@code Callback} 60 */ 61 public Callback getCallback() { 62 return callback; 63 } 64} 65