1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package javax.xml.bind.util;
18
19 import javax.xml.transform.Result;
20 import javax.xml.transform.sax.SAXResult;
21 import javax.xml.bind.UnmarshallerHandler;
22 import javax.xml.bind.JAXBContext;
23 import javax.xml.bind.JAXBException;
24 import javax.xml.bind.Unmarshaller;
25
26 public class JAXBResult extends SAXResult {
27
28 private final UnmarshallerHandler unmarshallerHandler;
29
30 public JAXBResult(JAXBContext context) throws JAXBException {
31 if (context == null) {
32 throw new JAXBException("context must not be null");
33 }
34 unmarshallerHandler = context.createUnmarshaller().getUnmarshallerHandler();
35 super.setHandler(unmarshallerHandler);
36 }
37
38 public JAXBResult(Unmarshaller unmarshaller) throws JAXBException {
39 if (unmarshaller == null) {
40 throw new JAXBException("unmarshaller must not be null");
41 }
42 unmarshallerHandler = unmarshaller.getUnmarshallerHandler();
43 super.setHandler(unmarshallerHandler);
44 }
45
46 public Object getResult() throws JAXBException {
47 return unmarshallerHandler.getResult();
48 }
49
50 }