Javolution 6.0.0 java
XMLObjectReader.java
Go to the documentation of this file.
1 /*
2  * Javolution - Java(TM) Solution for Real-Time and Embedded Systems
3  * Copyright (C) 2012 - Javolution (http://javolution.org/)
4  * All rights reserved.
5  *
6  * Permission to use, copy, modify, and distribute this software is
7  * freely granted, provided that this notice is preserved.
8  */
9 package javolution.xml;
10 
11 import java.io.IOException;
12 import java.io.InputStream;
13 import java.io.Reader;
14 
18 
39 public class XMLObjectReader {
40 
45 
49  private Reader _reader;
50 
54  private InputStream _inputStream;
55 
62  public static XMLObjectReader newInstance(InputStream in)
63  throws XMLStreamException {
64  XMLObjectReader reader = new XMLObjectReader();
65  reader.setInput(in);
66  return reader;
67  }
68 
76  public static XMLObjectReader newInstance(InputStream in, String encoding)
77  throws XMLStreamException {
78  XMLObjectReader reader = new XMLObjectReader();
79  reader.setInput(in, encoding);
80  return reader;
81  }
82 
89  public static XMLObjectReader newInstance(Reader in)
90  throws XMLStreamException {
91  XMLObjectReader reader = new XMLObjectReader();
92  reader.setInput(in);
93  return reader;
94  }
95 
99  public XMLObjectReader() {}
100 
108  return _xml._reader;
109  }
110 
119  public XMLObjectReader setInput(InputStream in) throws XMLStreamException {
120  if ((_inputStream != null) || (_reader != null))
121  throw new IllegalStateException("Reader not closed or reset");
122  _xml._reader.setInput(in);
123  _inputStream = in;
124  return this;
125  }
126 
135  public XMLObjectReader setInput(InputStream in, String encoding)
136  throws XMLStreamException {
137  if ((_inputStream != null) || (_reader != null))
138  throw new IllegalStateException("Reader not closed or reset");
139  _xml._reader.setInput(in, encoding);
140  _inputStream = in;
141  return this;
142  }
143 
151  public XMLObjectReader setInput(Reader in) throws XMLStreamException {
152  if ((_inputStream != null) || (_reader != null))
153  throw new IllegalStateException("Reader not closed or reset");
154  _xml._reader.setInput(in);
155  _reader = in;
156  return this;
157  }
158 
166  _xml.setBinding(binding);
167  return this;
168  }
169 
178  XMLReferenceResolver referenceResolver) {
179  _xml.setReferenceResolver(referenceResolver);
180  return this;
181  }
182 
192  public boolean hasNext() throws XMLStreamException {
193  return _xml.hasNext();
194  }
195 
203  @SuppressWarnings("unchecked")
204  public <T> T read() throws XMLStreamException {
205  return (T) _xml.getNext();
206  }
207 
217  @SuppressWarnings("unchecked")
218  public <T> T read(String name) throws XMLStreamException {
219  return (T) _xml.get(name);
220  }
221 
232  @SuppressWarnings("unchecked")
233  public <T> T read(String localName, String uri) throws XMLStreamException {
234  return (T) _xml.get(localName, uri);
235  }
236 
246  public <T> T read(String name, Class<T> cls) throws XMLStreamException {
247  return _xml.get(name, cls);
248  }
249 
260  public <T> T read(String localName, String uri, Class<T> cls)
261  throws XMLStreamException {
262  return _xml.get(localName, uri, cls);
263  }
264 
269  public void close() throws XMLStreamException {
270  try {
271  if (_inputStream != null) {
272  _inputStream.close();
273  reset();
274  } else if (_reader != null) {
275  _reader.close();
276  reset();
277  }
278  } catch (IOException e) {
279  throw new XMLStreamException(e);
280  }
281  }
282 
286  public void reset() {
287  _xml.reset();
288  _reader = null;
289  _inputStream = null;
290  }
291 }
javolution.xml.XMLObjectReader.setInput
XMLObjectReader setInput(InputStream in, String encoding)
Definition: XMLObjectReader.java:135
javolution.xml.XMLObjectReader.reset
void reset()
Definition: XMLObjectReader.java:286
javolution
javolution.xml.XMLObjectReader._inputStream
InputStream _inputStream
Definition: XMLObjectReader.java:54
javolution.xml.XMLObjectReader.setBinding
XMLObjectReader setBinding(XMLBinding binding)
Definition: XMLObjectReader.java:165
javolution.xml.XMLObjectReader.read
public< T > T read(String name, Class< T > cls)
Definition: XMLObjectReader.java:246
javolution.xml.XMLObjectReader.setReferenceResolver
XMLObjectReader setReferenceResolver(XMLReferenceResolver referenceResolver)
Definition: XMLObjectReader.java:177
javolution.xml.XMLObjectReader.XMLObjectReader
XMLObjectReader()
Definition: XMLObjectReader.java:99
javolution.xml.XMLObjectReader.read
public< T > T read(String localName, String uri, Class< T > cls)
Definition: XMLObjectReader.java:260
javolution.xml.XMLObjectReader.close
void close()
Definition: XMLObjectReader.java:269
javolution.xml.stream.XMLStreamException
Definition: XMLStreamException.java:17
javolution.xml.XMLObjectReader.setInput
XMLObjectReader setInput(Reader in)
Definition: XMLObjectReader.java:151
javolution.xml.XMLBinding
Definition: XMLBinding.java:100
javolution.xml.XMLObjectReader
Definition: XMLObjectReader.java:39
javolution.xml.XMLObjectReader.read
public< T > T read()
Definition: XMLObjectReader.java:204
javolution.xml.internal.stream.XMLStreamReaderImpl
Definition: XMLStreamReaderImpl.java:38
javolution.xml.XMLFormat
Definition: XMLFormat.java:116
javolution.xml.stream.XMLStreamReader
Definition: XMLStreamReader.java:50
javolution.xml.XMLObjectReader.setInput
XMLObjectReader setInput(InputStream in)
Definition: XMLObjectReader.java:119
javolution.xml.internal.stream
Definition: AttributesImpl.java:1
javolution.xml.XMLObjectReader.newInstance
static XMLObjectReader newInstance(InputStream in, String encoding)
Definition: XMLObjectReader.java:76
javolution.xml.XMLObjectReader._reader
Reader _reader
Definition: XMLObjectReader.java:49
javolution.xml.XMLFormat.InputElement
Definition: XMLFormat.java:186
javolution.xml.internal
javolution.xml.XMLObjectReader._xml
final XMLFormat.InputElement _xml
Definition: XMLObjectReader.java:44
javolution.xml.XMLObjectReader.newInstance
static XMLObjectReader newInstance(Reader in)
Definition: XMLObjectReader.java:89
javolution.xml
Definition: DefaultXMLFormat.java:9
javolution.xml.XMLObjectReader.getStreamReader
XMLStreamReader getStreamReader()
Definition: XMLObjectReader.java:107
javolution.xml.stream
Definition: Location.java:9
javolution.xml.XMLObjectReader.newInstance
static XMLObjectReader newInstance(InputStream in)
Definition: XMLObjectReader.java:62
javolution.xml.XMLReferenceResolver
Definition: XMLReferenceResolver.java:30
javolution.xml.XMLObjectReader.hasNext
boolean hasNext()
Definition: XMLObjectReader.java:192