view src/org/digitalhps/storage/triplestoreimplementation/restlet/MyCallBackHandler.java @ 0:33d1589a61a7 default tip

initial
author dwinter
date Thu, 08 Dec 2011 09:18:00 +0100
parents
children
line wrap: on
line source

package org.digitalhps.storage.triplestoreimplementation.restlet;

import java.io.IOException;

import javax.security.auth.callback.Callback;
import javax.security.auth.callback.CallbackHandler;
import javax.security.auth.callback.ConfirmationCallback;
import javax.security.auth.callback.NameCallback;
import javax.security.auth.callback.PasswordCallback;
import javax.security.auth.callback.TextOutputCallback;
import javax.security.auth.callback.UnsupportedCallbackException;

public class MyCallBackHandler implements CallbackHandler {

	
	private String username;
	private String password;

	public MyCallBackHandler(String username, String password) {
		this.username=username;
		this.password=password;
	}

	@Override
	public void handle(Callback[] callbacks) throws IOException,
			UnsupportedCallbackException {
		 	for (int i = 0; i < callbacks.length; i++) {
		 		if (callbacks[i] instanceof TextOutputCallback) {
			      
	 			//	do nothing			      
			    } else if (callbacks[i] instanceof NameCallback) {
			  
			      NameCallback nc = (NameCallback)callbacks[i];
			      nc.setName(username);
			 
			    } else if (callbacks[i] instanceof PasswordCallback) {
			  
		    	   	PasswordCallback nc = (PasswordCallback)callbacks[i];
					nc.setPassword(password.toCharArray());
			    } else {
			        throw new UnsupportedCallbackException
			         (callbacks[i], "Unrecognized Callback");
			    }
			  }
		
	}

}