41 |
* @author <a href="mailto:dog@gnu.org">Chris Burdess</a> |
* @author <a href="mailto:dog@gnu.org">Chris Burdess</a> |
42 |
* @version $Revision$ $Date$ |
* @version $Revision$ $Date$ |
43 |
*/ |
*/ |
44 |
public final class SaslCallbackHandler |
public final class SaslCallbackHandler implements CallbackHandler |
|
implements CallbackHandler |
|
45 |
{ |
{ |
46 |
|
|
47 |
/* |
/* |
48 |
* The username. |
* The username. |
49 |
*/ |
*/ |
50 |
private final String username; |
private final String username; |
51 |
|
|
52 |
/* |
/* |
53 |
* The password. |
* The password. |
54 |
*/ |
*/ |
55 |
private final String password; |
private final String password; |
56 |
|
|
57 |
/** |
/** |
58 |
* Constructor. |
* Constructor. |
59 |
* @param username the value to respond to Name callbacks with |
* @param username the value to respond to Name callbacks with |
60 |
* @param password the value to respond to Password callbacks with |
* @param password the value to respond to Password callbacks with |
61 |
*/ |
*/ |
62 |
public SaslCallbackHandler(String username, String password) |
public SaslCallbackHandler(String username, String password) |
63 |
{ |
{ |
64 |
this.username = username; |
this.username = username; |
65 |
this.password = password; |
this.password = password; |
66 |
} |
} |
67 |
|
|
68 |
/** |
/** |
69 |
* Handle callbacks. |
* Handle callbacks. |
70 |
*/ |
*/ |
71 |
public void handle(Callback[] callbacks) |
public void handle(Callback[]callbacks) |
72 |
throws IOException, UnsupportedCallbackException |
throws IOException, UnsupportedCallbackException |
73 |
{ |
{ |
74 |
for (int i=0; i<callbacks.length; i++) |
for (int i = 0; i < callbacks.length; i++) |
75 |
{ |
{ |
76 |
if (callbacks[i] instanceof NameCallback) |
if (callbacks[i] instanceof NameCallback) |
77 |
{ |
{ |
78 |
NameCallback nc = (NameCallback)callbacks[i]; |
NameCallback nc = (NameCallback) callbacks[i]; |
79 |
nc.setName(username); |
nc.setName(username); |
80 |
} |
} |
81 |
else if (callbacks[i] instanceof PasswordCallback) |
else if (callbacks[i] instanceof PasswordCallback) |
82 |
{ |
{ |
83 |
PasswordCallback pc = (PasswordCallback)callbacks[i]; |
PasswordCallback pc = (PasswordCallback) callbacks[i]; |
84 |
pc.setPassword(password.toCharArray()); |
pc.setPassword(password.toCharArray()); |
85 |
} |
} |
86 |
else |
else |
87 |
throw new UnsupportedCallbackException(callbacks[i]); |
throw new UnsupportedCallbackException(callbacks[i]); |
88 |
} |
} |
89 |
} |
} |
|
|
|
|
} |
|
90 |
|
|
91 |
|
} |