Lenguaje

ICallbackHandler.HandleCallbacks(ICallback[]) Método

Definición

Recupere o muestre la información solicitada en las devoluciones de llamada proporcionadas.

[Android.Runtime.Register("handle", "([Ljavax/security/auth/callback/Callback;)V", "GetHandleCallbacks_arrayLjavax_security_auth_callback_Callback_Handler:Javax.Security.Auth.Callback.ICallbackHandlerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public void HandleCallbacks(Javax.Security.Auth.Callback.ICallback[]? callbacks);
[<Android.Runtime.Register("handle", "([Ljavax/security/auth/callback/Callback;)V", "GetHandleCallbacks_arrayLjavax_security_auth_callback_Callback_Handler:Javax.Security.Auth.Callback.ICallbackHandlerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member HandleCallbacks : Javax.Security.Auth.Callback.ICallback[] -> unit

Parámetros

callbacks
ICallback[]

matriz de objetos proporcionados por un servicio de Callback seguridad subyacente que contiene la información solicitada para recuperarse o mostrarse.

Atributos

Excepciones

si se produce un error relacionado con la E/S

si no CallbackHandler puede controlar un elemento específico Callback

Comentarios

Recupere o muestre la información solicitada en las devoluciones de llamada proporcionadas.

La handle implementación del método comprueba las instancias de los Callback objetos pasados para recuperar o mostrar la información solicitada. En el ejemplo siguiente se proporciona para ayudar a demostrar el aspecto que podría tener una handle implementación de método. Este código de ejemplo es solo para instrucciones. Muchos detalles, incluido el control de errores adecuado, se dejan fuera por motivos de simplicidad.

{@code
            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
            }
            }

Java documentación para javax.security.auth.callback.CallbackHandler.handle(javax.security.auth.callback.Callback[]).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Se aplica a