1 /***
2 *
3 * Copyright 2005 Protique Ltd
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 **/
18 package org.codehaus.activesoap.util;
19
20 import javanet.staxutils.XMLEventConsumerDelegate;
21 import javanet.staxutils.helpers.ListEventConsumer;
22
23 import javax.xml.stream.util.XMLEventConsumer;
24 import javax.xml.stream.XMLEventFactory;
25 import java.util.List;
26
27 /***
28 * Buffers up the events on the given input so that they can be replayed later on
29 *
30 * @version $Revision: 1.1 $
31 */
32 public class XMLStreamBuffer extends XMLEventConsumerDelegate {
33 private ListEventConsumer listConsumer;
34
35 public XMLStreamBuffer() {
36 this(new ListEventConsumer());
37 }
38
39 public XMLStreamBuffer(ListEventConsumer listConsumer) {
40 super(listConsumer);
41 this.listConsumer = listConsumer;
42 }
43
44 public XMLStreamBuffer(ListEventConsumer listConsumer, XMLEventFactory factory) {
45 super(listConsumer, factory);
46 this.listConsumer = listConsumer;
47 }
48
49 public List getEvents() {
50 return listConsumer.getEvents();
51 }
52
53 public void reset() {
54 listConsumer.reset();
55 }
56
57 public void setEvents(List events) {
58 listConsumer.setEvents(events);
59 }
60 }