diff options
Diffstat (limited to 'libjava/javax/security/auth/callback')
10 files changed, 0 insertions, 1824 deletions
diff --git a/libjava/javax/security/auth/callback/Callback.java b/libjava/javax/security/auth/callback/Callback.java deleted file mode 100644 index 359828e1a3c..00000000000 --- a/libjava/javax/security/auth/callback/Callback.java +++ /dev/null @@ -1,64 +0,0 @@ -/* Callback.java -- marker interface for callback classes - Copyright (C) 2003, Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -/** - * <p>Implementations of this interface are passed to a {@link CallbackHandler}, - * allowing underlying security services the ability to interact with a calling - * application to retrieve specific authentication data such as usernames and - * passwords, or to display certain information, such as error and warning - * messages.</p> - * - * <p><code>Callback</code> implementations do not retrieve or display the - * information requested by underlying security services. <code>Callback</code> - * implementations simply provide the means to pass such requests to - * applications, and for applications, if appropriate, to return requested - * information back to the underlying security services.</p> - * - * @see CallbackHandler - * @see ChoiceCallback - * @see ConfirmationCallback - * @see LanguageCallback - * @see NameCallback - * @see PasswordCallback - * @see TextInputCallback - * @see TextOutputCallback - */ -public interface Callback { -} diff --git a/libjava/javax/security/auth/callback/CallbackHandler.java b/libjava/javax/security/auth/callback/CallbackHandler.java deleted file mode 100644 index 8d22943cace..00000000000 --- a/libjava/javax/security/auth/callback/CallbackHandler.java +++ /dev/null @@ -1,155 +0,0 @@ -/* CallbackHandler.java -- base interface for callback handlers. - Copyright (C) 2003, Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -import java.io.IOException; - -/** - * <p>An application implements a <code>CallbackHandler</code> and passes it to - * underlying security services so that they may interact with the application - * to retrieve specific authentication data, such as usernames and passwords, or - * to display certain information, such as error and warning messages.</p> - * - * <p><code>CallbackHandler</code>s are implemented in an application-dependent - * fashion. For example, implementations for an application with a graphical - * user interface (GUI) may pop up windows to prompt for requested information - * or to display error messages. An implementation may also choose to obtain - * requested information from an alternate source without asking the end user.</p> - * - * <p>Underlying security services make requests for different types of - * information by passing individual Callbacks to the <code>CallbackHandler</code>. - * The <code>CallbackHandler</code> implementation decides how to retrieve and - * display information depending on the {@link Callback}s passed to it. For - * example, if the underlying service needs a username and password to - * authenticate a user, it uses a {@link NameCallback} and - * {@link PasswordCallback}. The <code>CallbackHandler</code> can then choose - * to prompt for a username and password serially, or to prompt for both in a - * single window.</p> - * - * <p>A default <code>CallbackHandler</code> class implementation may be - * specified in the <code>auth.login.defaultCallbackHandler</code> security - * property. The security property can be set in the Java security properties - * file located in the file named - * <code><JAVA_HOME>/lib/security/java.security</code>, where - * <code><JAVA_HOME></code> refers to the directory where the SDK was - * installed.</p> - * - * <p>If the security property is set to the fully qualified name of a - * <code>CallbackHandler</code> implementation class, then a - * <code>LoginContext</code>will load the specified <code>CallbackHandler</code> - * and pass it to the underlying <code>LoginModules</code>. The - * <code>LoginContext</code> only loads the default handler if one was not - * provided.</p> - * - * <p>All default handler implementations must provide a public zero-argument - * constructor.</p> - * - */ -public interface CallbackHandler -{ - - /** - * <p>Retrieve or display the information requested in the provided - * {@link Callback}s.</p> - * - * <p>The <code>handle()</code> method implementation checks the instance(s) - * of the {@link Callback} object(s) passed in to retrieve or display the - * requested information. The following example is provided to help - * demonstrate what an <code>handle()</code> method implementation might look - * like. This example code is for guidance only. Many details, including - * proper error handling, are left out for simplicity.</p> - * - * <pre> - *public void handle(Callback[] callbacks) - *throws IOException, UnsupportedCallbackException { - * for (int i = 0; i < callbacks.length; i++) { - * if (callbacks[i] instanceof TextOutputCallback) { - * // display the message according to the specified type - * TextOutputCallback toc = (TextOutputCallback)callbacks[i]; - * switch (toc.getMessageType()) { - * case TextOutputCallback.INFORMATION: - * System.out.println(toc.getMessage()); - * break; - * case TextOutputCallback.ERROR: - * System.out.println("ERROR: " + toc.getMessage()); - * break; - * case TextOutputCallback.WARNING: - * System.out.println("WARNING: " + toc.getMessage()); - * break; - * default: - * throw new IOException("Unsupported message type: " - * + toc.getMessageType()); - * } - * } else if (callbacks[i] instanceof NameCallback) { - * // prompt the user for a username - * NameCallback nc = (NameCallback)callbacks[i]; - * // ignore the provided defaultName - * System.err.print(nc.getPrompt()); - * System.err.flush(); - * nc.setName((new BufferedReader( - * new InputStreamReader(System.in))).readLine()); - * } else if (callbacks[i] instanceof PasswordCallback) { - * // prompt the user for sensitive information - * PasswordCallback pc = (PasswordCallback)callbacks[i]; - * System.err.print(pc.getPrompt()); - * System.err.flush(); - * pc.setPassword(readPassword(System.in)); - * } else { - * throw new UnsupportedCallbackException( - * callbacks[i], "Unrecognized Callback"); - * } - * } - *} - * - * // Reads user password from given input stream. - *private char[] readPassword(InputStream in) throws IOException { - * // insert code to read a user password from the input stream - *} - * </pre> - * - * @param callbacks an array of {@link Callback} objects provided by an - * underlying security service which contains the information requested to - * be retrieved or displayed. - * @throws IOException if an input or output error occurs. - * @throws UnsupportedCallbackException if the implementation of this method - * does not support one or more of the Callbacks specified in the - * <code>callbacks</code> parameter. - */ - void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException; -} diff --git a/libjava/javax/security/auth/callback/ChoiceCallback.java b/libjava/javax/security/auth/callback/ChoiceCallback.java deleted file mode 100644 index ec12a668514..00000000000 --- a/libjava/javax/security/auth/callback/ChoiceCallback.java +++ /dev/null @@ -1,236 +0,0 @@ -/* ChoiceCallback.java -- callback for a choice of values. - Copyright (C) 2003, Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -import java.io.Serializable; - -/** - * Underlying security services instantiate and pass a - * <code>ChoiceCallback</code> to the <code>handle()</code> method of a - * {@link CallbackHandler} to display a list of choices and to retrieve the - * selected choice(s). - * - * @see CallbackHandler - */ -public class ChoiceCallback implements Callback, Serializable -{ - - // Constants and variables - // ------------------------------------------------------------------------- - - /** - * @serial - * @since 1.4 - */ - private String prompt; - - /** - * @serial the list of choices. - * @since 1.4 - */ - private String[] choices; - - /** - * @serial the choice to be used as the default choice. - * @since 1.4 - */ - private int defaultChoice; - - /** - * @serial whether multiple selections are allowed from the list of choices. - * @since 1.4 - */ - private boolean multipleSelectionsAllowed; - - /** - * @serial the selected choices, represented as indexes into the choices list. - * @since 1.4 - */ - private int[] selections; - - // Constructor(s) - //-------------------------------------------------------------------------- - - /** - * Construct a <code>ChoiceCallback</code> with a prompt, a list of choices, - * a default choice, and a boolean specifying whether or not multiple - * selections from the list of choices are allowed. - * - * @param prompt the prompt used to describe the list of choices. - * @param choices the list of choices. - * @param defaultChoice the choice to be used as the default choice when the - * list of choices are displayed. This value is represented as an index into - * the <code>choices</code> array. - * @param multipleSelectionsAllowed boolean specifying whether or not - * multiple selections can be made from the list of choices. - * @throws IllegalArgumentException if <code>prompt</code> is <code>null</code>, - * if <code>prompt</code> has a length of <code>0</code>, if <code>choices</code> - * is <code>null</code>, if <code>choices</code> has a length of <code>0</code>, - * if any element from <code>choices</code> is <code>null</code>, if any - * element from <code>choices</code> has a length of <code>0</code> or if - * <code>defaultChoice</code> does not fall within the array boundaries of - * <code>choices</code>. - */ - public ChoiceCallback(String prompt, String[] choices, int defaultChoice, - boolean multipleSelectionsAllowed) - { - super(); - - setPrompt(prompt); - setChoices(choices); - if (defaultChoice < 0 || defaultChoice >= this.choices.length) - { - throw new IllegalArgumentException("default choice is out of bounds"); - } - this.defaultChoice = defaultChoice; - this.multipleSelectionsAllowed = multipleSelectionsAllowed; - } - - // Instance methods - // ------------------------------------------------------------------------- - - /** - * Get the prompt. - * - * @return the prompt. - */ - public String getPrompt() - { - return prompt; - } - - /** - * Get the list of choices. - * - * @return the list of choices. - */ - public String[] getChoices() - { - return choices; - } - - /** - * Get the defaultChoice. - * - * @return the defaultChoice, represented as an index into the choices list. - */ - public int getDefaultChoice() - { - return defaultChoice; - } - - /** - * Get the boolean determining whether multiple selections from the choices - * list are allowed. - * - * @return whether multiple selections are allowed. - */ - public boolean allowMultipleSelections() - { - return multipleSelectionsAllowed; - } - - /** - * Set the selected choice. - * - * @param selection the selection represented as an index into the choices - * list. - * @see #getSelectedIndexes() - */ - public void setSelectedIndex(int selection) - { - this.selections = new int[1]; - this.selections[0] = selection; - } - - /** - * Set the selected choices. - * - * @param selections the selections represented as indexes into the choices - * list. - * @throws UnsupportedOperationException if multiple selections are not - * allowed, as determined by <code>allowMultipleSelections</code>. - * @see #getSelectedIndexes() - */ - public void setSelectedIndexes(int[] selections) - { - if (!multipleSelectionsAllowed) - { - throw new UnsupportedOperationException("not allowed"); - } - - this.selections = selections; - } - - /** - * Get the selected choices. - * - * @return the selected choices, represented as indexes into the choices list. - * @see #setSelectedIndexes(int[]) - */ - public int[] getSelectedIndexes() - { - return selections; - } - - private void setPrompt(String prompt) throws IllegalArgumentException - { - if ((prompt == null) || (prompt.length() == 0)) - { - throw new IllegalArgumentException("invalid prompt"); - } - this.prompt = prompt; - } - - private void setChoices(String[] choices) throws IllegalArgumentException - { - if (choices == null || choices.length == 0) - { - throw new IllegalArgumentException("invalid choices"); - } - for (int i = 0; i < choices.length; i++) - { - if (choices[i] == null || choices[i].length() == 0) - { - throw new IllegalArgumentException("invalid choice at index #"+i); - } - } - this.choices = choices; - } -} diff --git a/libjava/javax/security/auth/callback/ConfirmationCallback.java b/libjava/javax/security/auth/callback/ConfirmationCallback.java deleted file mode 100644 index 938b3017380..00000000000 --- a/libjava/javax/security/auth/callback/ConfirmationCallback.java +++ /dev/null @@ -1,505 +0,0 @@ -/* ConfirmationCallback.java -- callback for confirmations. - Copyright (C) 2003, Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -import java.io.Serializable; - -/** - * Underlying security services instantiate and pass a - * <code>ConfirmationCallback</code> to the <code>handle()</code> method of a - * {@link CallbackHandler} to ask for YES/NO, OK/CANCEL, YES/NO/CANCEL or other - * similar confirmations. - * - * @see CallbackHandler - */ -public class ConfirmationCallback implements Callback, Serializable -{ - - // Constants and variables - // ------------------------------------------------------------------------- - - /** - * <p>Unspecified option type.</p> - * - * <p>The <code>getOptionType</code> method returns this value if this - * <code>ConfirmationCallback</code> was instantiated with <code>options</code> - * instead of an <code>optionType</code>.</p> - */ - public static final int UNSPECIFIED_OPTION = -1; - - /** - * <p>YES/NO confirmation option.</p> - * - * <p>An underlying security service specifies this as the <code>optionType</code> - * to a <code>ConfirmationCallback</code> constructor if it requires a - * confirmation which can be answered with either <code>YES</code> or - * <code>NO</code>.</p> - */ - public static final int YES_NO_OPTION = 0; - - /** - * <p>YES/NO/CANCEL confirmation confirmation option.</p> - * - * <p>An underlying security service specifies this as the <code>optionType</code> - * to a <code>ConfirmationCallback</code> constructor if it requires a - * confirmation which can be answered with either <code>YES</code>, - * <code>NO</code> or <code>CANCEL</code>. - */ - public static final int YES_NO_CANCEL_OPTION = 1; - - /** - * <p>OK/CANCEL confirmation confirmation option.</p> - * - * <p>An underlying security service specifies this as the <code>optionType</code> - * to a <code>ConfirmationCallback</code> constructor if it requires a - * confirmation which can be answered with either <code>OK</code> or - * <code>CANCEL</code>.</p> - */ - public static final int OK_CANCEL_OPTION = 2; - - /** - * <p>YES option.</p> - * - * <p>If an <code>optionType</code> was specified to this - * <code>ConfirmationCallback</code>, this option may be specified as a - * <code>defaultOption</code> or returned as the selected index.</p> - */ - public static final int YES = 0; - - /** - * <p>NO option.</p> - * - * <p>If an <code>optionType</code> was specified to this - * <code>ConfirmationCallback</code>, this option may be specified as a - * <code>defaultOption</code> or returned as the selected index.</p> - */ - public static final int NO = 1; - - /** - * <p>CANCEL option.</p> - * - * <p>If an <code>optionType</code> was specified to this - * <code>ConfirmationCallback</code>, this option may be specified as a - * <code>defaultOption</code> or returned as the selected index.</p> - */ - public static final int CANCEL = 2; - - /** - * <p>OK option.</p> - * - * <p>If an <code>optionType</code> was specified to this - * <code>ConfirmationCallback</code>, this option may be specified as a - * <code>defaultOption</code> or returned as the selected index.</p> - */ - public static final int OK = 3; - - /** INFORMATION message type. */ - public static final int INFORMATION = 0; - - /** WARNING message type. */ - public static final int WARNING = 1; - - /** ERROR message type. */ - public static final int ERROR = 2; - - /** - * @serial - * @since 1.4 - */ - private String prompt; - - /** - * @serial - * @since 1.4 - */ - private int messageType; - - /** - * @serial - * @since 1.4 - */ - private int optionType; - - /** - * @serial - * @since 1.4 - */ - private int defaultOption; - - /** - * @serial - * @since 1.4 - */ - private String[] options = null; - - /** - * @serial - * @since 1.4 - */ - private int selection; - - // Constructor(s) - // ------------------------------------------------------------------------- - - /** - * <p>Construct a <code>ConfirmationCallback</code> with a message type, an - * option type and a default option.</p> - * - * <p>Underlying security services use this constructor if they require - * either a YES/NO, YES/NO/CANCEL or OK/CANCEL confirmation.</p> - * - * @param messageType the message type (INFORMATION, WARNING or ERROR). - * @param optionType the option type (YES_NO_OPTION, YES_NO_CANCEL_OPTION or - * OK_CANCEL_OPTION). - * @param defaultOption the default option from the provided optionType (YES, - * NO, CANCEL or OK). - * @throws IllegalArgumentException if <code>messageType</code> is not either - * <code>INFORMATION</code>, <code>WARNING</code>, or <code>ERROR</code>, if - * <code>optionType</code> is not either <code>YES_NO_OPTION</code>, - * <code>YES_NO_CANCEL_OPTION</code>, or <code>OK_CANCEL_OPTION</code>, or if - * <code>defaultOption</code> does not correspond to one of the options in - * <code>optionType</code>. - */ - public ConfirmationCallback(int messageType, int optionType, int defaultOption) - throws IllegalArgumentException - { - super(); - - setMessageType(messageType); - setOptionType(optionType, defaultOption); - this.defaultOption = defaultOption; - } - - /** - * <p>Construct a <code>ConfirmationCallback</code> with a message type, a - * list of options and a default option.</p> - * - * <p>Underlying security services use this constructor if they require a - * confirmation different from the available preset confirmations provided - * (for example, CONTINUE/ABORT or STOP/GO). The confirmation options are - * listed in the <code>options</code> array, and are displayed by the - * {@link CallbackHandler} implementation in a manner consistent with the - * way preset options are displayed.</p> - * - * @param messageType the message type (INFORMATION, WARNING or ERROR). - * @param options the list of confirmation options. - * @param defaultOption the default option, represented as an index into the - * <code>options</code> array. - * @throws IllegalArgumentException if <code>messageType</code> is not either - * <code>INFORMATION</code>, <code>WARNING</code>, or <code>ERROR</code>, if - * <code>options</code> is <code>null</code>, if <code>options</code> has a - * length of <code>0</code>, if any element from <code>options</code> is - * <code>null</code>, if any element from <code>options</code> has a length - * of <code>0</code>, or if <code>defaultOption</code> does not lie within - * the array boundaries of <code>options</code>. - */ - public ConfirmationCallback(int messageType, String[] options, int defaultOption) - { - super(); - - setMessageType(messageType); - setOptions(options, defaultOption); - this.defaultOption = defaultOption; - } - - /** - * <p>Construct a <code>ConfirmationCallback</code> with a prompt, message - * type, an option type and a default option.</p> - * - * <p>Underlying security services use this constructor if they require - * either a YES/NO, YES/NO/CANCEL or OK/CANCEL confirmation.</p> - * - * @param prompt the prompt used to describe the list of options. - * @param messageType the message type (INFORMATION, WARNING or ERROR). - * @param optionType the option type (YES_NO_OPTION, YES_NO_CANCEL_OPTION or - * OK_CANCEL_OPTION). - * @param defaultOption the default option from the provided optionType (YES, - * NO, CANCEL or OK). - * @throws IllegalArgumentException if <code>prompt</code> is <code>null</code>, - * if <code>prompt</code> has a length of <code>0</code>, if - * <code>messageType</code> is not either <code>INFORMATION</code>, - * <code>WARNING</code>, or <code>ERROR</code>, if <code>optionType</code> is - * not either <code>YES_NO_OPTION</code>, <code>YES_NO_CANCEL_OPTION</code>, - * or <code>OK_CANCEL_OPTION</code>, or if <code>defaultOption</code> does - * not correspond to one of the options in <code>optionType</code>. - */ - public ConfirmationCallback(String prompt, int messageType, int optionType, - int defaultOption) - { - super(); - - setPrompt(prompt); - setMessageType(messageType); - setOptionType(optionType, defaultOption); - this.defaultOption = defaultOption; - } - - /** - * <p>Construct a <code>ConfirmationCallback</code> with a prompt, message - * type, a list of options and a default option.</p> - * - * <p>Underlying security services use this constructor if they require a - * confirmation different from the available preset confirmations provided - * (for example, CONTINUE/ABORT or STOP/GO). The confirmation options are - * listed in the <code>options</code> array, and are displayed by the - * {@link CallbackHandler} implementation in a manner consistent with the - * way preset options are displayed.</p> - * - * @param prompt the prompt used to describe the list of options. - * @param messageType the message type (INFORMATION, WARNING or ERROR). - * @param options the list of confirmation options. - * @param defaultOption the default option, represented as an index into the - * <code>options</code> array. - * @throws IllegalArgumentException if <code>prompt</code> is <code>null</code>, - * if <code>prompt</code> has a length of <code>0</code>, if - * <code>messageType</code> is not either <code>INFORMATION</code>, - * <code>WARNING</code>, or <code>ERROR</code>, if <code>options</code> is - * <code>null</code>, if <code>options</code> has a length of <code>0</code>, - * if any element from <code>options</code> is <code>null</code>, if any - * element from <code>options</code> has a length of <code>0</code>, or if - * <code>defaultOption</code> does not lie within the array boundaries of - * <code>options</code>. - */ - public ConfirmationCallback(String prompt, int messageType, String[] options, - int defaultOption) - { - super(); - - setPrompt(prompt); - setMessageType(messageType); - setOptions(options, defaultOption); - this.defaultOption = defaultOption; - } - - // Class methods - // ------------------------------------------------------------------------- - - // Instance methods - // ------------------------------------------------------------------------- - - /** - * Get the prompt. - * - * @return the prompt, or <code>null</code> if this - * <code>ConfirmationCallback</code> was instantiated without a prompt. - */ - public String getPrompt() - { - return prompt; - } - - /** - * Get the message type. - * - * @return the message type (INFORMATION, WARNING or ERROR). - */ - public int getMessageType() - { - return messageType; - } - - /** - * <p>Get the option type.</p> - * - * <p>If this method returns {@link #UNSPECIFIED_OPTION}, then this - * <code>ConfirmationCallback</code> was instantiated with <code>options</code> - * instead of an <code>optionType</code>. In this case, invoke the - * {@link #getOptions()} method to determine which confirmation options to - * display.</p> - * - * @return the option type (YES_NO_OPTION, YES_NO_CANCEL_OPTION or - * OK_CANCEL_OPTION), or UNSPECIFIED_OPTION if this - * <code>ConfirmationCallback</code> was instantiated with <code>options</code> - * instead of an <code>optionType</code>. - */ - public int getOptionType() - { - if (options != null) - { - return UNSPECIFIED_OPTION; - } - return optionType; - } - - /** - * Get the confirmation options. - * - * @return the list of confirmation options, or <code>null</code> if this - * <code>ConfirmationCallback</code> was instantiated with an - * <code>optionType</code> instead of <code>options</code>. - */ - public String[] getOptions() - { - return options; - } - - /** - * Get the default option. - * - * @return the default option, represented as <code>YES</code>, <code>NO</code>, - * <code>OK</code> or <code>CANCEL</code> if an <code>optionType</code> was - * specified to the constructor of this <code>ConfirmationCallback</code>. - * Otherwise, this method returns the default option as an index into the - * <code>options</code> array specified to the constructor of this - * <code>ConfirmationCallback</code>. - */ - public int getDefaultOption() - { - return defaultOption; - } - - /** - * Set the selected confirmation option. - * - * @param selection the selection represented as <code>YES</code>, - * <code>NO</code>, <code>OK</code> or <code>CANCEL</code> if an - * <code>optionType</code> was specified to the constructor of this - * <code>ConfirmationCallback</code>. Otherwise, the <code>selection</code> - * represents the index into the <code>options</code> array specified to the - * constructor of this <code>ConfirmationCallback</code>. - * @see #getSelectedIndex() - */ - public void setSelectedIndex(int selection) - { - if (options != null) - { - setOptions(options, selection); - } - else - { - setOptionType(optionType, selection); - } - } - - /** - * Get the selected confirmation option. - * - * @return the selected confirmation option represented as <code>YES</code>, - * <code>NO</code>, <code>OK</code> or <code>CANCEL</code> if an - * <code>optionType</code> was specified to the constructor of this - * <code>ConfirmationCallback</code>. Otherwise, this method returns the - * selected confirmation option as an index into the <code>options</code> - * array specified to the constructor of this <code>ConfirmationCallback</code>. - * @see #setSelectedIndex(int) - */ - public int getSelectedIndex() - { - return this.selection; - } - - private void setMessageType(int messageType) throws IllegalArgumentException - { - switch (messageType) - { - case INFORMATION: - case WARNING: - case ERROR: this.messageType = messageType; break; - default: throw new IllegalArgumentException("illegal message type"); - } - } - - private void setOptionType(int optionType, int selectedOption) - throws IllegalArgumentException - { - switch (optionType) - { - case YES_NO_OPTION: - this.optionType = optionType; - switch (selectedOption) - { - case YES: - case NO: this.selection = selectedOption; break; - default: throw new IllegalArgumentException("invalid option"); - } - break; - case YES_NO_CANCEL_OPTION: - this.optionType = optionType; - switch (selectedOption) - { - case YES: - case NO: - case CANCEL: this.selection = selectedOption; break; - default: throw new IllegalArgumentException("invalid option"); - } - break; - case OK_CANCEL_OPTION: - this.optionType = optionType; - switch (selectedOption) - { - case OK: - case CANCEL: this.selection = selectedOption; break; - default: throw new IllegalArgumentException("invalid option"); - } - break; - default: - throw new IllegalArgumentException("illegal option type"); - } - } - - private void setOptions(String[] options, int selectedOption) - throws IllegalArgumentException - { - if ((selectedOption < 0) || (selectedOption > options.length - 1)) - { - throw new IllegalArgumentException("invalid selection"); - } - if ((options == null) || (options.length == 0)) - { - throw new IllegalArgumentException("options is null or empty"); - } - for (int i = 0; i < options.length; i++) - { - if ((options[i] == null) || (options[i].length() == 0)) - { - throw new IllegalArgumentException("options[" + i + "] is null or empty"); - } - } - this.options = options; - this.selection = selectedOption; - } - - private void setPrompt(String prompt) throws IllegalArgumentException - { - if ((prompt == null) || (prompt.length() == 0)) - { - throw new IllegalArgumentException("prompt is null or empty"); - } - this.prompt = prompt; - } -} diff --git a/libjava/javax/security/auth/callback/LanguageCallback.java b/libjava/javax/security/auth/callback/LanguageCallback.java deleted file mode 100644 index e0190e6ccaf..00000000000 --- a/libjava/javax/security/auth/callback/LanguageCallback.java +++ /dev/null @@ -1,100 +0,0 @@ -/* LanguageCallback.java -- callback for language choices. - Copyright (C) 2003, Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -import java.io.Serializable; -import java.util.Locale; - -/** - * Underlying security services instantiate and pass a <code>LanguageCallback</code> - * to the <code>handle()</code> method of a {@link CallbackHandler} to retrieve - * the {@link Locale} used for localizing text. - * - * @see CallbackHandler - */ -public class LanguageCallback implements Callback, Serializable -{ - - // Constants and variables - // ------------------------------------------------------------------------- - - /** - * @serial - * @since 1.4 - */ - private Locale locale; - - // Constructor(s) - // ------------------------------------------------------------------------- - - /** Construct a <code>LanguageCallback</code>. */ - public LanguageCallback() - { - super(); - } - - // Class methods - // ------------------------------------------------------------------------- - - // Instance methods - // ------------------------------------------------------------------------- - - /** - * Set the retrieved Locale. - * - * @param locale the retrieved Locale. - * @see #getLocale() - */ - public void setLocale(Locale locale) - { - this.locale = locale; - } - - /** - * Get the retrieved Locale. - * - * @return the retrieved Locale, or <code>null</code> if no Locale could be - * retrieved. - * @see #setLocale(Locale) - */ - public Locale getLocale() - { - return locale; - } -} diff --git a/libjava/javax/security/auth/callback/NameCallback.java b/libjava/javax/security/auth/callback/NameCallback.java deleted file mode 100644 index 0e281d1cc8b..00000000000 --- a/libjava/javax/security/auth/callback/NameCallback.java +++ /dev/null @@ -1,178 +0,0 @@ -/* NameCallback.java -- callback for user names. - Copyright (C) 2003, Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -import java.io.Serializable; - -/** - * Underlying security services instantiate and pass a <code>NameCallback</code> - * to the <code>handle()</code> method of a {@link CallbackHandler} to retrieve - * name information. - * - * @see CallbackHandler - */ -public class NameCallback implements Callback, Serializable -{ - - // Constants and variables - // ------------------------------------------------------------------------- - - /** - * @serial - * @since 1.4 - */ - private String prompt; - - /** - * @serial - * @since 1.4 - */ - private String defaultName; - - /** - * @serial - * @since 1.4 - */ - private String inputName; - - // Constructor(s) - // ------------------------------------------------------------------------- - - /** - * Construct a <code>NameCallback</code> with a prompt. - * - * @param prompt the prompt used to request the name. - * @throws IllegalArgumentException if <code>prompt</code> is <code>null</code> - * or if <code>prompt</code> has a length of <code>0</code>. - */ - public NameCallback(String prompt) - { - super(); - - setPrompt(prompt); - } - - /** - * Construct a <code>NameCallback</code> with a prompt and default name. - * - * @param prompt the prompt used to request the information. - * @param defaultName the name to be used as the default name displayed with - * the prompt. - * @throws IllegalArgumentException if <code>prompt</code> is <code>null</code> - * or if <code>prompt</code> has a length of <code>0</code>, if - * <code>defaultName</code> is <code>null</code>, or if <code>defaultName</code> - * has a length of <code>0</code>. - */ - public NameCallback(String prompt, String defaultName) - throws IllegalArgumentException - { - super(); - - setPrompt(prompt); - setDefaultName(defaultName); - } - - // Class methods - // ------------------------------------------------------------------------- - - // Instance methods - // ------------------------------------------------------------------------- - - /** - * Get the prompt. - * - * @return the prompt. - */ - public String getPrompt() - { - return prompt; - } - - /** - * Get the default name. - * - * @return the default name, or <code>null</code> if this - * <code>NameCallback</code> was not instantiated with a - * <code>defaultName</code>. - */ - public String getDefaultName() - { - return defaultName; - } - - /** - * Set the retrieved name. - * - * @param name the retrieved name (which may be <code>null</code>). - * @see #getName() - */ - public void setName(String name) - { - this.inputName = name; - } - - /** - * Get the retrieved name. - * - * @return the retrieved name (which may be <code>null</code>) - * @see #setName(String) - */ - public String getName() - { - return inputName; - } - - private void setPrompt(String prompt) throws IllegalArgumentException - { - if ((prompt == null) || (prompt.length() == 0)) - { - throw new IllegalArgumentException("invalid prompt"); - } - this.prompt = prompt; - } - - private void setDefaultName(String defaultName) throws IllegalArgumentException - { - if ((defaultName == null) || (defaultName.length() == 0)) - { - throw new IllegalArgumentException("invalid default name"); - } - this.defaultName = defaultName; - } -} diff --git a/libjava/javax/security/auth/callback/PasswordCallback.java b/libjava/javax/security/auth/callback/PasswordCallback.java deleted file mode 100644 index e8c862aca3e..00000000000 --- a/libjava/javax/security/auth/callback/PasswordCallback.java +++ /dev/null @@ -1,168 +0,0 @@ -/* PasswordCallback.java -- callback for passwords. - Copyright (C) 2003, Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -import java.io.Serializable; - -/** - * Underlying security services instantiate and pass a <code>PasswordCallback</code> - * to the <code>handle()</code> method of a {@link CallbackHandler} to retrieve - * password information. - * - * @see CallbackHandler, - */ -public class PasswordCallback implements Callback, Serializable -{ - - // Constants and variables - // ------------------------------------------------------------------------- - - /** - * @serial - * @since 1.4 - */ - private String prompt; - - /** - * @serial - * @since 1.4 - */ - private boolean echoOn; - - /** - * @serial - * @since 1.4 - */ - private char[] inputPassword; - - // Constructor(s) - // ------------------------------------------------------------------------- - - /** - * Construct a <code>PasswordCallback</code> with a prompt and a boolean - * specifying whether the password should be displayed as it is being typed. - * - * @param prompt the prompt used to request the password. - * @param echoOn <code>true</code> if the password should be displayed as it - * is being typed. - * @throws IllegalArgumentException if <code>prompt</code> is <code>null</code> - * or if <code>prompt</code> has a length of <code>0</code>. - */ - public PasswordCallback(String prompt, boolean echoOn) - { - super(); - - setPrompt(prompt); - this.echoOn = echoOn; - } - - // Class methods - // ------------------------------------------------------------------------- - - // Instance methods - // ------------------------------------------------------------------------- - - /** - * Get the prompt. - * - * @return the prompt. - */ - public String getPrompt() - { - return prompt; - } - - /** - * Return whether the password should be displayed as it is being typed. - * - * @return the whether the password should be displayed as it is being typed. - */ - public boolean isEchoOn() - { - return echoOn; - } - - /** - * <p>Set the retrieved password.</p> - * - * <p>This method makes a copy of the input password before storing it.</p> - * - * @param password the retrieved password, which may be <code>null</code>. - * @see #getPassword() - */ - public void setPassword(char[] password) - { - inputPassword = (password == null ? null : (char[]) password.clone()); - } - - /** - * <p>Get the retrieved password.</p> - * - * <p>This method returns a copy of the retrieved password.</p> - * - * @return the retrieved password, which may be <code>null</code>. - * @see #setPassword(char[]) - */ - public char[] getPassword() - { - return (inputPassword == null ? null : (char[]) inputPassword.clone()); - } - - /** Clear the retrieved password. */ - public void clearPassword() - { - if (inputPassword != null) - { - for (int i = 0; i < inputPassword.length; i++) - { - inputPassword[i] = '\0'; - } - inputPassword = null; - } - } - - private void setPrompt(String prompt) throws IllegalArgumentException - { - if ((prompt == null) || (prompt.length() == 0)) - { - throw new IllegalArgumentException("invalid prompt"); - } - this.prompt = prompt; - } -} diff --git a/libjava/javax/security/auth/callback/TextInputCallback.java b/libjava/javax/security/auth/callback/TextInputCallback.java deleted file mode 100644 index 98b0ae3c12d..00000000000 --- a/libjava/javax/security/auth/callback/TextInputCallback.java +++ /dev/null @@ -1,177 +0,0 @@ -/* TextInputCallback.java -- callbacks for user input. - Copyright (C) 2003, Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -import java.io.Serializable; - -/** - * Underlying security services instantiate and pass a <code>TextInputCallback</code> - * to the <code>handle()</code> method of a {@link CallbackHandler} to retrieve - * generic text information. - * - * @see CallbackHandler - */ -public class TextInputCallback implements Callback, Serializable -{ - - // Constants and variables - // ------------------------------------------------------------------------- - - /** - * @serial - * @since 1.4 - */ - private String prompt; - - /** - * @serial - * @since 1.4 - */ - private String defaultText; - - /** - * @serial - * @since 1.4 - */ - private String inputText; - - // Constructor(s) - // ------------------------------------------------------------------------- - - /** - * Construct a <code>TextInputCallback</code> with a prompt. - * - * @param prompt the prompt used to request the information. - * @throws IllegalArgumentException if <code>prompt</code> is <code>null</code> - * or if <code>prompt</code> has a length of <code>0</code>. - */ - public TextInputCallback(String prompt) throws IllegalArgumentException - { - super(); - - setPrompt(prompt); - } - - /** - * Construct a <code>TextInputCallback</code> with a prompt and default - * input value. - * - * @param prompt the prompt used to request the information. - * @param defaultText the text to be used as the default text displayed with - * the prompt. - * @throws IllegalArgumentException if <code>prompt</code> is <code>null</code>, - * if <code>prompt</code> has a length of <code>0</code>, if - * <code>defaultText</code> is <code>null</code> or if <code>defaultText</code> - * has a length of <code>0</code>. - */ - public TextInputCallback(String prompt, String defaultText) - throws IllegalArgumentException - { - super(); - - setPrompt(prompt); - setDefaultText(defaultText); - } - - // Class methods - // ------------------------------------------------------------------------- - - // Instance methods - // ------------------------------------------------------------------------- - - /** - * Get the prompt. - * - * @return the prompt. - */ - public String getPrompt() - { - return prompt; - } - - /** - * Get the default text. - * - * @return the default text, or <code>null</code> if this - * <code>TextInputCallback</code> was not instantiated with - * <code>defaultText</code>. - */ - public String getDefaultText() - { - return defaultText; - } - - /** - * Set the retrieved text. - * - * @param text the retrieved text, which may be <code>null</code>. - */ - public void setText(String text) - { - this.inputText = text; - } - - /** - * Get the retrieved text. - * - * @return the retrieved text, which may be <code>null</code>. - */ - public String getText() - { - return inputText; - } - - private void setPrompt(String prompt) throws IllegalArgumentException - { - if ((prompt == null) || (prompt.length() == 0)) - { - throw new IllegalArgumentException("invalid prompt"); - } - this.prompt = prompt; - } - - private void setDefaultText(String defaultText) throws IllegalArgumentException - { - if ((defaultText == null) || (defaultText.length() == 0)) - { - throw new IllegalArgumentException("invalid default text"); - } - this.defaultText = defaultText; - } -} diff --git a/libjava/javax/security/auth/callback/TextOutputCallback.java b/libjava/javax/security/auth/callback/TextOutputCallback.java deleted file mode 100644 index 197cece5fe9..00000000000 --- a/libjava/javax/security/auth/callback/TextOutputCallback.java +++ /dev/null @@ -1,140 +0,0 @@ -/* TextOutputCallback.java -- callback for text output. - Copyright (C) 2003 Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -import java.io.Serializable; - -/** - * <p>Underlying security services instantiate and pass a - * <code>TextOutputCallback</code> to the <code>handle()</code> method of a - * {@link CallbackHandler} to display information messages, warning messages and - * error messages.</p> - * - * @see CallbackHandler - */ -public class TextOutputCallback implements Callback, Serializable -{ - - // Constants and variables - // ------------------------------------------------------------------------- - - /** Information message */ - public static final int INFORMATION = 0; - - /** Warning message */ - public static final int WARNING = 1; - - /** Error message */ - public static final int ERROR = 2; - - /** - * @serial - * @since 1.4 - */ - private int messageType; - - /** - * @serial - * @since 1.4 - */ - private String message; - - // Constructor(s) - // ------------------------------------------------------------------------- - - /** - * <p>Construct a <code>TextOutputCallback</code> with a message type and - * message to be displayed.</p> - * - * @param messageType the message type (INFORMATION, WARNING or ERROR). - * @param message the message to be displayed. - * @throws IllegalArgumentException if <code>messageType</code> is not either - * <code>INFORMATION</code>, <code>WARNING</code> or <code>ERROR</code>, if - * <code>message</code> is <code>null</code>, or if <code>message</code> has - * a length of <code>0</code>. - */ - public TextOutputCallback(int messageType, String message) - throws IllegalArgumentException - { - switch (messageType) - { - case INFORMATION: - case WARNING: - case ERROR: this.messageType = messageType; break; - default: throw new IllegalArgumentException("invalid message type"); - } - - setMessage(message); - } - - // Class methods - // ------------------------------------------------------------------------- - - // Instance methods - // ------------------------------------------------------------------------- - - /** - * <p>Returns the message's <code>messageType</code>.</p> - * - * @return the message type (INFORMATION, WARNING or ERROR). - */ - public int getMessageType() - { - return messageType; - } - - /** - * <p>Returns the <code>message</code> to be displayed.</p> - * - * @return the message to be displayed. - */ - public String getMessage() - { - return message; - } - - private void setMessage(String message) throws IllegalArgumentException - { - if ((message == null) || (message.length() == 0)) - { - throw new IllegalArgumentException("invalid message"); - } - this.message = message; - } -} diff --git a/libjava/javax/security/auth/callback/UnsupportedCallbackException.java b/libjava/javax/security/auth/callback/UnsupportedCallbackException.java deleted file mode 100644 index f5308b9ea0b..00000000000 --- a/libjava/javax/security/auth/callback/UnsupportedCallbackException.java +++ /dev/null @@ -1,101 +0,0 @@ -/* UnsupportedCallbackException.java -- signals an unsupported callback type. - Copyright (C) 2003, Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.security.auth.callback; - -/** - * Signals that a {@link CallbackHandler} does not recognize a particular - * {@link Callback}. - * - */ -public class UnsupportedCallbackException extends Exception -{ - - // Constants and variables - // ------------------------------------------------------------------------- - - /** @serial */ - private Callback callback; - - // Constructor(s) - // ------------------------------------------------------------------------- - - /** - * Constructs an <code>UnsupportedCallbackException</code> with no detail - * message. - * - * @param callback the unrecognized {@link Callback}. - */ - public UnsupportedCallbackException(Callback callback) - { - super(); - - this.callback = callback; - } - - /** - * Constructs an <code>UnsupportedCallbackException</code> with the specified - * detail message. A detail message is a {@link String} that describes this - * particular exception. - * - * @param callback the unrecognized {@link Callback}. - * @param msg the detail message. - */ - public UnsupportedCallbackException(Callback callback, String msg) - { - super(msg); - - this.callback = callback; - } - - // Class methods - // ------------------------------------------------------------------------- - - // Instance methods - // ------------------------------------------------------------------------- - - /** - * Get the unrecognized {@link Callback}. - * - * @return the unrecognized {@link Callback}. - */ - public Callback getCallback() - { - return this.callback; - } -} |