01: /*
02: * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
03: * PROPRIETARY/CONFIDENTIAL. Use of this product is subject to license terms.
04: */
05: package com.sun.portal.taskadmin.taglib.user;
06:
07: import java.util.Set;
08:
09: import javax.servlet.jsp.JspException;
10: import javax.servlet.jsp.tagext.Tag;
11:
12: import javax.servlet.http.HttpServletRequest;
13:
14: import com.sun.portal.taskadmin.UserTaskAdmin;
15: import com.sun.portal.taskadmin.TaskAdminException;
16: import com.sun.portal.taskadmin.taglib.user.ObtainUserAdminTag;
17:
18: import com.sun.portal.taskadmin.taglib.BaseTaskAdminTagSupport;
19: import com.sun.portal.taskadmin.taglib.TaskAdminTaglibException;
20:
21: public class AssignRoleTag extends BaseTaskAdminTagSupport {
22: private String m_roleDN = null;
23: private String m_userDN = null;
24:
25: public void setUserDN(String userDN)
26: throws TaskAdminTaglibException {
27: m_userDN = resolveParameter(userDN).toString();
28: }
29:
30: public void setRoleDN(String roleDN)
31: throws TaskAdminTaglibException {
32: m_roleDN = resolveParameter(roleDN).toString();
33: }
34:
35: public int doStartTag() throws JspException {
36: ObtainUserAdminTag parent = (ObtainUserAdminTag) findAncestorWithClass(
37: this , ObtainUserAdminTag.class);
38: if (parent == null) {
39: // try getting usertaskadmin
40: throw new TaskAdminTaglibException(
41: TaskAdminTaglibException.INVALID_TAG_SEQUENCE,
42: "assignRoleTag not inside ObtainUserAdminTag");
43: }
44: UserTaskAdmin taskAdmin = parent.getUserTaskAdmin();
45: boolean status = false;
46: try {
47: status = taskAdmin.assignRole(m_userDN, m_roleDN);
48: } catch (TaskAdminException tae) {
49: throw new TaskAdminTaglibException(tae, tae
50: .getLocalizedMessage(taskAdmin.getResourceBundle()));
51: }
52: processResult(new Boolean(status));
53: return SKIP_BODY;
54: }
55: }
|