equal
deleted
inserted
replaced
53 */ |
53 */ |
54 public class TrAXFilter extends XMLFilterImpl { |
54 public class TrAXFilter extends XMLFilterImpl { |
55 private Templates _templates; |
55 private Templates _templates; |
56 private TransformerImpl _transformer; |
56 private TransformerImpl _transformer; |
57 private TransformerHandlerImpl _transformerHandler; |
57 private TransformerHandlerImpl _transformerHandler; |
|
58 private boolean _useServicesMechanism = true; |
58 |
59 |
59 public TrAXFilter(Templates templates) throws |
60 public TrAXFilter(Templates templates) throws |
60 TransformerConfigurationException |
61 TransformerConfigurationException |
61 { |
62 { |
62 _templates = templates; |
63 _templates = templates; |
63 _transformer = (TransformerImpl) templates.newTransformer(); |
64 _transformer = (TransformerImpl) templates.newTransformer(); |
64 _transformerHandler = new TransformerHandlerImpl(_transformer); |
65 _transformerHandler = new TransformerHandlerImpl(_transformer); |
|
66 _useServicesMechanism = _transformer.useServicesMechnism(); |
65 } |
67 } |
66 |
68 |
67 public Transformer getTransformer() { |
69 public Transformer getTransformer() { |
68 return _transformer; |
70 return _transformer; |
69 } |
71 } |
104 XMLReader managedReader = null; |
106 XMLReader managedReader = null; |
105 |
107 |
106 try { |
108 try { |
107 if (getParent() == null) { |
109 if (getParent() == null) { |
108 try { |
110 try { |
109 managedReader = XMLReaderManager.getInstance() |
111 managedReader = XMLReaderManager.getInstance(_useServicesMechanism) |
110 .getXMLReader(); |
112 .getXMLReader(); |
111 setParent(managedReader); |
113 setParent(managedReader); |
112 } catch (SAXException e) { |
114 } catch (SAXException e) { |
113 throw new SAXException(e.toString()); |
115 throw new SAXException(e.toString()); |
114 } |
116 } |
116 |
118 |
117 // call parse on the parent |
119 // call parse on the parent |
118 getParent().parse(input); |
120 getParent().parse(input); |
119 } finally { |
121 } finally { |
120 if (managedReader != null) { |
122 if (managedReader != null) { |
121 XMLReaderManager.getInstance().releaseXMLReader(managedReader); |
123 XMLReaderManager.getInstance(_useServicesMechanism).releaseXMLReader(managedReader); |
122 } |
124 } |
123 } |
125 } |
124 } |
126 } |
125 |
127 |
126 public void parse (String systemId) throws SAXException, IOException |
128 public void parse (String systemId) throws SAXException, IOException |