1/* 2 * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26package javax.security.sasl; 27 28import javax.security.auth.callback.ChoiceCallback; 29 30/** 31 * This callback is used by {@code SaslClient} and {@code SaslServer} 32 * to obtain a realm given a list of realm choices. 33 * 34 * @since 1.5 35 * 36 * @author Rosanna Lee 37 * @author Rob Weltman 38 */ 39public class RealmChoiceCallback extends ChoiceCallback { 40 41 /** 42 * Constructs a {@code RealmChoiceCallback} with a prompt, a list of 43 * choices and a default choice. 44 * 45 * @param prompt the non-null prompt to use to request the realm. 46 * @param choices the non-null list of realms to choose from. 47 * @param defaultChoice the choice to be used as the default choice 48 * when the list of choices is displayed. It is an index into 49 * the {@code choices} array. 50 * @param multiple true if multiple choices allowed; false otherwise 51 * @throws IllegalArgumentException If {@code prompt} is null or the empty string, 52 * if {@code choices} has a length of 0, if any element from 53 * {@code choices} is null or empty, or if {@code defaultChoice} 54 * does not fall within the array boundary of {@code choices} 55 */ 56 public RealmChoiceCallback(String prompt, String[]choices, 57 int defaultChoice, boolean multiple) { 58 super(prompt, choices, defaultChoice, multiple); 59 } 60 61 private static final long serialVersionUID = -8588141348846281332L; 62} 63