KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sf > panoptes > component > jmx > jelly > MBeanTag


1 package net.sf.panoptes.component.jmx.jelly;
2
3 import javax.management.ObjectName JavaDoc;
4 import javax.management.QueryExp JavaDoc;
5
6 import net.sf.panoptes.model.node.NodeSupport;
7 import net.sf.panoptes.model.node.NodeDescriptor;
8 import net.sf.panoptes.component.jmx.model.MBeanLinkNode;
9
10 import org.apache.commons.jelly.JellyTagException;
11 import org.apache.commons.jelly.MissingAttributeException;
12 import org.apache.commons.jelly.XMLOutput;
13
14 public class MBeanTag extends NodeTag {
15
16     /** Jelly XMLOutput */
17     private XMLOutput output;
18
19     private ObjectName JavaDoc objectName = null;
20     private QueryExp JavaDoc queryExp = null;
21
22     /*
23      * @see org.apache.commons.jelly.Tag#doTag(org.apache.commons.jelly.XMLOutput)
24      */

25     public void doTag(XMLOutput output) throws JellyTagException {
26         super.doTag(output);
27
28         // check for missing attributes
29
if (objectName == null) {
30             throw new MissingAttributeException("objectName");
31         }
32
33         try {
34             NodeSupport node = null;
35             node = createNode(getParentNode(), objectName);
36             NodeDescriptor desc = node.getConfigDescriptor();
37             desc.setName(getName());
38             desc.setDescription(getDescription());
39             doDefault(node);
40             getParentNode().addChild(node);
41             this.output = output;
42         } catch (Exception JavaDoc e) {
43             throw new JellyTagException("Unable to create node", e);
44         }
45     }
46
47     protected NodeSupport createNode(NodeSupport parent, ObjectName JavaDoc objectName) throws Exception JavaDoc {
48         return new MBeanLinkNode(parent, objectName);
49     }
50
51     public void setObjectName(String JavaDoc objectNameString) throws Exception JavaDoc {
52         objectName = new ObjectName JavaDoc(objectNameString);
53     }
54
55 }
56
Popular Tags