1 6 package com.nightlabs.ipanema.base.login; 7 8 import java.io.IOException ; 9 10 import javax.security.auth.callback.Callback ; 11 import javax.security.auth.callback.CallbackHandler ; 12 import javax.security.auth.callback.NameCallback ; 13 import javax.security.auth.callback.PasswordCallback ; 14 import javax.security.auth.callback.UnsupportedCallbackException ; 15 import javax.security.auth.login.LoginException ; 16 17 23 public class LoginCallbackHandler implements CallbackHandler { 24 25 28 public void handle(Callback [] callbacks) throws IOException , 29 UnsupportedCallbackException { 30 try { 31 for (int i = 0; i < callbacks.length; i++) { 32 if (callbacks[i] instanceof NameCallback ) 35 ((NameCallback )callbacks[i]).setName(Login.getLogin(false).getLoginContext().getUsername()); 36 if (callbacks[i] instanceof PasswordCallback ) 37 ((PasswordCallback )callbacks[i]).setPassword(Login.getLogin(false).getLoginContext().getPassword().toCharArray()); 38 } 39 } catch (LoginException x) { 40 throw new RuntimeException ("Login.getLogin(false) should never throw this exception!", x); 41 } 42 } 44 45 } 46 | Popular Tags |