java命名空间javax.security.auth.callback接口callbackhandler的类成员方法:
handle定义及介绍
本文导语:
handle
void handle(callback[] callbacks)
throws ioexception,
unsupportedcallbackexception
获取或显示在提供的 callback 中请求的信息。
为了获取或显示请求的信息,handle 方法实现检查传入的 callback 对象的实例.下...
void handle(callback[] callbacks)
throws ioexception,
unsupportedcallbackexception
获取或显示在提供的 callback 中请求的信息。
为了获取或显示请求的信息,handle
方法实现检查传入的 callback
对象的实例.下面提供的例子是对 handle
方法实现的示范。此例子代码只用来作为指导。为了简单起见,省去了很多细节(包括适当的错误处理)。
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
}
- 参数:
callbacks
- 由底层安全
iis7站长之家提供的 callback
对象的数组,包括要获取或显示的请求信息。
- 抛出:
ioexception
- 如果发生输入或输出错误。
unsupportedcallbackexception
- 如果此方法的实现不支持在 callbacks
参数中指定的一个或多个 callback。