KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > xml > fastinfoset > stax > events > AttributeBase


1 /*
2  * Fast Infoset ver. 0.1 software ("Software")
3  *
4  * Copyright, 2004-2005 Sun Microsystems, Inc. All Rights Reserved.
5  *
6  * Software is licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License. You may
8  * obtain a copy of the License at:
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15  * License for the specific language governing permissions and limitations.
16  *
17  * Sun supports and benefits from the global community of open source
18  * developers, and thanks the community for its important contributions and
19  * open standards-based technology, which Sun has adopted into many of its
20  * products.
21  *
22  * Please note that portions of Software may be provided with notices and
23  * open source licenses from such communities and third parties that govern the
24  * use of those portions, and any licenses granted hereunder do not alter any
25  * rights and obligations you may have under such open source licenses,
26  * however, the disclaimer of warranty and limitation of liability provisions
27  * in this License will apply to all Software in this distribution.
28  *
29  * You acknowledge that the Software is not designed, licensed or intended
30  * for use in the design, construction, operation or maintenance of any nuclear
31  * facility.
32  *
33  * Apache License
34  * Version 2.0, January 2004
35  * http://www.apache.org/licenses/
36  *
37  */

38
39 package com.sun.xml.fastinfoset.stax.events;
40
41 import javax.xml.namespace.QName JavaDoc;
42 import javax.xml.stream.XMLStreamConstants;
43 import javax.xml.stream.events.Attribute;
44 import java.io.Writer JavaDoc;
45 import com.sun.xml.fastinfoset.util.Util;
46
47
48 public class AttributeBase extends EventBase implements Attribute
49
50 {
51     //an Attribute consists of a qualified name and value
52
private QName JavaDoc _QName;
53     private String JavaDoc _value;
54     
55     private String JavaDoc _attributeType = null;
56     //A flag indicating whether this attribute was actually specified in the start-tag
57
//of its element or was defaulted from the schema.
58
private boolean _specified = false;
59     
60     public AttributeBase(){
61         super(ATTRIBUTE);
62     }
63
64     public AttributeBase(String JavaDoc name, String JavaDoc value) {
65         super(ATTRIBUTE);
66         _QName = new QName JavaDoc(name);
67         _value = value;
68     }
69
70     public AttributeBase(QName JavaDoc qname, String JavaDoc value) {
71         _QName = qname;
72         _value = value;
73     }
74
75     public AttributeBase(String JavaDoc prefix, String JavaDoc localName, String JavaDoc value) {
76         this(prefix, null,localName, value, null);
77     }
78
79     public AttributeBase(String JavaDoc prefix, String JavaDoc namespaceURI, String JavaDoc localName,
80                         String JavaDoc value, String JavaDoc attributeType) {
81         if (prefix == null) prefix = "";
82         _QName = new QName JavaDoc(namespaceURI, localName,prefix);
83         _value = value;
84         _attributeType = (attributeType == null) ? "CDATA":attributeType;
85     }
86     
87
88     public void setName(QName JavaDoc name){
89         _QName = name ;
90     }
91     
92   /**
93    * Returns the QName for this attribute
94    */

95     public QName JavaDoc getName() {
96         return _QName;
97     }
98     
99     public void setValue(String JavaDoc value){
100         _value = value;
101     }
102     
103     public String JavaDoc getLocalName() {
104         return _QName.getLocalPart();
105     }
106   /**
107    * Gets the normalized value of this attribute
108    */

109     public String JavaDoc getValue() {
110         return _value;
111     }
112     
113     public void setAttributeType(String JavaDoc attributeType){
114         _attributeType = attributeType ;
115     }
116
117     /**
118    * Gets the type of this attribute, default is
119    * the String "CDATA"
120    * @return the type as a String, default is "CDATA"
121    */

122     public String JavaDoc getDTDType() {
123         return _attributeType;
124     }
125     
126     
127   /**
128    * A flag indicating whether this attribute was actually
129    * specified in the start-tag of its element, or was defaulted from the schema.
130    * @return returns true if this was specified in the start element
131    */

132     public boolean isSpecified() {
133         return _specified ;
134     }
135
136     public void setSpecified(boolean isSpecified){
137         _specified = isSpecified ;
138     }
139    
140     
141     public String JavaDoc toString() {
142         String JavaDoc prefix = _QName.getPrefix();
143         if (!Util.isEmptyString(prefix))
144             return prefix + ":" + _QName.getLocalPart() + "='" + _value + "'";
145         
146         return _QName.getLocalPart() + "='" + _value + "'";
147     }
148     
149     
150 }
151
152
Popular Tags