1 7 8 10 package org.jboss.net.jmx.adaptor; 11 12 import org.jboss.axis.encoding.DeserializationContext; 13 import org.jboss.axis.encoding.Deserializer; 14 import org.jboss.axis.encoding.DeserializerImpl; 15 import org.jboss.axis.encoding.DeserializerTarget; 16 import org.jboss.axis.message.SOAPHandler; 17 import org.xml.sax.Attributes ; 18 import org.xml.sax.SAXException ; 19 20 import javax.management.MBeanNotificationInfo ; 21 import javax.xml.namespace.QName ; 22 23 31 public class MBeanNotificationInfoDeser extends DeserializerImpl 32 { 33 34 private String [] notifTypes; 35 private String name; 36 private String description; 37 38 public void onStartElement(String namespace, 39 String localName, 40 String prefix, 41 Attributes attributes, 42 DeserializationContext context) 43 throws SAXException 44 { 45 46 if (context.isNil(attributes)) 47 { 48 return; 49 } 50 51 53 } 54 55 public SOAPHandler onStartChild(String namespace, 56 String localName, 57 String prefix, 58 Attributes attributes, 59 DeserializationContext context) 60 throws SAXException 61 { 62 63 QName itemType = 65 context.getTypeFromAttributes(namespace, localName, attributes); 66 Deserializer dSer = null; 68 if (itemType != null) 69 { 70 dSer = context.getDeserializerForType(itemType); 71 } 72 if (dSer == null) 73 { 74 dSer = new DeserializerImpl(); 75 } 76 77 dSer.registerValueTarget(new DeserializerTarget(this, localName)); 80 81 addChildDeserializer(dSer); 82 83 return (SOAPHandler)dSer; 84 } 85 86 public void setChildValue(Object value, Object hint) throws SAXException 87 { 88 if (hint.equals("name")) 89 name = (String )value; 90 else if (hint.equals("description")) 91 description = (String )value; 92 else if (hint.equals("notifTypes")) 93 notifTypes = (String [])value; 94 95 } 96 97 public void onEndElement(String s, 98 String s1, 99 DeserializationContext deserializationcontext) 100 { 101 try 102 { 103 super.value = new MBeanNotificationInfo (notifTypes, name, description); 104 } 105 catch (Exception exception) 106 { 107 exception.printStackTrace(); 108 } 109 } 110 111 } 112 | Popular Tags |