1 28 29 package com.caucho.xml2; 30 31 import org.w3c.dom.Attr ; 32 import org.w3c.dom.Element ; 33 import org.w3c.dom.Node ; 34 import org.w3c.dom.TypeInfo ; 35 36 import javax.xml.namespace.QName ; 37 import java.io.IOException ; 38 39 public class QAttr extends QNode implements Attr { 40 QName _name; 41 private String _value; 42 private boolean _specified = true; 43 44 public QAttr(String name) 45 { 46 _name = new QName (name); 47 } 48 49 public QAttr(QName name) 50 { 51 _name = name; 52 } 53 54 protected QAttr(QName name, String value) 55 { 56 _name = name; 57 _value = value; 58 } 59 60 protected QAttr(QDocument owner, QName name) 61 { 62 super(owner); 63 64 _name = name; 65 } 66 67 public Element getOwnerElement() 68 { 69 return (Element ) getParentNode(); 70 } 71 72 public short getNodeType() 73 { 74 return ATTRIBUTE_NODE; 75 } 76 77 80 public QName getQName() 81 { 82 return _name; 83 } 84 85 public String getNodeName() 86 { 87 return _name.getLocalPart(); 88 } 89 90 public boolean isId() 91 { 92 return false; 93 } 94 95 public String getName() 96 { 97 return _name.getLocalPart(); } 99 100 public String getPrefix() 101 { 102 return _name.getPrefix(); 103 } 104 105 public String getLocalName() 106 { 107 return _name.getLocalPart(); 108 } 109 110 public String getCanonicalName() 111 { 112 return _name.toString(); } 115 116 public String getNamespaceURI() 117 { 118 return _name.getNamespaceURI(); 119 } 120 121 public String getNodeValue() 122 { 123 return _value; 124 } 125 126 public TypeInfo getSchemaTypeInfo() 127 { 128 return null; 129 } 130 131 public void setNodeValue(String value) 132 { 133 _value = value; 134 } 135 136 public String getValue() 137 { 138 return _value; 139 } 140 141 public void setValue(String value) 142 { 143 _value = value; 144 } 145 146 public boolean getSpecified() 147 { 148 return _specified; 149 } 150 151 public void setSpecified(boolean specified) 152 { 153 _specified = specified; 154 } 155 156 Node importNode(QDocument owner, boolean deep) 157 { 158 QNode node = new QAttr(_name, _value); 159 node._owner = owner; 160 return node; 161 } 162 163 public void print(XmlPrinter out) throws IOException  164 { 165 if (! _specified) 166 return; 167 168 out.attribute(getNamespaceURI(), getLocalName(), 169 getNodeName(), getNodeValue()); 170 } 171 172 private Object writeReplace() 173 { 174 return new SerializedXml(this); 175 } 176 177 public String toString() 178 { 179 if (_value != null) 180 return "Attr[" + _name + " " + _value + "]"; 181 else 182 return "Attr[" + _name + "]"; 183 } 184 } 185
| Popular Tags
|