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.channel;
06:
07: import java.util.Set;
08: import java.util.List;
09:
10: import javax.servlet.http.HttpServletRequest;
11:
12: import javax.servlet.jsp.JspException;
13:
14: import com.sun.portal.taskadmin.TaskAdminException;
15:
16: import com.sun.portal.taskadmin.ChannelTaskAdmin;
17:
18: import com.sun.portal.taskadmin.taglib.BaseTaskAdminTagSupport;
19: import com.sun.portal.taskadmin.taglib.TaskAdminTaglibException;
20:
21: public class GetPropertyNamesTag extends BaseTaskAdminTagSupport {
22: private String m_channel_name = null;
23: private List m_pflist = null;
24: private String m_regexp = null;
25: private boolean m_advanced = false;
26:
27: public void setChannel(String channelName)
28: throws TaskAdminTaglibException {
29: m_channel_name = resolveParameter(channelName).toString();
30: }
31:
32: public void setPflist(String pflist)
33: throws TaskAdminTaglibException {
34: m_pflist = (List) resolveParameter(pflist);
35: }
36:
37: public void setRegExp(String regExp)
38: throws TaskAdminTaglibException {
39: m_regexp = (String) resolveParameter(regExp);
40: }
41:
42: public void setAdvanced(String advanced)
43: throws TaskAdminTaglibException {
44: m_advanced = toBoolean(advanced);
45: }
46:
47: public int doStartTag() throws JspException {
48: ObtainChannelAdminTag parent = (ObtainChannelAdminTag) findAncestorWithClass(
49: this , ObtainChannelAdminTag.class);
50: if (parent == null) {
51: throw new TaskAdminTaglibException(
52: TaskAdminTaglibException.INVALID_TAG_SEQUENCE,
53: "getPropertyNamesTag not inside obtainChannelTaskAdminTag");
54: }
55: ChannelTaskAdmin channelTaskAdmin = parent
56: .getChannelTaskAdmin();
57: Set propertynames = null;
58: try {
59: if (m_pflist != null && m_pflist.size() != 0) {
60: propertynames = channelTaskAdmin.getPropertyNames(
61: m_channel_name, m_pflist, m_advanced);
62: } else if (m_regexp != null
63: && m_regexp.trim().length() != 0) {
64: propertynames = channelTaskAdmin.getPropertyNames(
65: m_channel_name, m_regexp, m_advanced);
66: } else {
67: propertynames = channelTaskAdmin.getPropertyNames(
68: m_channel_name, m_advanced);
69: }
70: } catch (TaskAdminException tae) {
71: throw new TaskAdminTaglibException(tae, tae
72: .getLocalizedMessage(channelTaskAdmin
73: .getResourceBundle()));
74: }
75: processResult(propertynames);
76: return SKIP_BODY;
77: }
78:
79: }
|