KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > alfresco > example > webservice > TicketHolder


1 /*
2  * Copyright (C) 2005 Alfresco, Inc.
3  *
4  * Licensed under the Mozilla Public License version 1.1
5  * with a permitted attribution clause. You may obtain a
6  * copy of the License at
7  *
8  * http://www.alfresco.org/legal/license.txt
9  *
10  * Unless required by applicable law or agreed to in writing,
11  * software distributed under the License is distributed on an
12  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
13  * either express or implied. See the License for the specific
14  * language governing permissions and limitations under the
15  * License.
16  */

17 package org.alfresco.example.webservice;
18
19 import java.io.IOException JavaDoc;
20
21 import javax.security.auth.callback.Callback JavaDoc;
22 import javax.security.auth.callback.CallbackHandler JavaDoc;
23 import javax.security.auth.callback.UnsupportedCallbackException JavaDoc;
24
25 import org.apache.ws.security.WSPasswordCallback;
26
27 /**
28  * Implements CallbackHandler which returns the currently stored ticket in
29  * the static <code>ticket</code> field.
30  *
31  * @author gavinc
32  */

33 public class TicketHolder implements CallbackHandler JavaDoc
34 {
35    public static String JavaDoc ticket;
36    
37    /**
38     * @see javax.security.auth.callback.CallbackHandler#handle(javax.security.auth.callback.Callback[])
39     */

40    public void handle(Callback JavaDoc[] callbacks) throws IOException JavaDoc, UnsupportedCallbackException JavaDoc
41    {
42       for (int i = 0; i < callbacks.length; i++)
43       {
44          if (callbacks[i] instanceof WSPasswordCallback)
45          {
46             WSPasswordCallback pc = (WSPasswordCallback)callbacks[i];
47             pc.setPassword(ticket);
48          }
49          else
50          {
51             throw new UnsupportedCallbackException JavaDoc(callbacks[i], "Unrecognized Callback");
52          }
53       }
54    }
55 }
56
Popular Tags