001: /*
002: * $Id: ZephyrEventFactory.java,v 1.2 2006/04/01 06:01:35 jeffsuttor Exp $
003: */
004:
005: /*
006: * The contents of this file are subject to the terms
007: * of the Common Development and Distribution License
008: * (the License). You may not use this file except in
009: * compliance with the License.
010: *
011: * You can obtain a copy of the license at
012: * https://glassfish.dev.java.net/public/CDDLv1.0.html.
013: * See the License for the specific language governing
014: * permissions and limitations under the License.
015: *
016: * When distributing Covered Code, include this CDDL
017: * Header Notice in each file and include the License file
018: * at https://glassfish.dev.java.net/public/CDDLv1.0.html.
019: * If applicable, add the following below the CDDL Header,
020: * with the fields enclosed by brackets [] replaced by
021: * you own identifying information:
022: * "Portions Copyrighted [year] [name of copyright owner]"
023: *
024: * [Name of File] [ver.__] [Date]
025: *
026: * Copyright 2006 Sun Microsystems Inc. All Rights Reserved
027: */
028:
029: package com.sun.xml.stream.events;
030:
031: import javax.xml.stream.XMLEventFactory;
032: import javax.xml.stream.Location;
033: import javax.xml.stream.events.Namespace;
034: import javax.xml.stream.events.EntityDeclaration;
035:
036: /**
037: *
038: * @author Neeraj Bajaj, k.venugopal@sun.com
039: */
040: public class ZephyrEventFactory extends XMLEventFactory {
041:
042: Location location = null;
043:
044: /** Creates a new instance of ZephyrEventFactory */
045: public ZephyrEventFactory() {
046: }
047:
048: public javax.xml.stream.events.Attribute createAttribute(
049: String localName, String value) {
050: AttributeImpl attr = new AttributeImpl(localName, value);
051: if (location != null)
052: attr.setLocation(location);
053: return attr;
054: }
055:
056: public javax.xml.stream.events.Attribute createAttribute(
057: javax.xml.namespace.QName name, String value) {
058: return createAttribute(name.getPrefix(),
059: name.getNamespaceURI(), name.getLocalPart(), value);
060: }
061:
062: public javax.xml.stream.events.Attribute createAttribute(
063: String prefix, String namespaceURI, String localName,
064: String value) {
065: AttributeImpl attr = new AttributeImpl(prefix, namespaceURI,
066: localName, value, null);
067: if (location != null)
068: attr.setLocation(location);
069: return attr;
070: }
071:
072: public javax.xml.stream.events.Characters createCData(String content) {
073: //stax doesn't have separate CDATA event. This is taken care by
074: //CHRACTERS event setting the cdata flag to true.
075: CharacterEvent charEvent = new CharacterEvent(content, true);
076: if (location != null)
077: charEvent.setLocation(location);
078: return charEvent;
079: }
080:
081: public javax.xml.stream.events.Characters createCharacters(
082: String content) {
083: CharacterEvent charEvent = new CharacterEvent(content);
084: if (location != null)
085: charEvent.setLocation(location);
086: return charEvent;
087: }
088:
089: public javax.xml.stream.events.Comment createComment(String text) {
090: CommentEvent charEvent = new CommentEvent(text);
091: if (location != null)
092: charEvent.setLocation(location);
093: return charEvent;
094: }
095:
096: public javax.xml.stream.events.DTD createDTD(String dtd) {
097: DTDEvent dtdEvent = new DTDEvent(dtd);
098: if (location != null)
099: dtdEvent.setLocation(location);
100: return dtdEvent;
101: }
102:
103: public javax.xml.stream.events.EndDocument createEndDocument() {
104: EndDocumentEvent event = new EndDocumentEvent();
105: if (location != null)
106: event.setLocation(location);
107: return event;
108: }
109:
110: public javax.xml.stream.events.EndElement createEndElement(
111: javax.xml.namespace.QName name,
112: java.util.Iterator namespaces) {
113: return createEndElement(name.getPrefix(), name
114: .getNamespaceURI(), name.getLocalPart());
115: }
116:
117: public javax.xml.stream.events.EndElement createEndElement(
118: String prefix, String namespaceUri, String localName) {
119: EndElementEvent event = new EndElementEvent(prefix,
120: namespaceUri, localName);
121: if (location != null)
122: event.setLocation(location);
123: return event;
124: }
125:
126: public javax.xml.stream.events.EndElement createEndElement(
127: String prefix, String namespaceUri, String localName,
128: java.util.Iterator namespaces) {
129:
130: EndElementEvent event = new EndElementEvent(prefix,
131: namespaceUri, localName);
132: if (namespaces != null) {
133: while (namespaces.hasNext())
134: event.addNamespace((Namespace) namespaces.next());
135: }
136: if (location != null)
137: event.setLocation(location);
138: return event;
139: }
140:
141: public javax.xml.stream.events.EntityReference createEntityReference(
142: String name, EntityDeclaration entityDeclaration) {
143: EntityReferenceEvent event = new EntityReferenceEvent(name,
144: entityDeclaration);
145: if (location != null)
146: event.setLocation(location);
147: return event;
148: }
149:
150: public javax.xml.stream.events.Characters createIgnorableSpace(
151: String content) {
152: CharacterEvent event = new CharacterEvent(content, false, true);
153: if (location != null)
154: event.setLocation(location);
155: return event;
156: }
157:
158: public javax.xml.stream.events.Namespace createNamespace(
159: String namespaceURI) {
160: NamespaceImpl event = new NamespaceImpl(namespaceURI);
161: if (location != null)
162: event.setLocation(location);
163: return event;
164: }
165:
166: public javax.xml.stream.events.Namespace createNamespace(
167: String prefix, String namespaceURI) {
168: NamespaceImpl event = new NamespaceImpl(prefix, namespaceURI);
169: if (location != null)
170: event.setLocation(location);
171: return event;
172: }
173:
174: public javax.xml.stream.events.ProcessingInstruction createProcessingInstruction(
175: String target, String data) {
176: ProcessingInstructionEvent event = new ProcessingInstructionEvent(
177: target, data);
178: if (location != null)
179: event.setLocation(location);
180: return event;
181: }
182:
183: public javax.xml.stream.events.Characters createSpace(String content) {
184: CharacterEvent event = new CharacterEvent(content);
185: if (location != null)
186: event.setLocation(location);
187: return event;
188: }
189:
190: public javax.xml.stream.events.StartDocument createStartDocument() {
191: StartDocumentEvent event = new StartDocumentEvent();
192: if (location != null)
193: event.setLocation(location);
194: return event;
195: }
196:
197: public javax.xml.stream.events.StartDocument createStartDocument(
198: String encoding) {
199: StartDocumentEvent event = new StartDocumentEvent(encoding);
200: if (location != null)
201: event.setLocation(location);
202: return event;
203: }
204:
205: public javax.xml.stream.events.StartDocument createStartDocument(
206: String encoding, String version) {
207: StartDocumentEvent event = new StartDocumentEvent(encoding,
208: version);
209: if (location != null)
210: event.setLocation(location);
211: return event;
212: }
213:
214: public javax.xml.stream.events.StartDocument createStartDocument(
215: String encoding, String version, boolean standalone) {
216: StartDocumentEvent event = new StartDocumentEvent(encoding,
217: version, standalone);
218: if (location != null)
219: event.setLocation(location);
220: return event;
221: }
222:
223: public javax.xml.stream.events.StartElement createStartElement(
224: javax.xml.namespace.QName name,
225: java.util.Iterator attributes, java.util.Iterator namespaces) {
226: return createStartElement(name.getPrefix(), name
227: .getNamespaceURI(), name.getLocalPart(), attributes,
228: namespaces);
229: }
230:
231: public javax.xml.stream.events.StartElement createStartElement(
232: String prefix, String namespaceUri, String localName) {
233: StartElementEvent event = new StartElementEvent(prefix,
234: namespaceUri, localName);
235: if (location != null)
236: event.setLocation(location);
237: return event;
238: }
239:
240: public javax.xml.stream.events.StartElement createStartElement(
241: String prefix, String namespaceUri, String localName,
242: java.util.Iterator attributes, java.util.Iterator namespaces) {
243: return createStartElement(prefix, namespaceUri, localName,
244: attributes, namespaces, null);
245: }
246:
247: public javax.xml.stream.events.StartElement createStartElement(
248: String prefix, String namespaceUri, String localName,
249: java.util.Iterator attributes,
250: java.util.Iterator namespaces,
251: javax.xml.namespace.NamespaceContext context) {
252: StartElementEvent elem = new StartElementEvent(prefix,
253: namespaceUri, localName);
254: elem.addAttributes(attributes);
255: elem.addNamespaceAttributes(namespaces);
256: elem.setNamespaceContext(context);
257: if (location != null)
258: elem.setLocation(location);
259: return elem;
260: }
261:
262: public void setLocation(javax.xml.stream.Location location) {
263: this.location = location;
264: }
265:
266: }
|