diff src/de/mpiwg/itgroup/annotationManager/restlet/MyCallBackHandler.java @ 0:77530be3c747

intial
author dwinter
date Tue, 22 Nov 2011 15:47:57 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/de/mpiwg/itgroup/annotationManager/restlet/MyCallBackHandler.java	Tue Nov 22 15:47:57 2011 +0100
@@ -0,0 +1,48 @@
+package de.mpiwg.itgroup.annotationManager.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");
+			    }
+			  }
+		
+	}
+
+}